@keyframes block-fade-out{
    from {display:block; opacity: 1;}
    to {display:block; opacity: 0;}
}
@keyframes block-fade-in{
    from {display:block; opacity: 0;}
    to {display:block; opacity: 1;}
}
@keyframes flex-fade-out{
    from {display:flex; opacity: 1;}
    to {display:flex; opacity: 0;}
}
@keyframes flex-fade-in{
    from {display:flex; opacity: 0;}
    to {display:flex; opacity: 1;}
}
/* Override */
.flex-grow{
    flex-grow: 1;
}
.swiper-tab,
.swiper-prev,
.swiper-next,
.hsh_menu_back,
.js-accordion,
.hsh_btn--menu,
.hsh_head_lang,
.js-list_filter_item,
.search_keyword{
    cursor:pointer !important;
}
.hsh_foot_award img{
    /* height: 102px; */
    height: 98px;
    flex-shrink: 0;
}
@media screen and (max-width: 1279px){
    .hsh_foot_award img{
        height: 60px;
    }   
}
@media screen and (max-width: 767px){
    .hsh_foot .hsh_foot_award a {
        margin: 0px 5px 10px 0px !important;
        max-width: max-content !important;
    }
}
.hsh_btn--page{ transition: all 0.15s; }
.hsh_content .hsh_search_title{ transition: all 0.3s; }

.hsh_content .hsh_search_title:hover,
.hsh_search_result_item:hover .hsh_search_title { color: #ff8400; }

.hsh_search_result_item{ display: block; }

.hsh_contact_title{
    display: flex;
    flex-shrink: 0;
    width: 100px;
    justify-content: flex-start;
    margin-right: 20px;
    align-items: center;
    margin-bottom: 10px;
    font-weight: 600;
}
[lang=en] .hsh_contact_title{
    width: 150px;
}
@media screen and (max-width: 639px){
    .hsh_contact_title{
        width: 100% !important;
        margin-top: 10px;
        margin-bottom: 5px;
    }
}
.sticky-page {
    overflow: unset;
}
.overflow-hidden {
    overflow: hidden;
}
.margin-break {
    width: 100%;
    height: 1px;
}
@media screen and (min-width: 768px) {
    .margin-break--max-767 {
        display: none;
    }
}
/* Override END */

html, body{
    margin: 0px; padding: 0px;
    font-family: 'Montserrat', 'Noto Sans TC', sans-serif;
    background-color: #F5F5F5; color: #545454;
    overflow-x: hidden;
    font-size: 16px; line-height: 1.5em;
}
html:lang(zh-Hans), body:lang(zh-Hans){
    font-family: 'Montserrat', 'Noto Sans SC', sans-serif;
}
.menu_open{ overflow: hidden; }

*{ box-sizing: border-box; }
a{ text-decoration: none; color: inherit; transition: ease all 0.3s; } 
img, video{
    max-width: 100%;
    object-fit: cover; object-position: center center;
}
/* ---------------------------------------------------------------------- */
@media screen and (max-width:1023px){
    .desktop_only{ display: none !important; }
}
@media screen and (min-width:1024px){
    .mobile_only{ display: none !important; }
}
/* ---------------------------------------------------------------------- */
.hsh_main{ max-width: 1560px; margin: 0px auto; }

@media screen and (max-width:1700px){
    .hsh_main{ margin: 0px 60px; }
}
@media screen and (max-width:1440px){
    .hsh_main{ margin: 0px 40px; }
}
@media screen and (max-width:767px){
    .hsh_main{ margin: 0px 25px; }
}

.hsh_body{
    background-image: url(/assets/images/bg.png);
    background-position: center right;
    background-repeat: no-repeat;
    background-attachment: fixed;
    padding-bottom: 60px;
}
.hsh_inner_page .hsh_body{
    padding-top: 100px;
}
/* ====================================================================== */
/* CONTENT */
/* ====================================================================== */
.hsh_content{
    margin: 0px auto;
    font-size: 16px; line-height: 1.5em;
}
.hsh_content .h0{
    margin: 0px 0px 20px 0px; padding: 0px;
}
.hsh_content .h1, .hsh_content h1,
.hsh_content .h2, .hsh_content h2,
.hsh_content .h3, .hsh_content h3,
.hsh_content .h4, .hsh_content h4,
.hsh_content .h5, .hsh_content h5,
.hsh_content .h6, .hsh_content h6,
.hsh_content .p, .hsh_content p,
.hsh_content .footnote{
    margin: 0px 0px 20px 0px; padding: 0px;
}

.hsh_content .h0                 , .hsh_content .h0 p                { font-size: 148px;line-height: 0.9em; font-weight: 700; }
.hsh_content .h1, .hsh_content h1, .hsh_content .h1 p, .hsh_content h1 p{ font-size: 110px;line-height: 1.0em; font-weight: 700; }
.hsh_content .h1b                , .hsh_content .h1b p               { font-size: 55px; line-height: 1.1em; font-weight: 700; }
.hsh_content .h2, .hsh_content h2, .hsh_content .h2 p, .hsh_content h2 p{ font-size: 42px; line-height: 1.2em; font-weight: 700; }
.hsh_content .h3, .hsh_content h3, .hsh_content .h3 p, .hsh_content h3 p{ font-size: 30px; line-height: 1.5em; font-weight: 700; }
.hsh_content .h4, .hsh_content h4, .hsh_content .h4 p, .hsh_content h4 p{ font-size: 20px; line-height: 1.5em; font-weight: 700; max-width: 90%;  }
.hsh_content .h5, .hsh_content h5, .hsh_content .h5 p, .hsh_content h5 p{ font-size: 18px; line-height: 1.5em; font-weight: 400; max-width: 90%;  }
.hsh_content .h6, .hsh_content h6, .hsh_content .h6 p, .hsh_content h6 p{ font-size: 16px; line-height: 1.5em; font-weight: 400; max-width: 90%;  }
.hsh_content .p,  .hsh_content p { font-size: 16px; line-height: 2.0em; max-width: 90%; }
.hsh_content .footnote           { font-size: 12px; line-height: 1.5em; }
.hsh_content ul, .hsh_content ol{
    margin: 0px 0px 20px 0px; padding: 0px 0px 0px 20px;
}
.hsh_content li{ 
    font-size: 14px; line-height: 1.5em;
    margin: 0px; padding: 0px; 
}
.hsh_content ul li{ list-style:square; }
.hsh_content ul li li{ list-style:disc; }

.hsh_content .img + .p, .hsh_content img + .p,

.hsh_content .h3 + .p, .hsh_content h3 + p,
.hsh_content .h4 + .p, .hsh_content h4 + p,
.hsh_content .h5 + .p, .hsh_content h5 + p,
.hsh_content .h6 + .p, .hsh_content h6 + p,
.hsh_content .h3 + .h6, .hsh_content h3 + h6,
.hsh_content .h4 + .h6, .hsh_content h4 + h6,
.hsh_content .h5 + .h6, .hsh_content h5 + h6{ margin-top: -15px; }

.hsh_content .h3 + .h0,
.hsh_content .h4 + .h0,
.hsh_content .h5 + .h0,
.hsh_content .h6 + .h0{ margin-top: -15px; }


.hsh_content .h1:last-child, .hsh_content h1:last-child,
.hsh_content .h2:last-child, .hsh_content h2:last-child,
.hsh_content .h3:last-child, .hsh_content h3:last-child,
.hsh_content .h4:last-child, .hsh_content h4:last-child,
.hsh_content .h5:last-child, .hsh_content h5:last-child,
.hsh_content .h6:last-child, .hsh_content h6:last-child,
.hsh_content .p:last-child, .hsh_content p:last-child{ margin-bottom: 0px; }

.hsh_content .h5 a, .hsh_content h5 a,
.hsh_content .h6 a, .hsh_content h6 a,
.hsh_content .p a,  .hsh_content p a{ text-decoration: underline; }

.hsh_content .h1 a:hover, .hsh_content h1 a:hover,
.hsh_content .h2 a:hover, .hsh_content h2 a:hover,
.hsh_content .h3 a:hover, .hsh_content h3 a:hover,
.hsh_content .h4 a:hover, .hsh_content h4 a:hover,
.hsh_content .h5 a:hover, .hsh_content h5 a:hover,
.hsh_content .h6 a:hover, .hsh_content h6 a:hover,
.hsh_content .p a:hover,  .hsh_content p a:hover{ color: #ff8400; }

.hsh_content .hsh_btn--info{ position: absolute; bottom: 24px; }
@media screen and (max-width: 767px) {
    .hsh_content .hsh_btn--info{ position: relative; bottom: auto; margin-top: 24px; }
}


.hsh_content .hsh_media{ margin-bottom: 20px; }
.hsh_content .img{ display: block; width: auto; height: auto; max-width: 100%; margin: 0px 0px 30px 0px; }
.hsh_content .img_list{
    display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap;
}
.hsh_content .img_list .img{
    margin: 0px 30px 20px 0px;
    height: 44px;
}
.hsh_content strong{ font-weight: 700; }

.hsh_content .table{ max-width: 100%; overflow: auto; margin: 40px 0px; }
.hsh_content .table table{ min-width: 100%; border-spacing: 0px; }
.hsh_content .table th{ font-size: 16px; padding: 10px 10px; text-align: left; }
.hsh_content .table td{ font-size: 14px; padding: 10px 10px; }

.hsh_content .table tr:not(:last-child) td{
    border-bottom: 1px solid #E1E1E1; vertical-align: middle;
}
.hsh_content .table .icon{ 
    width: 20px; height: auto; 
    display: inline-block; vertical-align: middle;
    margin: 0px;
} 
.hsh_content .orange_dot:not(.richtext):after{ content:"."; color: #ff8400; }
.hsh_content .orange_dot.richtext>:last-child:after{ content:"."; color: #ff8400; }
.hsh_content .orange{ color: #ff8400; }

hr{
    max-width: 1280px;
    border: none; width: 100%; height: 10px;
    margin: 60px auto; opacity: 0.25;
    background: repeating-linear-gradient(
        -60deg,
        #F5F5F5 0px,
        #F5F5F5 1px,
        #ff8400 2px,
        #ff8400 3px
    );
}
hr.grey{
    background: #545454; height: 1px;
}

@media screen and (max-width:1279px) {
    .hsh_content                     { font-size: 14px; }
    .hsh_content .h0                 , .hsh_content .h0 p{ font-size: 80px; }
    .hsh_content .h1, .hsh_content h1, .hsh_content .h1 p, .hsh_content h1 p{ font-size: 64px; }
    .hsh_content .h1b                , .hsh_content .h1b p{ font-size: 48px; }
    .hsh_content .h2, .hsh_content h2, .hsh_content .h2 p, .hsh_content h2 p{ font-size: 36px; }
    .hsh_content .h3, .hsh_content h3, .hsh_content .h3 p, .hsh_content h3 p{ font-size: 24px; }
    .hsh_content .h4, .hsh_content h4, .hsh_content .h4 p, .hsh_content h4 p{ font-size: 18px; }
    .hsh_content .h5, .hsh_content h5, .hsh_content .h5 p, .hsh_content h5 p{ /* font-size: 15px; */ font-size: 16px; }
    .hsh_content .h6, .hsh_content h6, .hsh_content .h6 p, .hsh_content h6 p{ /* font-size: 15px; */ font-size: 16px; }
    .hsh_content .p,  .hsh_content p { /* font-size: 14px; */ font-size: 15px; }
    .hsh_content li                  { /* font-size: 14px; */ font-size: 15px; }
}
@media screen and (max-width:1023px) {
    .hsh_content                     { font-size: 13px; }
    .hsh_content .h0                 , .hsh_content .h0 p{ font-size: 64px; }
    .hsh_content .h1, .hsh_content h1, .hsh_content .h1 p, .hsh_content h1 p{ font-size: 54px; }
    .hsh_content .h1b                , .hsh_content .h1b p{ font-size: 36px; }
    .hsh_content .h2, .hsh_content h2, .hsh_content .h2 p, .hsh_content h2 p{ font-size: 28px; }
    .hsh_content .h3, .hsh_content h3, .hsh_content .h3 p, .hsh_content h3 p{ font-size: 20px; }
    .hsh_content .h4, .hsh_content h4, .hsh_content .h4 p, .hsh_content h4 p{ font-size: 16px; }
    .hsh_content .h5, .hsh_content h5, .hsh_content .h5 p, .hsh_content h5 p{ /* font-size: 14px; */ font-size: 15px; }
    .hsh_content .h6, .hsh_content h6, .hsh_content .h6 p, .hsh_content h6 p{ /* font-size: 14px; */ font-size: 15px; }
    .hsh_content .p,  .hsh_content p { /* font-size: 13px; */ font-size: 15px; }
    .hsh_content li                  { /* font-size: 13px; */ font-size: 15px; }
    hr{ margin: 40px auto; }
}
@media screen and (max-width:767px) {
    .hsh_content                     { font-size: 13px; }
    .hsh_content .h0                 , .hsh_content .h0 p{ font-size: 48px; }
    .hsh_content .h1, .hsh_content h1, .hsh_content .h1 p, .hsh_content h1 p{ font-size: 40px; }
    .hsh_content .h1b                , .hsh_content .h1b p{ font-size: 30px; }
    .hsh_content .h2, .hsh_content h2, .hsh_content .h2 p, .hsh_content h2 p{ font-size: 24px; }
    .hsh_content .h3, .hsh_content h3, .hsh_content .h3 p, .hsh_content h3 p{ font-size: 18px; }
    .hsh_content .h4, .hsh_content h4, .hsh_content .h4 p, .hsh_content h4 p{ font-size: 16px; }
    .hsh_content .h5, .hsh_content h5, .hsh_content .h5 p, .hsh_content h5 p{ /* font-size: 14px; */ font-size: 15px; }
    .hsh_content .h6, .hsh_content h6, .hsh_content .h6 p, .hsh_content h6 p{ /* font-size: 14px; */ font-size: 15px; }
    .hsh_content .p,  .hsh_content p { /* font-size: 13px; */ font-size: 15px; }
    .hsh_content li                  { /* font-size: 13px; */ font-size: 15px; }

    .hsh_content .img_list.img_list--sml .img{ max-width: calc(33% - 30px); }
}
@media screen and (max-width:639px) {
    .hsh_content                     { font-size: 13px; }
    .hsh_content .h0                 , .hsh_content .h0 p{ font-size: 64px; }
    .hsh_content .h1, .hsh_content h1, .hsh_content .h1 p, .hsh_content h1 p{ font-size: 36px; }
    .hsh_content .h1b                , .hsh_content .h1b p{ font-size: 28px; }
    .hsh_content .h2, .hsh_content h2, .hsh_content .h2 p, .hsh_content h2 p{ font-size: 25px; }
    .hsh_content .h3, .hsh_content h3, .hsh_content .h3 p, .hsh_content h3 p{ font-size: 18px; }
    .hsh_content .h4, .hsh_content h4, .hsh_content .h4 p, .hsh_content h4 p{ font-size: 16px; }
    .hsh_content .h5, .hsh_content h5, .hsh_content .h5 p, .hsh_content h5 p{ /* font-size: 14px; */ font-size: 15px; }
    .hsh_content .h6, .hsh_content h6, .hsh_content .h6 p, .hsh_content h6 p{ /* font-size: 14px; */ font-size: 15px; }
    .hsh_content .p,  .hsh_content p { /* font-size: 13px; */ font-size: 15px; max-width: 100%; }
    .hsh_content li                  { /* font-size: 13px; */ font-size: 14px; }
    hr{ margin: 20px auto; }
}
/* ---------------------------------------------------------------------- */
.hsh_section{ margin: 120px auto; }
.hsh_section.hsh_section--med{ max-width: 1280px; }
.hsh_section.hsh_section--sml{ max-width: 1024px; }
.hsh_section.hsh_section--heading{ margin: 80px auto 40px auto; text-align: center; }
.hsh_section.hsh_section--top{ margin: 120px auto 40px auto; }
.hsh_section.hsh_section--bottom{ margin: 40px auto 80px auto; }
.hsh_section.hsh_section--margin-y-0 { margin-top: 0; margin-bottom: 0; }
.hsh_section.hsh_section--margin-top-40 { margin-top: 40px; }
.hsh_section.hsh_section--margin-bottom-0 { margin-bottom: 0; }
.hsh_section.hsh_section--margin-bottom-24 { margin-bottom: 24px; }

.hsh_section .hsh_section_title{
    position: relative; 
    text-align: center; 
    margin-bottom: 20px;
}
.hsh_section .hsh_section_title .h3,
.hsh_section .hsh_section_title .h4,
.hsh_section .hsh_section_title .h5,
.hsh_section .hsh_section_title .h6{ max-width: 100%;}

.hsh_section .hsh_section_title.hsh_section_title--side,
.hsh_section .hsh_section_title.hsh_section_title--side-2{
    padding-left: 0px; text-align: left;
}
.hsh_section .hsh_section_title.hsh_section_title--side .hsh_link{
    position: absolute; bottom: 0px; right: 0px; margin: 0px;
}

@media screen and (max-width:1023px) {
    .hsh_section{ margin: 80px auto; }
    .hsh_section.hsh_section--heading{ margin: 60px auto 20px auto; } 
    .hsh_section.hsh_section--top{ margin: 80px auto 20px auto; } 
    .hsh_section.hsh_section--bottom{ margin: 20px auto 60px auto; } 
    .hsh_section.hsh_section--margin-y-0 { margin-top: 0; margin-bottom: 0; }
    .hsh_section.hsh_section--margin-top-40 { margin-top: 40px; }
    .hsh_section.hsh_section--margin-bottom-0 { margin-bottom: 0; }
    .hsh_section.hsh_section--margin-bottom-24 { margin-bottom: 24px; }

    .hsh_section .hsh_section_title.hsh_section_title--side,
    .hsh_section .hsh_section_title.hsh_section_title--side-2{
        padding-left: 0px; text-align: left;
    }
}
@media screen and (max-width:767px) {
    .hsh_section{ margin: 40px auto; }
    .hsh_section.hsh_section--heading{ margin: 40px auto 10px auto; } 
    .hsh_section.hsh_section--top{ margin: 40px auto 10px auto; } 
    .hsh_section.hsh_section--bottom{ margin: 10px auto 40px auto; } 
    .hsh_section.hsh_section--margin-y-0 { margin-top: 0; margin-bottom: 0; }
    .hsh_section.hsh_section--margin-top-40 { margin-top: 40px; }
    .hsh_section.hsh_section--margin-bottom-0 { margin-bottom: 0; }
    .hsh_section.hsh_section--margin-bottom-24 { margin-bottom: 24px; }
}

/* ====================================================================== */
/* Label  */
/* ====================================================================== */
.hsh_label{
    display: block; position: relative;
    padding-left: 30px;  font-size: 16px;
}
.hsh_label:before{ 
    content: ""; display: block;
    position: absolute; 
    top: 0px; left: 0px; width: 20px; height: 20px; line-height: 20px;

    background-image: url(/assets/images/icon/location.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
.hsh_label a:hover{ text-decoration: underline; }
.hsh_label.hsh_label--phone:before{ 
    background-image: url(/assets/images/icon/phone.svg);
}
.hsh_label.hsh_label--email:before{ 
    background-image: url(/assets/images/icon/mail.svg);
}
.hsh_label.hsh_label--description{
    padding-left: 0;
}
.hsh_label.hsh_label--description:before{ 
    display: none;
}
.hsh_label + .hsh_label{ margin-top: 5px;}
h3 + .hsh_label, .h3 + .hsh_label,
h4 + .hsh_label, .h4 + .hsh_label,
h5 + .hsh_label, .h5 + .hsh_label,
h6 + .hsh_label, .h6 + .hsh_label{ margin-top: -10px; }

@media screen and (max-width:1023px) {
    .hsh_label{ font-size: 14px;}
}
@media screen and (max-width:767px) {
    .hsh_label{ font-size: 12px;}
}
/* ====================================================================== */
/* CRUMB  */
/* ====================================================================== */
.hsh_crumb{
    margin-bottom: 60px;
}
.hsh_crumb .hsh_crumb_link{
    display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; margin-bottom: 25px;
}
.hsh_crumb .hsh_crumb_link a{ margin: 0px 10px 10px 0px;}
.hsh_crumb .hsh_crumb_link a:hover{ color: #ff8400; }
.hsh_crumb .hsh_crumb_link a:after{
    display: inline-block; content: ">";
    margin: 0px 0px 0px 10px;
}
.hsh_crumb .hsh_crumb_title{
    display: flex; align-items: flex-end; justify-content: flex-start; 
}
.hsh_crumb .hsh_crumb_title_main{ flex: 1; }
.hsh_crumb .hsh_crumb_title_side{ width: 25%; max-width: 240px; } 

.hsh_media .hsh_crumb{ margin: 14px; text-align: center; }
.hsh_media .hsh_crumb .hsh_crumb_link{ justify-content: center; }


@media screen and (max-width:1279px) {    
    .hsh_crumb{ margin-bottom: 80px; }
}
@media screen and (max-width:1023px) {    
    .hsh_crumb{ margin-bottom: 40px; }
    .hsh_crumb .hsh_crumb_link a{ margin: 0px 10px 0px 0px; }
    .hsh_crumb .hsh_crumb_title{ flex-wrap: wrap; }
    .hsh_crumb .hsh_crumb_title_main,
    .hsh_crumb .hsh_crumb_title_side{ flex: auto; width: 100%; max-width: 100%; }
    .hsh_crumb .hsh_crumb_title_main{ /* margin-bottom: 10px; */ }
    .hsh_crumb .hsh_crumb_title_main:lang(zh-HK),
    .hsh_crumb .hsh_crumb_title_main:lang(zh-CN) {margin-top: 8px;}
}
@media screen and (max-width:767px) {   
    .hsh_crumb{ margin-bottom: 20px; }
}
/* ====================================================================== */
/* STATISTIC  */
/* ====================================================================== */
.hsh_statistic{
    display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap;
    margin: 20px 0px;
}
.hsh_statistic .hsh_statistic_item{
    margin: 0px 80px 10px 0px;
}
.hsh_statistic .hsh_statistic_item:last-child{
    margin-right: 0;
}
.hsh_statistic .hsh_statistic_item strong{
    display: block; font-size: 60px; line-height: 1.2em; font-weight: normal;
    color: #ff8400;
}
@media screen and (max-width:1023px) {
    .hsh_statistic .hsh_statistic_item strong{ font-size: 36px; }
}
@media screen and (max-width:767px) {
    .hsh_statistic .hsh_statistic_item{ margin-right: 30px; }
    .hsh_statistic .hsh_statistic_item strong{ font-size: 36px; }
}
/* ====================================================================== */
/* MEDIA  */
/* ====================================================================== */
.hsh_media{
    display: block; position: relative; overflow: hidden;
}
.hsh_media:before{
    content: ""; display: block;
    padding-bottom: 100%;
}
.hsh_media video,
.hsh_media img,
.hsh_media .map{
    position: absolute;
    top:0%; left: 0%;
    width: 100%; height: 100%;
}

.hsh_media.hsh_media--center video,
.hsh_media.hsh_media--center img{
    object-fit: contain; object-position: center center;
}

.hsh_media a img{ transform: scale(1); transition: ease all 0.3s; }
.hsh_media a:hover img{ transform: scale(1.1); }

.hsh_media.hsh_media--subbanner{ border-radius: 0px 40px 40px 0px; margin: 0px 0px; max-height: 800px }
.hsh_media.hsh_media--subbanner:before{ padding-bottom: 50%; }
.hsh_media.hsh_media--subbanner .hsh_media_text,
.hsh_media.hsh_media--subbanner video,
.hsh_media.hsh_media--subbanner img{ border-radius: 0px 0px 40px 40px ; }

.hsh_media.hsh_media--round{ border-radius: 40px; }
.hsh_media.hsh_media--map{ margin: 120px 0px;}
.hsh_media.hsh_media--map:before{ padding-bottom: 640px;}
.hsh_media.hsh_media--icon{ max-width: 80px; }
.hsh_media.hsh_media--logo { max-width: 170px; }
.hsh_media.hsh_media--logo:before{ padding-bottom: 75%; }
.hsh_media.hsh_media--left-auto{ margin-left: auto; }
.hsh_media.hsh_media--vr:after,
.hsh_media.hsh_media--vr-2:after,
.hsh_media.hsh_media--play:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    /* background-color: rgba(255, 106, 0, 0.7); */
    background-image: url(/assets/images/vr-cover.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: auto clamp(1px, 400px, 80%);
    z-index: 2;
    pointer-events: none;
}
.hsh_media.hsh_media--vr-2:after {
    background-image: url(/assets/images/vr-cover-2.png);
}
.hsh_media.hsh_media--play:after {
    background-image: url(/assets/images/play-cover.png);
}
.hsh_media.zoom img{
    transition: ease all 20s; 
    transform: scale(1.2);
}

.hsh_media .hsh_media_play{
    position: absolute; 
    top:0px; left: 0px; width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    background: rgba(0,0,0,0.5);
}
.hsh_media .hsh_media_play:before{
    display: block; content: "";
    width: 72px; height: 72px;
    background-color: #ff8400;
    background-image: url(/assets/images/play.svg);
    background-size: 20%;
    background-position: center center;
    background-repeat: no-repeat;
    border-radius: 50%;
}
.hsh_media .hsh_media_play:hover:before{ background-color: #F5F5F5; }

@media screen and (max-width:1023px) {    
    .hsh_media.hsh_media--map{ margin: 80px 0px;}
    .hsh_media.hsh_media--home-h{width: 45%; max-width: 180px; margin-left: auto; margin-top: -48px;}
}
@media screen and (max-width:767px) {
    .hsh_media.hsh_media--icon{ max-width: 60px; }
    .hsh_media.hsh_media--subbanner:before{ padding-bottom: 120%; }
    .hsh_media.hsh_media--map{ margin: 40px 0px;}
}
@media screen and (min-width:768px) {
    .hsh_row:not(.hsh_row--center, .hsh_row.hsh_row--stretch) > .hsh_col > .hsh_media:first-child:last-child{ height: 100%; }
    .hsh_row:not(.hsh_row--center, .hsh_row.hsh_row--stretch) > .hsh_col > .hsh_media:first-child:last-child:before{ display: none; }
}

.hsh_media.hsh_media--1x1:before{ padding-bottom: 100%; }
.hsh_media.hsh_media--1x2:before{ padding-bottom: 200%; }
.hsh_media.hsh_media--2x1:before{ padding-bottom: 50%; }
.hsh_media.hsh_media--3x1:before{ padding-bottom: 33.33%; }
.hsh_media.hsh_media--4x1:before{ padding-bottom: 25%; }
.hsh_media.hsh_media--3x2:before{ padding-bottom: 66.66%; }
.hsh_media.hsh_media--2x3:before{ padding-bottom: 150%; }
.hsh_media.hsh_media--4x3:before{ padding-bottom: 75%; }
.hsh_media.hsh_media--8x5:before{ padding-bottom: 62.5%; }

@media screen and (max-width:767px) {
    .hsh_media.hsh_media--m1x1:before{ padding-bottom: 100% !important; }
    .hsh_media.hsh_media--m1x2:before{ padding-bottom: 200% !important; }
    .hsh_media.hsh_media--m2x1:before{ padding-bottom: 50% !important; }
    .hsh_media.hsh_media--m3x1:before{ padding-bottom: 33.33% !important; }
    .hsh_media.hsh_media--m4x1:before{ padding-bottom: 25% !important; }
    .hsh_media.hsh_media--m3x2:before{ padding-bottom: 66.66% !important; }
    .hsh_media.hsh_media--m2x3:before{ padding-bottom: 150% !important; }
    .hsh_media.hsh_media--m4x3:before{ padding-bottom: 75% !important; }
    .hsh_media.hsh_media--m8x5:before{ padding-bottom: 62.5% !important; }
}
/* ---------------------------------------------------------------------- */
.hsh_media .hsh_media_text{
    display: flex; align-items: center; justify-content:  center;
    position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;
    
    color: #FFF; 
    background-color: rgba(0,0,0,0);    
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%);
    padding: 80px 100px; 
}
.hsh_media .hsh_media_text--align_top{ align-items: flex-start; }
.hsh_media .hsh_media_text--align_center{ align-items: center; }
.hsh_media .hsh_media_text--align_bottom{ align-items: flex-end; }
.hsh_media .hsh_media_text--center{ text-align: center; }
.hsh_media .hsh_media_text--right{ text-align: right; }
.hsh_media .hsh_media_text--left{ text-align: left; }

.hsh_media .hsh_media_text--center .h1, .hsh_media .hsh_media_text--center h1,
.hsh_media .hsh_media_text--center .h2, .hsh_media .hsh_media_text--center h2,
.hsh_media .hsh_media_text--center .h3, .hsh_media .hsh_media_text--center h3, 
.hsh_media .hsh_media_text--center .h4, .hsh_media .hsh_media_text--center h4,
.hsh_media .hsh_media_text--center .h5, .hsh_media .hsh_media_text--center h5,
.hsh_media .hsh_media_text--center .h6, .hsh_media .hsh_media_text--center h6,
.hsh_media .hsh_media_text--center .p, .hsh_media .hsh_media_text--center p{ margin-left: auto; margin-right: auto;}

.hsh_media .hsh_media_text .hsh_content{ width: 100%;  margin: 0px; }

@media screen and (max-width:1279px) {    
    .hsh_media .hsh_media_text{ padding: 40px; }
}

/* ---------------------------------------------------------------------- */
.hsh_imgbox{ position: relative; margin-bottom: 20px;}
.hsh_imgbox:before{ padding-bottom: 50%; content: ""; display: block;}
.hsh_imgbox .box{
    position: absolute; top:0px; left: 0px; width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: flex-start;
}
.hsh_imgbox .box img{
    width: auto; height: auto; max-width: 100%; max-height: 100%;
    object-fit: contain;
}
/* ---------------------------------------------------------------------- */
.hsh_map{
    display: block; position: relative; overflow: hidden;
}
.hsh_map:before{
    content: ""; display: block;
    padding-bottom: 100%;
}
.hsh_map.hsh_map--rect:before{ padding-bottom: 640px; }

.hsh_map .map{ 
    position: absolute;
    top:0%; left: 0%;
    width: 100%; height: 100%;
}
/* ====================================================================== */
/* BANNER */
/* ====================================================================== */
.hsh_banner{ 
    position: relative;
    /* background: #000; */ background: #ff8400; color: #FFF;
    border-radius: 0px 0px 40px 40px; overflow: hidden;
}

.hsh_banner .hsh_media{ margin: 0px 0px; height: 100vh; max-height: 960px; }
.hsh_banner .hsh_media:before{ padding-bottom: 62.5%; }
.hsh_banner .hsh_media .hsh_media_text{ background: none; }

.hsh_banner .hsh_banner_nav{
    position: absolute; z-index: 1;
    display: flex; align-items: center; justify-content: center;
    bottom:0px; left: 0px; width: 100%;
    padding: 20px 0px;
}
.hsh_banner .hsh_banner_text {
    display: flex; align-items: center; justify-content:  center;
    position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;
    background-color: rgba(0,0,0,0.2);
    z-index: 1;
}
.hsh_banner .hsh_banner_text .hsh_content{
    width: 100%; margin: 0px; text-align: center;
}
.hsh_banner .hsh_banner_text .hsh_content > * { max-width: 100%;}

@media screen and (max-width:767px) {
    .hsh_banner .hsh_media.hsh_media:before{ padding-bottom: 120%; }
}
/* ====================================================================== */
/* TAG */
/* ====================================================================== */
.hsh_tags{
    display: flex; align-items: center; justify-content: center; flex-wrap: wrap;
}
.hsh_tags a:not(:last-child):after{
    content: ""; display: inline-block; vertical-align: middle;
    margin: 0px 20px; width: 10px; height: 10px; 
    background: #ff8400; border-radius: 50%;
}

@media screen and (max-width:767px) {
    .hsh_tags a:not(:last-child):after{  margin: 0px 10px; width: 6px; height: 6px; }
}
/* ====================================================================== */
/* ROW */
/* ====================================================================== */
.hsh_row{ 
    display: flex; align-items: stretch; justify-content: flex-start;
}
.hsh_row.hsh_row--center{ align-items: center; }
.hsh_row.hsh_row--stretch{ align-items: stretch; }
.hsh_row--txt-center {text-align: center;}
.hsh_row--content-center {justify-content: center;}
.hsh_row--content-center p, .hsh_row--content-center .p {margin-left: auto; margin-right: auto;}
.hsh_row--content-center > .hsh_content {width: 100%;}
.hsh_row.hsh_row--2_1 > .hsh_col:nth-child(1){ width: calc(66.66% - 10px); margin-right: 20px; }
.hsh_row.hsh_row--2_1 > .hsh_col:nth-child(2){ width: calc(33.33% - 10px); }
.hsh_row.hsh_row--1_2 > .hsh_col:nth-child(1){ width: calc(33.33% - 10px); margin-right: 20px; }
.hsh_row.hsh_row--1_2 > .hsh_col:nth-child(2){ width: calc(66.66% - 10px); }
.hsh_row.hsh_row--3_1 > .hsh_col:nth-child(1){ width: calc(75% - 10px); margin-right: 20px; }
.hsh_row.hsh_row--3_1 > .hsh_col:nth-child(2){ width: calc(25% - 10px); }
.hsh_row.hsh_row--1_3 > .hsh_col:nth-child(1){ width: calc(25% - 10px); margin-right: 20px; }
.hsh_row.hsh_row--1_3 > .hsh_col:nth-child(2){ width: calc(75% - 10px); }
.hsh_row.hsh_row--4_1 > .hsh_col:nth-child(1){ width: calc(80% - 10px); margin-right: 20px; }
.hsh_row.hsh_row--4_1 > .hsh_col:nth-child(2){ width: calc(20% - 10px); }
.hsh_row.hsh_row--1_4 > .hsh_col:nth-child(1){ width: calc(20% - 10px); margin-right: 20px; }
.hsh_row.hsh_row--1_4 > .hsh_col:nth-child(2){ width: calc(80% - 10px); }

.hsh_row.hsh_row--1_1{ flex-wrap: wrap; width: calc(100% + 40px); }
.hsh_row.hsh_row--1_1 > .hsh_col{ width: calc(50% - 40px); margin: 0px 40px 20px 0px; }

.hsh_row.hsh_row--1_1_1{ flex-wrap: wrap; width: calc(100% + 40px); }
.hsh_row.hsh_row--1_1_1 > .hsh_col{ width: calc(33.33% - 40px); margin: 0px 40px 20px 0px; }

.hsh_row.hsh_row--1_1_1_1{ flex-wrap: wrap; width: calc(100% + 40px); }
.hsh_row.hsh_row--1_1_1_1 > .hsh_col{ width: calc(25% - 40px); margin: 0px 40px 20px 0px; }
.hsh_row.hsh_row--1_1_1_1_1{ flex-wrap: wrap; width: calc(100% + 40px); }
.hsh_row.hsh_row--1_1_1_1_1 > .hsh_col{ width: calc(20% - 40px); margin: 0px 40px 20px 0px; }

.hsh_row + .hsh_row{ margin-top: 20px; }

.hsh_row .hsh_col > .hsh_content .p + .h3, .hsh_row .hsh_col > .hsh_content  p + h3,
.hsh_row .hsh_col > .hsh_content .p + .h4, .hsh_row .hsh_col > .hsh_content  p + h4,
.hsh_row .hsh_col > .hsh_content .p + .h5, .hsh_row .hsh_col > .hsh_content  p + h5{ margin-top: -20px; }

@media screen and (max-width:1279px) {
    .hsh_row.hsh_row--1_1{ width: calc(100% + 20px); }
    .hsh_row.hsh_row--1_1 > .hsh_col{ width: calc(50% - 20px); margin: 0px 20px 20px 0px; }
    .hsh_row.hsh_row--1_1_1{ width: calc(100% + 20px); }
    .hsh_row.hsh_row--1_1_1 > .hsh_col{ width: calc(50% - 20px); margin: 0px 20px 20px 0px; }
    .hsh_row.hsh_row--1_1_1_1{ width: calc(100% + 20px); }
    .hsh_row.hsh_row--1_1_1_1 > .hsh_col{ width: calc(50% - 20px); margin: 0px 20px 20px 0px; }
    .hsh_row.hsh_row--1_1_1_1_1{ width: calc(100% + 20px); }
    .hsh_row.hsh_row--1_1_1_1_1 > .hsh_col{ width: calc(33.33% - 20px); margin: 0px 20px 20px 0px; }
}
@media screen and (max-width:1023px) {
    .hsh_row.hsh_row--2_1{ display: block; }
    .hsh_row.hsh_row--2_1 > .hsh_col{ margin-bottom: 20px; }
    .hsh_row.hsh_row--2_1 > .hsh_col:nth-child(1){ width: 100%; margin-right: 0px; }
    .hsh_row.hsh_row--2_1 > .hsh_col:nth-child(2){ width: 100%; }
    .hsh_row.hsh_row--1_2{ display: block; }
    .hsh_row.hsh_row--1_2 > .hsh_col{ margin-bottom: 20px; }
    .hsh_row.hsh_row--1_2 > .hsh_col:nth-child(1){ width: 100%; margin-right: 0px; }
    .hsh_row.hsh_row--1_2 > .hsh_col:nth-child(2){ width: 100%; }
    .hsh_row.hsh_row--3_1{ display: block; }
    .hsh_row.hsh_row--3_1 > .hsh_col{ margin-bottom: 20px; }
    .hsh_row.hsh_row--3_1 > .hsh_col:nth-child(1){ width: 100%; margin-right: 0px; }
    .hsh_row.hsh_row--3_1 > .hsh_col:nth-child(2){ width: 100%; }
    .hsh_row.hsh_row--1_3{ display: block; }
    .hsh_row.hsh_row--1_3 > .hsh_col{ margin-bottom: 20px; }
    .hsh_row.hsh_row--1_3 > .hsh_col:nth-child(1){ width: 100%; margin-right: 0px; }
    .hsh_row.hsh_row--1_3 > .hsh_col:nth-child(2){ width: 100%; }
    .hsh_row.hsh_row--4_1{ display: block; }
    .hsh_row.hsh_row--4_1 > .hsh_col{ margin-bottom: 20px; }
    .hsh_row.hsh_row--4_1 > .hsh_col:nth-child(1){ width: 100%; margin-right: 0px; }
    .hsh_row.hsh_row--4_1 > .hsh_col:nth-child(2){ width: 100%; }
    .hsh_row.hsh_row--1_4{ display: block; }
    .hsh_row.hsh_row--1_4 > .hsh_col{ margin-bottom: 20px; }
    .hsh_row.hsh_row--1_4 > .hsh_col:nth-child(1){ width: 100%; margin-right: 0px; }
    .hsh_row.hsh_row--1_4 > .hsh_col:nth-child(2){ width: 100%; }
}
@media screen and (max-width:767px) {
    .hsh_row.hsh_row--1_1 > .hsh_col{ width: calc(100% - 20px); }
    .hsh_row.hsh_row--1_1_1 > .hsh_col{ width: calc(100% - 20px); }
    .hsh_row.hsh_row--1_1_1_1 > .hsh_col{ width: calc(100% - 20px); }
    .hsh_row.hsh_row--1_1_1_1_1 > .hsh_col{ width: calc(50% - 20px); }
}
/* ====================================================================== */
/* LINK */
/* ====================================================================== */
.hsh_link{
    position: relative;
    display: inline-block; min-width: 120px; 
    background-color: #ff8400; color: #FFF;
    font-size: 16px; font-weight: 700; text-align: left;
    padding: 12px 70px 12px 20px; margin: 0px 20px 0px 0px;
    border: 1px #ff8400 solid;
    border-radius: 30px;
    transition: 0.3s all ease;
}
button.hsh_link{ cursor: pointer; font-family: inherit; }
.hsh_link:first-child:last-child{ margin-right: 0px;}

.hsh_link.disabled{
    pointer-events: none; opacity: 0.5;
    filter: grayscale(1);
}
.hsh_link:after{
    content: ""; display: block; position: absolute;
    width: 20px; height: 100%;
    top: 0%; right: 20px;
    background-image: url(/assets/images/icon/arrow.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    filter: brightness(0) invert(1);
    transition: 0.3s right ease, 0.3s filter ease;
}
.hsh_link:hover:after{ right: 16px; }

.hsh_link.hsh_link--link:after{ background-image: url(/assets/images/icon/link.svg);}
.hsh_link.hsh_link--email:after{ background-image: url(/assets/images/icon/mail.svg);}
.hsh_link.hsh_link--download:after{ background-image: url(/assets/images/icon/download.svg);}

.hsh_link.hsh_link--white{ background-color: #FFF; color: #545454; border-color: #fff; }
.hsh_link.hsh_link--white:after{ filter: none; }

.hsh_link.hsh_link--white-border{ border-color: #fff; }

.hsh_link.hsh_link--transparent{ background-color: transparent; color: #545454; padding:0px 30px 0px 0px; min-width: 0; border-color: transparent; }
.hsh_link.hsh_link--transparent:after{ filter: none; right:0; }
.hsh_link.hsh_link--transparent:hover:after{ right:-4px; }

.hsh_link.hsh_link--transparent_white{ background-color: transparent; color: #FFF; padding:0px 30px 0px 0px; min-width: 0; border-color: transparent; }
.hsh_link.hsh_link--transparent_white:after{ right: 0; }
.hsh_link.hsh_link--transparent_white:hover:after{ filter: brightness(1) invert(0); right:-4px; }

.hsh_link.hsh_link--no-icon{ padding-right: 20px; text-align: center; }
.hsh_link.hsh_link--no-icon:after { display: none; }

.hsh_link.hsh_link--border-grey{ background-color: transparent; color: #545454; border-color:  rgba(84, 84, 84, 0.3); }

.hsh_link:hover{ background-color: #545454; color: #FFF; border-color: #545454; }

.hsh_link.hsh_link--white:hover{ background-color: #ff8400; color: #FFF; border-color: #ff8400; }
.hsh_link.hsh_link--white:hover:after{ filter: brightness(0) invert(1); }

.hsh_link.hsh_link--white-border:hover{ background-color: #fff; color: #ff8400; border-color: #fff; }
.hsh_link.hsh_link--white-border:hover:after{ filter: none; }

.hsh_link.hsh_link--transparent:hover{ background-color: transparent; color: #ff8400; border-color: transparent; }
.hsh_link.hsh_link--transparent:hover:after{ filter: none; }

.hsh_link.hsh_link--transparent_white:hover{ background-color: transparent; color: #ff8400; border-color: transparent; }
.hsh_link.hsh_link--transparent_white:hover:after{ filter: brightness(1) invert(0); right:-4px; }

.hsh_link.hsh_link--border-grey:hover{ background-color:#545454; border-color:  rgba(84, 84, 84, 0.3); color: #fff; }

/* ---------------------------------------------------------------------- */
.hsh_link_list{
    display: flex; align-items: center; justify-content: flex-start;flex-wrap: wrap;
}
.hsh_link_list .hsh_btn,
.hsh_link_list .hsh_link{
    margin: 0px 20px 10px 0px;
}
.hsh_link_list .hsh_btn{ width: 48px; height: 48px; }

@media screen and (max-width:1023px) {
    .hsh_link_list .hsh_btn{  margin: 0px 10px 10px 0px; }
}
@media screen and (max-width:1279px) {
    .hsh_link{ font-size: 14px; }
}
@media screen and (max-width:639px) {
    .hsh_link{ font-size: 13px; }
}
/* ====================================================================== */
/* BTN */
/* ====================================================================== */
.hsh_btn{
    cursor: pointer;
    position: relative;
    display: flex; align-items: center; justify-content: center;
    width: 64px; height: 64px;
    background-color: #FFF; color: #000;
    box-shadow: 0px 5px 10px rgba(0,0,0,0.06) ;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 50%;
}
input.hsh_btn{ 
    text-align: center; 
    box-shadow: none; border: 1px solid #CCC;
}
.hsh_btn.disabled{ opacity: 0.5; pointer-events: none;}

.hsh_btn--xs { width: 28px; height: 28px; }
.hsh_btn.hsh_btn--grey{ background-color: #F5F5F5; border: 1px solid #E1E1E1; box-shadow: none; color:#545454 }
.hsh_btn.hsh_btn--grey-border{ background-color: #fff; border: 1px solid #E1E1E1; box-shadow: none; color:#545454 }
.hsh_btn.hsh_btn--orange{ background-color: #ff8400; color: #FFF; border: 1px solid #ff8400; box-shadow: none; }
.hsh_btn:before{
    content: ""; flex-shrink: 0;
    display: block;
    width: 40%; height: 40%;
    background-image: url(/assets/images/icon/search.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
}
.hsh_btn:hover{
    background: #ff8400; color: #FFF; border-color: #ff8400;
}
.hsh_btn--orange:hover { border-color: #545454; background-color: #545454; }
.hsh_btn.hsh_btn--orange:before,
.hsh_btn:hover:before{
    filter: brightness(0) invert(1);
}
.hsh_btn.hsh_btn--prev:before{ background-image: url(/assets/images/icon/arrow_black.svg); transform: scaleX(-1);  }
.hsh_btn.hsh_btn--next:before{ background-image: url(/assets/images/icon/arrow_black.svg); }
.hsh_btn.hsh_btn--whatsapp:before{ background-image: url(/assets/images/icon/whatsapp.svg); }
.hsh_btn.hsh_btn--email:before{ background-image: url(/assets/images/icon/mail.svg); }
.hsh_btn.hsh_btn--phone:before{ background-image: url(/assets/images/icon/phone.svg); }
.hsh_btn.hsh_btn--top:before{ background-image: url(/assets/images/icon/arrow_black.svg); transform: rotate(-90deg);  }
.hsh_btn.hsh_btn--info:before{ background-image: url(/assets/images/icon/i.svg); }
.hsh_btn.hsh_btn--wechat:before{ background-image: url(/assets/images/icon/wechat.svg); }
.hsh_btn.hsh_btn--vr:before{ background-image: url(/assets/images/icon/360-degrees.svg); }
.hsh_btn.hsh_btn--form:before{ background-image: url(/assets/images/icon/contact-form.svg); width: 48%; height: 48%; }

.hsh_btn.hsh_btn--menu:before{
    position: absolute;    
    width: 50%; height: 2px; top:40%; left: 25%;
    background: #000;
    transition: 0.3s all ease;
}
.hsh_btn.hsh_btn--menu:after{
    position: absolute;    
    content: ""; display: block;
    width: 40%; height: 2px; bottom:40%; left: 25%;
    background: #000;
    transition: 0.3s all ease;
}
.hsh_btn.hsh_btn--close:hover:before,
.hsh_btn.hsh_btn--close:hover:after,
.hsh_btn.hsh_btn--menu:hover:before,
.hsh_btn.hsh_btn--menu:hover:after{ background: #FFF; filter:none; }

.hsh_btn.hsh_btn--menu.open{
    background: #FFF; color: #000;
}
.hsh_btn.hsh_btn--close:before,
.hsh_btn.hsh_btn--close:after,
.hsh_btn.hsh_btn--menu.open:before,
.hsh_btn.hsh_btn--menu.open:after{ 
    position: absolute;    
    content: ""; display: block;
    background: #000; filter: none;
    top:calc(50% - 1px); left: 35%;
    width: 30%; height: 2px;
}
.hsh_btn.hsh_btn--close:before,
.hsh_btn.hsh_btn--menu.open:before{ transform: rotate(-45deg); }
.hsh_btn.hsh_btn--close:after,
.hsh_btn.hsh_btn--menu.open:after{ transform: rotate(45deg); }

.hsh_btn.hsh_btn--text{
    width: auto !important; border-radius: 32px;
    padding-left: 20px; padding-right: 20px;
}
.hsh_btn.hsh_btn--text:before{ width: 26px; height: 26px; }
.hsh_btn.hsh_btn--text span{ white-space: nowrap; margin-left: 10px;}
.hsh_btn--phone.hsh_btn--text{ width: 190px !important; }
.hsh_btn.hsh_btn--lang:before{ display: none; }

.hsh_btn.hsh_btn--top,
.hsh_btn.fixed-bottom-btn{
    position: fixed; bottom:0px; right: 40px;
    opacity: 0; pointer-events: none;
    z-index: 96;
}
.hsh_btn.hsh_btn--top.show,
.hsh_btn.fixed-bottom-btn.show{
    opacity: 1; pointer-events: all;  bottom:40px  
}

@media screen and (max-width:1023px) {
    .hsh_btn.hsh_btn--top, .hsh_btn.fixed-bottom-btn{  right: 20px; }
    .hsh_btn.hsh_btn--top.show, .hsh_btn.fixed-bottom-btn.show{ bottom: 20px; }
}
/* ---------------------------------------------------------------------- */
.hsh_btn_list{
    display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap;
}
.hsh_btn_list .hsh_btn,
.hsh_btn_list .hsh_link{
    margin: 0px 20px 10px 0px;
}
.hsh_btn_list .hsh_btn{ width: 48px; height: 48px; }
.hsh_btn_list .hsh_btn.hsh_btn--text:before{ width: 19px; height: 19px; }

@media screen and (max-width:1023px) {
    .hsh_btn_list .hsh_btn{  margin: 0px 10px 10px 0px; }
}
/* ---------------------------------------------------------------------- */
.hsh_head.scroll .hsh_btn.hsh_btn--search,
.menu_open .hsh_btn.hsh_btn--search{
    display: none;
    background-color: transparent;
    animation: flex-fade-out 0.5s;
}
.hsh_head .hsh_btn.hsh_btn--search{
    animation: flex-fade-in 0.5s;
}
.hsh_banner_page .hsh_head:not(.scroll) .hsh_btn.hsh_btn--search:not(:hover){
    background: transparent; box-shadow: none;
    filter: brightness(0) invert(1);
}
.hsh_inner_page .hsh_head:not(.scroll) .hsh_btn.hsh_btn--search:not(:hover){
    background: transparent; box-shadow: none;
}
/* ---------------------------------------------------------------------- */
.hsh_head .hsh_btn{ width: 72px; height: 72px; }

@media screen and (max-width:1279px) {
    .hsh_btn{ width: 48px; height: 48px; }
    .hsh_btn--xs{ width: 28px; height: 28px; }
    .hsh_btn.hsh_btn--text:before{ width: 19px; height: 19px; }
    .hsh_head .hsh_btn{ width: 64px; height: 64px; }
}
@media screen and (max-width:1023px) {
    .hsh_btn.hsh_btn--text:before{ width: 13px; height: 13px; }
    .hsh_head .hsh_btn{ width: 48px; height: 48px; }
}
/* ====================================================================== */
/* CONTENT BOX */
/* ====================================================================== */
.hsh_content_box{
    position: relative;
    margin: 40px 0px; padding: 60px 60px;
    background-color: #FFF; 
    border-radius: 40px;
}

.hsh_col > .hsh_content_box{ margin: 0px; }
.hsh_col > .hsh_content_box + .hsh_content_box { margin-top: 20px; }
.hsh_col > .hsh_content_box:first-child:last-child{ min-height: 100%; }

.hsh_content_box .hsh_content{ width: 100%; max-width: 1280px; margin: 0px auto; }
.hsh_content_box--full .hsh_content{ max-width: 100% !important; }

@media screen and (max-width:1023px) {    
    .hsh_content_box{ border-radius: 40px; margin:20px 0px; }
}
@media screen and (max-width:767px) {    
    .hsh_content_box{ padding: 40px; }
}
/* ====================================================================== */
/* PILL */
/* ====================================================================== */
.hsh_pill{
    background-color: #FFF; color: #545454;
    border-radius: 40px; overflow: hidden;
    display: flex; align-items: stretch; justify-content: flex-start;
}
.hsh_pill.hsh_pill--margin{ margin: 40px 0px; }

.hsh_pill .h3, .hsh_pill h3,
.hsh_pill .h4, .hsh_pill h4{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
    overflow: hidden;
}

.hsh_pill .hsh_pill_text,
.hsh_pill .hsh_media,
.hsh_pill .hsh_map{ width: 50%; }
.hsh_pill .hsh_map--full{ width: 100%; }
.hsh_pill .hsh_pill_text{
    display: flex; align-items: center; justify-content: flex-start;
}
.hsh_pill.hsh_pill--top .hsh_pill_text{ align-items: flex-start; }
.hsh_pill.hsh_pill--bottom .hsh_pill_text{ align-items: flex-end; }

.hsh_pill .hsh_content{ padding: 60px 60px; width: 100%; }
.hsh_pill--align-1280 .hsh_content { padding-left: calc((1560px - 1280px) / 2); }

.hsh_col > .hsh_pill:first-child:last-child{ min-height: 100%; }
.hsh_content .hsh_pill_unit_title {
    margin-bottom: 0;
    font-weight: 500;
    max-width: 100%;
}
.hsh_pill_unit_numb {
    font-size: 58px;
    line-height: 1;
    font-weight: bold;
    color: #f6841f;
}
.hsh_pill_unit {
    margin-bottom: 48px;
}
.hsh_pill_unit_info {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    /* margin: 48px 0; */
    margin: 42px 0;
    margin-right: -38px;
}
.hsh_pill_unit_info_item p {
    max-width: 100%;
}
.hsh_pill_unit_info_item {
    padding-right: 38px;
    margin: 6px 0;
}
.hsh_content .hsh_pill_unit_info_txt {
    margin-bottom: 0;
    color: #f6841f;
    font-size: 28px;
    line-height: 1.2;
}
.hsh_content .hsh_pill_unit_info_txt:first-child {
    margin-top: 0;
}
.hsh_content .hsh_pill_unit_info_txt._large {
    font-size: 44px;
}
.hsh_content .hsh_pill_unit_large-txt {
    margin: 48px 0;
}
.hsh_content .hsh_pill_unit_info_txt sub {
    vertical-align: text-bottom;
    font-size: 0.5em;
    position: relative;
    top: -0.25em;
    left: 2px;
}
.hsh_pill_btn_container {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 20px);
    margin-bottom: -12px;
}
.hsh_pill_btn_container .hsh_btn,
.hsh_pill_btn_container .hsh_link {
    margin-bottom: 12px;
}
.hsh_pill_btn_container .hsh_btn {
    height: auto;
    padding-top: 10px;
    padding-bottom: 10px;
}
.hsh_pill > .hsh_swiper {
    width: 50%;
    overflow: hidden !important;
    margin: 0;
}
.hsh_pill > .hsh_swiper .swiper-slide >  .hsh_media {
    width: 100%;
    max-width: none;
    height: 100%;
    border-radius: 0;
}
.hsh_pill > .hsh_swiper .swiper-slide > .hsh_media img {
    border-radius: 0;
}
.hsh_pill > .hsh_swiper .hsh_swiper_nav {
    bottom: 0 !important;
}
.hsh_pill > .hsh_swiper .hsh_btn.hsh_btn--prev {
    left: 12px;
}
.hsh_pill > .hsh_swiper .hsh_btn.hsh_btn--next {
    right: 12px;
}
@media screen and (max-width: 1700px) {
    .hsh_pill--align-1280 .hsh_content {
        padding-left: calc((50vw - 60px) - (1280px / 2));
    }
}
@media screen and (max-width: 1480px) {
    .hsh_pill--align-1280 .hsh_content {
        padding-left: 60px;
    }
}
@media screen and (max-width: 1279px) {
    .hsh_pill_btn_container .hsh_btn {
        min-height: 46px;
        padding-top: 9px;
        padding-bottom: 9px;
    }
}
@media screen and (max-width:1023px) {
    .hsh_pill.hsh_pill--margin{ margin: 20px 0px; }
    .hsh_pill{ border-radius: 40px; }
    .hsh_pill_unit_numb {
        font-size: 38px;
    }
    .hsh_pill_unit {
        margin-bottom: 28px;
    }
    .hsh_pill_unit_info {
        margin: 22px 0;
    }
    .hsh_content .hsh_pill_unit_large-txt {
        margin: 28px 0;
    }
    .hsh_content .hsh_pill_unit_info_txt {
        font-size: 24px;
    }
    .hsh_content .hsh_pill_unit_info_txt._large {
        font-size: 28px;
    }
    .hsh_pill > .hsh_swiper .hsh_btn.hsh_btn--prev,
    .hsh_pill > .hsh_swiper .hsh_btn.hsh_btn--next {
        display: flex;
    }
}
@media screen and (max-width:767px) {    
    .hsh_pill { flex-wrap: wrap-reverse; }
    .hsh_col .hsh_pill .hsh_pill_text{ width: auto; flex: 1; } 
    .hsh_col .hsh_pill .hsh_media,
    .hsh_col .hsh_pill .hsh_map{ max-width: 100px;  }
    :not(.hsh_col) > .hsh_pill .hsh_pill_text{ width: 100%; } 
    :not(.hsh_col) > .hsh_pill .hsh_media,
    :not(.hsh_col) > .hsh_pill .hsh_map{ width: 100%; } 
    .hsh_pill > .hsh_swiper { width: 100%; }

    .hsh_pill .hsh_content{ padding: 40px 40px; }
}
@media screen and (max-width: 639px) {
    .hsh_pill_btn_container .hsh_btn {
        min-height: 44px;
    }
}
/* ====================================================================== */
/* CARD */
/* ====================================================================== */
.hsh_card{
    background-color: #FFF; color: #000;
    border-radius: 40px; 
    overflow: hidden;
}
.hsh_card.card_border{
    border: #ff8400 solid 1px;
}
.hsh_card .hsh_content{ padding: 60px 60px; }
.hsh_card .hsh_card_text{ min-height: 200px; }
.hsh_card .h2, .hsh_card h2{
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;  
    overflow: hidden; min-height: 7.2em;
}
.hsh_card .h3, .hsh_card h3,
.hsh_card .h4, .hsh_card h4{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
    overflow: hidden; 
}
.hsh_col > .hsh_card:first-child:last-child{ min-height: 100%; }
@media screen and (max-width:1279px) {
    .hsh_card .hsh_content{ padding: 40px 40px; }
}
@media screen and (max-width:1023px) {
    .hsh_card{ border-radius: 40px; }
    .hsh_card .hsh_card_text{ min-height: 100px; }
}
/* ====================================================================== */
/* ACCORDION */
/* ====================================================================== */
.hsh_accordion{
    border-bottom: 1px solid #CCC;
    margin: 60px auto;
}
.hsh_col > .hsh_accordion{ margin-top: 0px !important; }
.hsh_accordion .hsh_accordion_item{
    padding: 30px 0px; 
    border-top: 1px solid #CCC;
}
.hsh_accordion .hsh_accordion_head{
    display: flex; align-items: center; justify-content: flex-start;
}
.hsh_accordion .hsh_accordion_head .name{
    font-size: 20px; font-weight: 700; flex: 1;
}
.hsh_accordion .hsh_accordion_head .date{
    font-size: 14px; margin-left: 20px;
}
.hsh_accordion .hsh_accordion_head:after{
    content: ""; display: block;
    width: 20px; height: 20px; margin-left: 20px;
    background-image: url(/assets/images/icon/next.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    transform: rotate(90deg);
    transition: ease all 0.3s;
}
.hsh_accordion .open .hsh_accordion_head:after{
    transform: rotate(-90deg);
}

.hsh_accordion .hsh_accordion_body{
    padding: 30px 0px; display: none;
}

@media screen and (max-width:1023px) {
    .hsh_accordion .hsh_accordion_head .name{ font-size: 18px; }
    .hsh_accordion .hsh_accordion_head .date{ font-size: 12px; }
}
@media screen and (max-width:767px) {
    .hsh_accordion .hsh_accordion_item{ padding: 20px 0px; }
    .hsh_accordion .hsh_accordion_body{ padding: 20px 0px; }
    .hsh_accordion .hsh_accordion_head .name{ font-size: 16px; }
    .hsh_accordion .hsh_accordion_head .date{ font-size: 12px; }
}
/* ====================================================================== */
/* TAB */
/* ====================================================================== */
.hsh_tab{
    display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap;
    margin-bottom: 20px;
}
.hsh_tab--margin-bottom-0 {
    margin-bottom: 0;
}
.hsh_tab a{
    position: relative; opacity: 0.5;
    font-size: 16px; margin: 0px 40px 20px 0px;
    text-decoration: none;
    font-weight: 600;
}
.hsh_tab a.active{ opacity: 1; }
.hsh_tab a.active:before{ 
    content: ""; display: block;
    position: absolute;
    width: 8px; height: 8px;
    bottom: -10px; left: calc(50% - 4px);
    background: #ff8400; border-radius: 50%;
}
.js-list_filter_grp {
    display: flex;
    flex-wrap: wrap;
}
.js-list_filter_grp .js-list_filter {position: relative;}
.js-list_filter_grp .js-list_filter:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 1px;
    height: 1.5em;
    background-color: #ddd;
}.js-list_filter_grp .js-list_filter:last-child:after {
    display: none;
}
.js-list_filter_grp .js-list_filter {
    margin-right: 40px;
}
@media screen and (max-width:1023px) {
    .hsh_tab a{  margin: 0px 20px 10px 0px; }
    .hsh_tab.hsh_tab--margin-bottom-0 { margin-bottom: 12px; }
    .js-list_filter_grp .js-list_filter {
        margin-right: 20px;
    }
}
/* ====================================================================== */
/* LISTING */
/* ====================================================================== */
.hsh_listing .hsh_listing_msg{ padding: 40px 0px;}
.hsh_listing .hsh_listing_msg .h3, .hsh_listing .hsh_listing_msg h3,
.hsh_listing .hsh_listing_msg .h4, .hsh_listing .hsh_listing_msg h4,
.hsh_listing .hsh_listing_msg .h5, .hsh_listing .hsh_listing_msg h5,
.hsh_listing .hsh_listing_msg .h6, .hsh_listing .hsh_listing_msg h6,
.hsh_listing .hsh_listing_msg .p, .hsh_listing .hsh_listing_msg p{ 
    margin-left: auto; margin-right: auto;
    text-align: center;
}
/* ====================================================================== */
/* PAGING */
/* ====================================================================== */
.hsh_paging{
    margin: 20px 0px 60px 0px;
    display: flex; align-items: center; justify-content: center;
}
.hsh_paging .hsh_btn{ margin: 0px 20px; }
.hsh_paging span{ font-weight: 500; }

@media screen and (max-width:1023px) {
    .hsh_paging{  margin: 20px 0px 40px 0px; }
    .hsh_paging .hsh_btn{ margin: 0px 10px; }
}
/* ====================================================================== */
/* SELECT */
/* ====================================================================== */
.hsh_select{
    display: block; position: relative;
    width: 100%; ;min-width: 150px;
    border-bottom: 1px solid #CCC;
}
.hsh_select select{
    box-sizing: border-box;
    border: none; background: none; border-radius: 0px;    
    width: 100%; min-height: 100%; 
    padding: 5px 20px 5px 0px;    
    font-size: inherit; font-family: inherit;
    opacity: 0;
}
.hsh_select span{
    box-sizing: border-box;
    position: absolute; z-index: 1;
    top:0px; left: 0px; width: 100%; height: 100%; 
    display: flex; align-items: center; justify-content: flex-start;
    padding: 0px 20px 0px 5px;    
    font-size: inherit; 
    background-image: url(/assets/images/icon/dropdown.svg);
    background-position: center right 5px;
    background-size: 20px;
    background-repeat: no-repeat;
    pointer-events: none;
}
.hsh_select:focus-within select{
    opacity: 1;
}
.hsh_select:focus-within span{
    opacity: 0;
}
@media screen and (max-width:767px) {
    .hsh_select{ font-size: 14px; }
}
/* ====================================================================== */
/* SITEMAP */
/* ====================================================================== */
.hsh_sitemap{
    margin: 60px 0px;
}
.hsh_sitemap .h3 a, .hsh_sitemap h3 a,
.hsh_sitemap .h4 a, .hsh_sitemap h4 a,
.hsh_sitemap .h5 a, .hsh_sitemap h5 a,
.hsh_sitemap .h6 a, .hsh_sitemap h6 a{ 
    margin-bottom: 30px; display: block;
}
.hsh_sitemap .p a, .hsh_sitemap p a{ 
    text-decoration: none; display: block;
    margin-bottom: 10px;
}
.hsh_sitemap a:hover{ text-decoration: underline;}
.hsh_sitemap .hsh_col{ padding-bottom: 20px; }

/* ====================================================================== */
/* MILESTONE */
/* ====================================================================== */
.hsh_milestone{ 
    position: relative;
    margin: 120px auto; 
    background: #000; color: #FFF;
    /* background-image: url(/assets/images/photo/purpose2.png); */
    /* background-size: cover; */
    /* background-repeat: no-repeat; */
    /* background-position: center center; */
}
.hsh_milestone .hsh_btn{
    position: absolute; z-index: 1;
    top: calc(50% - 32px); 
    border: 1px solid transparent;
}
.hsh_milestone .hsh_btn.hsh_btn--prev{ left: 20px; }
.hsh_milestone .hsh_btn.hsh_btn--next{ right: 20px; }
.hsh_milestone .hsh_btn.hsh_btn--prev:not(:hover),
.hsh_milestone .hsh_btn.hsh_btn--next:not(:hover){ 
    border: 1px solid #FFF;
    background: none;
}
.hsh_milestone .hsh_btn.hsh_btn--prev:not(:hover):before,
.hsh_milestone .hsh_btn.hsh_btn--next:not(:hover):before{ 
    filter: brightness(0) invert(1);
}
/* ---------------------------------------------------------------------- */
.hsh_milestone .swiper-container{ 
    background-color: rgba(0,0,0,0);    
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%);
}
.hsh_milestone .hsh_milestone_slide{ 
    position: relative; 
    height: 100%;
    background-image: url(/assets/images/photo/purpose2.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
.hsh_milestone .hsh_milestone_slide img{
    position: absolute; top:0px; left: 0px; width: 100%; height: 100%;
    object-fit: cover;
}
.hsh_milestone .hsh_milestone_slide .hsh_milestone_text{
    position: relative; z-index: 1;
    padding: 120px 0px 200px 0px;
    /* background-color: rgba(0,0,0,0);    
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%); */
}
.hsh_milestone .hsh_milestone_slide .hsh_milestone_text .hsh_main{
    display: flex; align-items: stretch; justify-content: flex-start; 
    min-height: 480px;
}
.hsh_milestone .hsh_milestone_slide .hsh_milestone_text .hsh_milestone_col{ 
    display: flex; align-items: flex-start; justify-content: flex-start;
    width: 50%; 
}
.hsh_milestone .hsh_milestone_slide .hsh_milestone_text .hsh_milestone_col:last-child{  align-items: flex-end; }
.hsh_milestone .hsh_milestone_slide .hsh_milestone_text .hsh_milestone_col .hsh_content{ width: 100%; }
/* ---------------------------------------------------------------------- */
.hsh_milestone .white_bullet{ position: relative; margin-bottom: 40px;}
.hsh_milestone .white_bullet:after{ 
    content:""; display: block;
    position: absolute;
    width: 15px; height: 15px;
    top: calc(0.5em - 5px); left: -30px;
    background: #FFF; border-radius: 50%;
}
/* ---------------------------------------------------------------------- */
.hsh_milestone .hsh_milestone_nav{
    position: relative; z-index: 2;
    display: flex; align-items: center; justify-content: center; flex-wrap: wrap;
    top: 0px; left: 0%; width: 100%;    
    padding: 40px 40px; 
    color: #FFF;
}
.hsh_milestone .hsh_milestone_nav:not(.hsh_milestone_nav--hide) {
    position: absolute;
    top: 0px; left: 0%; width: 100%;
}
.hsh_milestone .hsh_milestone_nav--hide {
    opacity: 0;
    pointer-events: none;
}
.hsh_milestone_nav_container {
    display: flex;
    align-items: flex-start;
    overflow: auto;
    height: 50px;
}
.hsh_milestone .hsh_milestone_nav a{
    position: relative; font-size: 18px;
    /* margin: 10px 20px 0px 0px; */ margin: 0px 20px 0px 0px; opacity: 0.5;
}
.hsh_milestone .hsh_milestone_nav a.active{ opacity: 1; }
.hsh_milestone .hsh_milestone_nav a.active:after{
    content: ""; display: block;
    position: absolute;
    bottom: -8px; left: calc(50% - 4px);
    width: 8px; height: 8px;
    background: #FFF; border-radius: 50%;
}
.hsh_milestone_nav_holder {
    position: absolute;
    width: calc(100% - 80px);
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
}
.hsh_milestone .hsh_milestone_nav-swiper {
    display: flex;
    background: none;
}
.hsh_milestone_nav_holder .swiper-wrapper {
    width: auto;
}

.hsh_milestone_nav-swiper .swiper-slide {
    width: auto;
}
.hsh_milestone_nav-swiper .swiper-slide span {
    position: relative;
    display: block;
    font-size: 18px;
    margin-bottom: 16px;
    opacity: 0.5;
    cursor: pointer;
}

.hsh_milestone_nav-swiper .swiper-slide span:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -8px;
    left: calc(50% - 4px);
    width: 8px;
    height: 8px;
    background: #FFF;
    border-radius: 50%;
    opacity: 0;
}
.hsh_milestone_nav-swiper .swiper-slide-thumb-active span,
.hsh_milestone_nav-swiper .swiper-slide-thumb-active span:after {
    opacity: 1;
}
/* ---------------------------------------------------------------------- */
@media screen and (max-width:1759px) {
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text .hsh_main{ margin: 0px 100px; }    
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text{ padding: 160px 0px 240px 0px; }
}
@media screen and (max-width:1659px) { 
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text{ padding: 120px 0px 180px 0px; }
}
@media screen and (max-width:1559px) { 
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text{ padding: 120px 0px 150px 0px; }
}
@media screen and (max-width:1439px) { 
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text{ padding: 120px 0px 120px 0px; }
    .hsh_milestone_nav{ padding-bottom: 20px; }
}
@media screen and (max-width:1023px) {     
    .hsh_milestone{  margin: 80px auto; }
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text .hsh_main{ margin: 0px 40px; }    
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text{ padding: 120px 0px 80px 0px; }
    .hsh_milestone .hsh_milestone_nav{ position: relative;  padding: 20px 40px;   }
    .hsh_milestone_nav-swiper {top: 20px;}
    .hsh_milestone .hsh_milestone_nav-swiper {top: auto;}
    /* .hsh_milestone_nav_container { height: 34px; } */
    
    .hsh_milestone .hsh_btn.hsh_btn--prev{ display: none; }
    .hsh_milestone .hsh_btn.hsh_btn--next{ display: none; }
    .hsh_milestone_nav-swiper .swiper-slide span,
    .hsh_milestone .hsh_milestone_nav a{ font-size: 16px; }
}
@media screen and (max-width:767px) {    
    .hsh_milestone{  margin: 40px auto; }     
 
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text .hsh_main{ display: block; }
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text{ padding: 120px 0px 40px 0px; }
    .hsh_milestone .hsh_milestone_slide .hsh_milestone_text .hsh_milestone_col{ width: 100%; }
    .hsh_milestone .white_bullet:after{ 
        width: 10px; height: 10px;
        top: calc(0.5em - 3px); left: -20px;        
    }
    .hsh_milestone_nav-swiper .swiper-slide span,
    .hsh_milestone .hsh_milestone_nav a{ font-size: 14px; }
}
/* ---------------------------------------------------------------------- */
.hsh-gallery__swiper .swiper-slide {
    opacity: 0;
    transition: 0.3s opacity ease;
}
.hsh-gallery__swiper .swiper-slide-active {
    opacity: 1;
}
.hsh-gallery__container {
    display: flex;
    flex-flow: column;
    align-items: center;
    width: calc(100% - 20px);
    margin: 0 auto;
}
.hsh-gallery__container img {
    max-width: 100%;
    max-height: 70vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 20px;
}
.hsh-gallery__caption {
    width: 100%;
    max-width: 640px;
    margin: 16px auto 0;
    text-align: center;
}
.hsh-gallery__caption:lang(en) {
    max-width: 991px;
}
.hsh-gallery__caption p,
.hsh-gallery__caption .p {
    margin-left: auto;
    margin-right: auto;
}
/* ====================================================================== */
/* HEAD */
/* ====================================================================== */
.hsh_head{
    position: fixed; z-index: 99;
    top:0px; left: 0px; width: 100%;
    pointer-events: none; 
}
.hsh_head a{ pointer-events: all; }

.hsh_head .hsh_head_nav{
    display: flex; align-items: center; justify-content: space-between;
    padding: 20px 0px;
}
.hsh_head .hsh_head_logo img{
   height: 72px;
   transition: ease all 0.3s;
}
.hsh_head .hsh_head_menu{
    display: flex; align-items: center; justify-content: flex-end;
}
.hsh_head .hsh_head_menu .hsh_btn{ margin-left: 20px; }
.hsh_head .hsh_head_menu .hsh_head_lang{
    display: block;
    margin-left: 20px; color: #FFF;
    border-bottom: 1px solid transparent;
}
.hsh_head .hsh_head_menu .hsh_head_lang:hover{
    border-bottom: 1px solid #FFF;
}
.hsh_head .hsh_head_menu .hsh_head_sep{
    display: block; width: 20px;
}

.hsh_head .hsh_head_menu .hsh_btn.hsh_btn--lang{ 
    background: transparent; color: #FFF; box-shadow: none;
}
.hsh_head .hsh_head_menu .hsh_btn.hsh_btn--lang:hover{
    background: #FFF; color: #000;
}
body:not(.menu_open)  .hsh_head_menu .hsh_head_lang,
body:not(.menu_open)  .hsh_head_menu .hsh_btn.hsh_btn--lang{  display: none; }

body:not(.menu_open) .hsh_head.scroll .hsh_head_logo a{
    display: none;
    animation: block-fade-out 0.5s;
}
body:not(.menu_open) .hsh_head .hsh_head_logo a{ animation: block-fade-in 0.5s;}
.hsh_head .hsh_main{ max-width: 100%; margin: 0px 60px; }

@media screen and (max-width:1279px) {
    .hsh_head .hsh_main{ margin: 0px 40px; }
}
@media screen and (max-width:1023px) {
    .hsh_head .hsh_head_logo img{ height: 48px; }
    .hsh_head .hsh_head_menu .hsh_btn{ margin-left: 10px; }
    .hsh_head .hsh_main{ max-width: 100%; /* margin: 0px 20px; */ }
}
@media screen and (max-width:767px) {
    .hsh_head .hsh_main{ margin: 0px 20px; }
}
/* ---------------------------------------------------------------------- */
.menu_open .hsh_head_logo a,
.hsh_banner_page .hsh_head_logo a{ filter: brightness(0) invert(1); }

/* ====================================================================== */
/* HEAD MENU */
/* ====================================================================== */
.hsh_menu{
    position: fixed; z-index: 98;
    top:0px; left: 0px; width: 100%; height: 100%;
    pointer-events: none;
}
.hsh_menu:before{
    content: ""; display: block;
    position: absolute; top:0%; right: 0%; width: 1px; height: 100%;
    background: rgba(253,114,0,1); opacity: 0; 
    transition: ease all 0.5s; 
}
.hsh_menu.open:before{
    /* width: 100%; height: 100%; top:0%; opacity: 0.98;  */
}
.hsh_menu_bg {
    position: fixed;
    border-radius: 50%;
    background: rgba(253,114,0,1);
    transition: 0.5s all ease;
    opacity: 0;
    z-index: 97;
}
.menu_open .hsh_menu_bg {
    /* transform: scale(100); */
    opacity: 0.98;
}
.hsh_menu .hsh_menu_body{
    position: relative;
    width: 100%; height: 100%; 
    padding-top: 100px;
    overflow-y: auto;
    pointer-events: all;
}
.hsh_menu:not(.open) .hsh_menu_body{ display: none; }

.hsh_menu .hsh_menu_body .hsh_menu_body_inner{ 
    display: flex; align-items: center; justify-content: center;    
    width: 100%; min-height: calc(100% - 100px); 
    color: #FFF;
}
.hsh_menu .hsh_menu_body .hsh_menu_sns{
    display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap;
     width: 100%; 
}
.hsh_menu .hsh_menu_body .hsh_menu_sns .hsh_sns{
    filter: brightness(0) invert(1); margin-bottom: 0px;
}
.hsh_menu .hsh_menu_body .hsh_menu_sns .hsh_sns:first-child{ margin-left: 0px;}
/* ---------------------------------------------------------------------- */
.hsh_menu .hsh_menu_body .hsh_menu_body_inner .hsh_main{
    width: 100%; max-width: 800px;  
}
.hsh_menu .hsh_menu_body .hsh_menu_body_inner .hsh_main a{
    display: inline-block; position: relative;
    text-transform: uppercase;    
}
.hsh_menu .hsh_menu_body .hsh_menu_body_inner .hsh_main a:before{
    display: block; content: "";
    position: absolute; width: 10%; height: 1px; bottom: -10px; left: 0px;
    background: #FFF; opacity: 0;
    transition: ease all 0.3s;
}
.hsh_menu .hsh_menu_body .hsh_menu_body_inner .hsh_main a:hover{ opacity: 1;}
.hsh_menu .hsh_menu_body .hsh_menu_body_inner .hsh_main a:hover:before,
.hsh_menu .hsh_menu_body .hsh_menu_body_inner .hsh_main a.hover:before,
.hsh_menu .hsh_menu_body .hsh_menu_body_inner .hsh_main a.current:before{ 
    width: 100%; opacity: 1;
}
/* ---------------------------------------------------------------------- */
.hsh_menu .hsh_menu_body .hsh_menu_row{
    display: flex; align-items: flex-start; justify-content: flex-start;
}
@media screen and (min-width: 1024px) {
    .hsh_menu .hsh_menu_body .hsh_menu_row{align-items: center;}
}
.hsh_menu .hsh_menu_body .hsh_menu_row .hsh_menu_col{
    width: 50%; 
}
.hsh_menu .hsh_menu_body .hsh_menu_row .hsh_menu_col:nth-child(2) a{
    font-weight: 400; opacity: 0.75;
}
.hsh_menu .hsh_menu_body .hsh_menu_row .hsh_menu_col:nth-child(2) a:hover{
    opacity: 1;
}

.hsh_menu .hsh_menu_body .hsh_menu_row a{
    font-size: 30px; font-weight: 700; margin-bottom: 40px;
}
.hsh_menu .hsh_menu_body .hsh_menu_sub{
    display: none;
    padding: 20px 0px; 
}
.hsh_menu .hsh_menu_body .hsh_menu_sub a{ font-size: 20px; font-weight: normal; margin-bottom: 10px; }

.hsh_menu .hsh_menu_body .hsh_menu_misc{
    display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap;
}
.hsh_menu .hsh_menu_body .hsh_menu_misc a{
    font-size: 18px;
    margin: 0px 20px 10px 0px;
}
.hsh_menu .hsh_menu_body .hsh_menu_back{
    padding-left: 15px;
} 
.hsh_menu .hsh_menu_body .hsh_menu_back:after{
    content: ""; display: block; width: 20px; height: 20px;
    position: absolute;top: calc(50% - 11px); left: -8px;
    background-image: url(/assets/images/icon/dropdown.svg);
    background-position: center left;    
    background-repeat: no-repeat;
    background-size: contain;
    transform: rotate(90deg);
    filter: brightness(0) invert(1);
}
@media screen and (min-width:1024px) {
    .hsh_menu .hsh_menu_body .hsh_menu_over{ display: none !important; }
    .hsh_menu .hsh_menu_body .hsh_menu_back{ display: none !important; }
}
@media screen and (max-width:1023px) {
    .hsh_menu .hsh_menu_body .hsh_menu_body_inner{ 
        align-items: flex-start; padding-top: 120px;
    }
    .hsh_menu .hsh_menu_body .hsh_menu_back{
        margin-top: 40px;
    }
    .hsh_menu .hsh_menu_body .hsh_menu_back:before{ content:"< "; display: inline-block; margin-right: 10px; }

    .hsh_menu .hsh_menu_body .hsh_menu_row .hsh_menu_col:first-child{ width: 100%; }
    .hsh_menu .hsh_menu_body .hsh_menu_row .hsh_menu_col:last-child{ display: none; }
    .hsh_menu .hsh_menu_body .hsh_menu_row a{ font-size: 20px; margin-bottom: 20px; }
    .hsh_menu .hsh_menu_body .hsh_menu_sub a{ font-size: 16px; margin-bottom: 10px; }
    .hsh_menu .hsh_menu_body .hsh_menu_misc a{ font-size: 12px;  }
}
/* ====================================================================== */
/* SEARCH MENU */
/* ====================================================================== */
.hsh_search{
    position: fixed; z-index: 98;
    top:0px; left: 0px; width: 100%; height: 100%;
    pointer-events: none;
}
.hsh_search:before{
    content: ""; display: block;
    position: absolute; top:0%; right: 0%; width: 1px; height: 100%;
    background: rgba(253,114,0,1); opacity: 0; 
    transition: ease all 0.5s; 
}
.hsh_search.open:before{
    width: 100%; height: 100%; top:0%; opacity: 0.98; 
}

.hsh_search .hsh_search_body{
    position: relative;
    width: 100%; height: 100%; 
    padding-top: 0px;
    overflow-y: auto;
    pointer-events: all;
}
.hsh_search .hsh_main{ transition: ease all 0.3s;}

.hsh_search:not(.open) .hsh_search_body{ display: none; }

.hsh_search .hsh_search_body .hsh_search_body_inner{ 
    display: flex; align-items: center; justify-content: center;    
    width: 100%; min-height: 100%; 
    color: #FFF;
}
/* ---------------------------------------------------------------------- */
.hsh_search .hsh_search_body .hsh_search_body_inner .hsh_main{
    width: 100%; max-width: 800px;  
}
.hsh_search .hsh_search_body .hsh_search_body_inner .hsh_main a{
    display: block; 
}
.hsh_search .hsh_search_body .hsh_search_body_inner .hsh_main a:hover{ opacity: 1; }
.hsh_search .hsh_search_body .hsh_search_quick{
    display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap;
}
.hsh_search .hsh_search_body .hsh_search_quick a{
    font-size: 16px;
    margin: 0px 20px 10px 0px;
}
/* ---------------------------------------------------------------------- */
.hsh_input{
    position: relative;
    display: block; width: 100%;
    border-bottom: 1px solid #000;
    margin-bottom: 20px;
}
.hsh_input input{
    color: inherit;
    display: block; width: 100%; height: 40px;
    background: none; border: none; border-radius: 0px;
    font-size: 16px;
}
.hsh_input.hsh_input--search input{
    padding-left: 50px;
}
.hsh_input.hsh_input--search input::placeholder{
    color: rgba(255,255,255,0.8)
}
.hsh_input.hsh_input--search [type="text"]{padding-right: 50px;}
.hsh_input.hsh_input--search a,
.hsh_input.hsh_input--search [type="submit"]{
    position: absolute; display: block;
    top: 0px; left: 0px; width: 40px; height: 100%;
    background-image: url(/assets/images/icon/search.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 20px;
}
.hsh_search_submit {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 100%;
    background-color: transparent;
    border: 0;
    cursor: pointer;
}
.hsh_search .hsh_input{ border-color: #FFF; }
.hsh_search .hsh_input--search a,

.hsh_search .hsh_input.hsh_input--search [type="submit"]{ filter: brightness(0) invert(1); }

.hsh_search_result .hsh_input{ max-width: 800px; }

.hsh_search_result .hsh_search_result_item{
    padding: 40px 100px 40px 0px; border-bottom: 1px solid #CCC;
    background-image: url(/assets/images/icon/arrow_black.svg);
    background-position: center right;
    background-size: 40px;
    background-repeat: no-repeat;
}
.hsh_search_result .hsh_search_result_item .p a,
.hsh_search_result .hsh_search_result_item p a{ text-decoration: none;}
.hsh_search_result .hsh_paging{ margin-top: 60px; }

@media screen and (min-width:1024px) {
    .hsh_input input{ font-size: 36px; height: 64px; }
    .hsh_input{ margin-bottom: 30px;}
}
@media screen and (max-width:1023px) {    
    .hsh_search_result .hsh_search_result_item{ padding: 30px 60px 30px 0px; background-size: 30px; }
    .hsh_search_result .hsh_paging{ margin-top: 40px; }
}
@media screen and (max-width:767px) {
    .hsh_search_result .hsh_search_result_item{ padding: 20px 40px 20px 0px; background-size: 20px; }
    .hsh_search_result .hsh_paging{ margin-top: 20px; }
    .hsh_search_submit{width: 40px;}
}
/* ====================================================================== */
/* FOOT */
/* ====================================================================== */
.hsh_foot{
    border-top: 1px solid #CCC;
    padding: 60px 0px 70px; 
}
.hsh_foot .hsh_foot_container{
    display: flex; align-items: flex-start; justify-content: flex-start;
}
.hsh_foot .hsh_foot_container + .hsh_foot_container{ margin-top: 60px;  align-items: flex-end;}

.hsh_foot .hsh_foot_left,
.hsh_foot .hsh_foot_right{ width: 50%; }

.hsh_foot .hsh_foot_right{
    display: flex; align-items: flex-start; justify-content: flex-end; flex-wrap: wrap;
}
.hsh_foot .hsh_foot_left--s {
    width: 360px;
}
.hsh_foot .hsh_foot_right--l {
    flex-grow: 1;
}
@media screen and (min-width:1280px) {
    .hsh_foot_container--award .hsh_foot_left {
        /* width: 60%; */
        width: calc(100% - 260px);
        margin-right: auto;
    }
    .hsh_foot_container--award .hsh_foot_right {
        /* width: 40%; */
        width: 330px;
        margin-bottom: 2px;
    }
}
@media screen and (max-width:1279px) {
    .hsh_foot .hsh_foot_container{ flex-wrap: wrap; }
    .hsh_foot .hsh_foot_container + .hsh_foot_container{ margin-top: 0px; flex-direction: column-reverse; }

    .hsh_foot .hsh_foot_left,
    .hsh_foot .hsh_foot_right{ width: 100%; }
    .hsh_foot .hsh_foot_left{ margin-bottom: 0px;}
    .hsh_foot .hsh_foot_right{ justify-content: flex-start; }
    .hsh_foot .hsh_foot_container + .hsh_foot_container .hsh_foot_left{  margin-bottom: 0px; }
    .hsh_foot .hsh_foot_container + .hsh_foot_container .hsh_foot_right{  margin-bottom: 20px; }
    
    .hsh_foot .hsh_foot_right{ justify-content: center; }
}
/* ---------------------------------------------------------------------- */
.hsh_foot .hsh_foot_logo .logo{ max-width: 140px; }
.hsh_foot .hsh_foot_logo .tagline{ max-width: 220px; }
.hsh_foot .hsh_foot_logo img{ margin-bottom: 20px; display: block; }
.hsh_foot .hsh_foot_text{ font-size: 12px; }

.hsh_foot .hsh_foot_menu{ 
    width: calc(20% - 30px); max-width: 200px;
    margin: 0px 0px 40px 30px;
    font-size: 16px;
}
.hsh_foot_menu_title {
    display: block;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
}
.hsh_foot .hsh_foot_menu:last-child a{ font-size: 13px;}

.hsh_foot .hsh_foot_menu a{
    display: block; margin-bottom: 15px;
}
.hsh_foot .hsh_foot_menu a:hover{
    color: #ff8400; 
}
@media screen and (min-width: 1280px) {
    .hsh_foot .hsh_foot_menu:last-child{ width: auto; max-width: calc(20% - 30px);}
}
@media screen and (max-width:1279px) {
    .hsh_foot{ padding-bottom: 120px; }
    .hsh_foot .hsh_foot_logo .logo{ max-width: 120px; }
    .hsh_foot .hsh_foot_logo .tagline{ max-width: 190px; }
    .hsh_foot .hsh_foot_logo img{ margin: 0px auto 20px auto; }
    .hsh_foot .hsh_foot_menu{ margin: 0px 40px 40px 0px; display: none; }
    .hsh_foot .hsh_foot_text{ text-align: center; }
    .hsh_foot .hsh_foot_menu:last-child {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        width: 100%;
        max-width: none;
        margin: 0;
    }
    .hsh_foot .hsh_foot_menu:last-child a {
        margin: 0 12px 15px;
    }
}
@media screen and (max-width:767px) {
    .hsh_foot .hsh_foot_logo .logo{ max-width: 100px; }
    /* .hsh_foot .hsh_foot_logo .tagline{ max-width: 150px; } */
    .hsh_foot .hsh_foot_logo img{ margin: 0px auto 20px auto; }
    /* .hsh_foot .hsh_foot_menu{ width: calc(50% - 40px); } */
}
/* ---------------------------------------------------------------------- */
.hsh_foot .hsh_foot_award{
    display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap;
}
.hsh_foot .hsh_foot_award a{
    margin: 0px 30px 15px 0px;
}
@media screen and (max-width:1279px) {
    
    .hsh_foot .hsh_foot_award{ 
        padding-top: 20px; position: relative;
        justify-content: center; 
    }
    .hsh_foot .hsh_foot_award:before{
        content: ""; display: block;
        position: absolute;
        width: 30%; top:0px; left: 35%; height: 1px;
        background: #E1E1E1;
    }
}
@media screen and (max-width:767px) {
    .hsh_foot .hsh_foot_award a{
        margin: 0px 20px 10px 0px; max-width: calc(25% - 20px);
    }
}
/* ---------------------------------------------------------------------- */
.hsh_sns{
    display: block;
    width: 32px; height: 32px; margin: 10px 0px 0px 20px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    filter: brightness(0.5);
}
.hsh_sns--facebook{ background-image: url(/assets/images/sns/03-facebook.svg); }
.hsh_sns--youtube{ background-image: url(/assets/images/sns/05-youtube.svg); }
.hsh_sns--linkedin{ background-image: url(/assets/images/sns/01-linkedin.svg); }
.hsh_sns--twitter{ background-image: url(/assets/images/sns/02-x.png); }
.hsh_sns--email{ background-image: url(/assets/images/sns/10-email.svg); }
.hsh_sns--ig{ background-image: url(/assets/images/sns/04-instagram.svg); }
.hsh_sns--rednote{ background-image: url(/assets/images/sns/rednote.svg); }

.hsh_sns:hover{
    filter: none; 
}
@media screen and (max-width:1279px) {
    .hsh_sns{ margin: 20px 20px 0px 0px; width: 24px; height: 24px; }
}
/* ====================================================================== */
/* POP */
/* ====================================================================== */
.hsh_pop{
    display: none;
    position: fixed; z-index: 100;
    top:0px; left: 0px; width: 100%; height: 100%;    
    background: #F5F5F5;
}
.hsh_pop .hsh_pop_head{
    height: 130px; margin: 0px 60px; padding: 20px 0px;
}
.hsh_pop .hsh_pop_head .hsh_pop_head_row{
    display: flex; align-items: center; justify-content: flex-start;
}
.hsh_pop .hsh_pop_head_logo,
.hsh_pop .hsh_pop_head_btn{ flex: 1; }
.hsh_pop .hsh_pop_head_logo img{
    width: 100%; max-width: 150px; height: auto;
}
.hsh_pop .hsh_pop_head_btn{
    display: flex; align-items: center; justify-content: flex-end;
}
.hsh_pop .hsh_pop_body{
    height: calc(100% - 130px); overflow: hidden; overflow-y: auto;
}
.hsh_pop .hsh_pop_body .hsh_main{ width: calc(100% - 40px); max-width: 1024px; margin-left: auto; margin-right: auto; }
.hsh_pop .hsh_pop_body .hsh_media{  margin-bottom: 0px; }

.hsh_pop .hsh_pop_body .hsh_pop_swiper{  position: relative; }
.hsh_pop .hsh_pop_body .hsh_pop_swiper .hsh_btn--prev,
.hsh_pop .hsh_pop_body .hsh_pop_swiper .hsh_btn--next{
    position: absolute; top: calc(50% - 32px); z-index: 1;
}
.hsh_pop .hsh_pop_body .hsh_pop_swiper .hsh_btn--prev{ left: -100px; }
.hsh_pop .hsh_pop_body .hsh_pop_swiper .hsh_btn--next{ right: -100px; }
.hsh_pop .hsh_pop_body .hsh_pop_swiper .swiper-button-disabled{ opacity: 0.2; pointer-events: none; }
.hsh_pop .hsh_pop_body .hsh_pop_swiper .swiper-container{ border-radius: 10px; overflow: hidden; }
.hsh_pop .hsh_pop_body .hsh_pop_swiper_dont_crop .swiper-container { border-radius: 0; }
.hsh_pop_swiper_dont_crop img { object-fit: contain; border-radius: 10px; }

.hsh_pop .hsh_pop_body .hsh_pop_thumb{
    margin-top: 10px;
    display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap;
}
.hsh_pop .hsh_pop_body .hsh_pop_thumb .hsh_media{ 
    width: 100%; max-width: 80px; margin: 0px 10px 10px 0px; opacity: 0.5;
    border-radius: 6px; overflow: hidden;
}
.hsh_pop .hsh_pop_body .hsh_pop_thumb .hsh_media.active{ opacity: 1; }

@media screen and (max-width:1279px) {
    
    .hsh_pop .hsh_pop_head{ margin: 0px 20px; }
    .hsh_pop .hsh_pop_body .hsh_pop_swiper .hsh_btn--prev{ left: 20px; top: calc(50% - 24px); }
    .hsh_pop .hsh_pop_body .hsh_pop_swiper .hsh_btn--next{ right: 20px; top: calc(50% - 24px); }
}
@media screen and (max-width:1063px) {
    .hsh_pop .hsh_pop_body .hsh_main{ margin-left: 20px; margin-right: 20px; }
}
@media screen and (max-width:1023px) {
    
    .hsh_pop .hsh_pop_head_logo img{ max-width: 100px; }
    .hsh_pop .hsh_pop_body .hsh_pop_swiper .hsh_btn--prev{ display: none; }
    .hsh_pop .hsh_pop_body .hsh_pop_swiper .hsh_btn--next{ display: none; }
}
/* ====================================================================== */
/* Swiper */
/* ====================================================================== */
.hsh_swiper{
    position: relative;
    overflow: visible !important;
    margin-bottom: 60px;
}
.hsh_swiper--med{ max-width: 1280px; }
.hsh_swiper_outer_desc {
    margin-top: -60px;
}
.hsh_swiper .hsh_btn{
    position: absolute; z-index: 1;
    top: calc(50% - 32px); 
}
.hsh_swiper--has-fraction .hsh_btn {
    top: calc(50% - 32px - 34px);
}
.hsh_swiper .hsh_btn.hsh_btn--prev{ left: -32px; }
.hsh_swiper .hsh_btn.hsh_btn--next{ right: -32px; }

.hsh_swiper .swiper-slide > .hsh_media{ max-width: calc(100% - 20px); margin: 0px auto; border-radius: 40px; } 
.hsh_swiper .swiper-slide > .hsh_media img{  border-radius: 40px; } 

.hsh_swiper .swiper-slide > .hsh_content .p + .h3, .hsh_swiper .swiper-slide > .hsh_content  p + h3,
.hsh_swiper .swiper-slide > .hsh_content .p + .h4, .hsh_swiper .swiper-slide > .hsh_content  p + h4,
.hsh_swiper .swiper-slide > .hsh_content .p + .h5, .hsh_swiper .swiper-slide > .hsh_content  p + h5{ margin-top: -15px; }
/* ---------------------------------------------------------------------- */
.hsh_swiper .hsh_swiper_nav{
    position: absolute; z-index: 1;
    display: flex; align-items: center; justify-content: center;
    bottom: -60px !important; left: 0px; width: 100%;
    padding-bottom: 20px;
}
.hsh_swiper .hsh_swiper_nav--left{justify-content: flex-start;}
/* ---------------------------------------------------------------------- */
.hsh_swiper_tab{ display: block; }
.hsh_swiper_tab a{
    display: block; margin: 0px 0px 10px 0px !important;
    opacity: 0.5;
}
.hsh_swiper_tab a.active{ opacity: 1;  }
.hsh_swiper_tab a.active:after{ content:"."; color: #ff8400; }
/* ---------------------------------------------------------------------- */
.hsh_swiper_arrow{ 
    margin-top: 40px;
    display: flex; align-items: center; justify-content: flex-start;
}
.hsh_swiper_arrow a{
    display: block; width: 40px; height: 20px; margin-right: 20px;
    background-image: url(/assets/images/icon/arrow.svg);
    background-size: 40px;
    background-repeat: no-repeat;
    background-position:  center center;
}
.hsh_swiper_arrow a.swiper-prev{ transform: scaleX(-1);}

/* ---------------------------------------------------------------------- */
.hsh_swiper_pause {
    display: block; width: 20px; height: 20px;
    margin-left: 20px;
}
.hsh_swiper_pause span{
    position: relative;
    display: block; width: 100%; height: 100%;
    background: #ff8400; border-radius: 50%;
}
.hsh_swiper_pause span:before,
.hsh_swiper_pause span:after{
    position: absolute;
    content: ""; display: block;
    width: 10%; height: 50%; top:25%;
    background: #FFF;
}
.hsh_swiper_pause span:before{ left: 35%; }
.hsh_swiper_pause span:after{ right: 35%; }
.hsh_swiper_pause.paused span:before{
    width: 0px; height: 0px; 
    background: none;
    border-width: 4px;
    border-style: solid;
    border-color: transparent transparent transparent #FFF ;
    transform: scaleX(150%);
    top: 6px; left: 9px;
}
.hsh_swiper_pause.paused span:after{ display:none; }
/* ---------------------------------------------------------------------- */
@media screen and (max-width:1279px) {
    .hsh_swiper .hsh_btn{ top: calc(50% - 24px); }
    .hsh_swiper--has-fraction .hsh_btn {
        top: calc(50% - 24px - 29px);
    }
    .hsh_swiper .hsh_swiper_nav{ padding-bottom: 10px; }
    .hsh_swiper .hsh_btn.hsh_btn--prev{ left: -24px; }
    .hsh_swiper .hsh_btn.hsh_btn--next{ right: -24px; }
}
@media screen and (max-width:1023px) {
    .hsh_swiper .hsh_btn.hsh_btn--prev{ display: none; }
    .hsh_swiper .hsh_btn.hsh_btn--next{ display: none; }
}
/* ---------------------------------------------------------------------- */
.swiper-container .swiper-button-disabled{
    pointer-events: none; /* opacity: 0.25; */ opacity: 0;
}
.swiper-wrapper{ align-items: stretch; }
.swiper-slide{  height: auto !important; }
.swiper-slide > .hsh_card{ min-height: 100%; }

.swiper-container .swiper-bullets .swiper-pagination-bullet{
    width: 36px; height: 4px; 
    background-color: #000;
    border-radius: 0%; 
    margin: 0px 10px 5px 0px;
}
.swiper-container .swiper-bullets .swiper-pagination-bullet-active{ background-color: #ff8400;  }
.swiper-container .swiper-pagination {
    width: auto; display: block; position: static;
}
.swiper-container .swiper-pagination:not(.swiper-pagination-fraction) .swiper-pagination-current{ 
    display: none; 
}
.swiper-container .swiper-pagination-fraction{ 
    margin-top: 24px;
}

.swiper-container .swiper-bullets.hsh_banner_nav .swiper-pagination-bullet{ background-color: #FFF; }

@media screen and (max-width:1023px) {
    .swiper-container .swiper-bullets .swiper-pagination-bullet{ width: 24px; }
}
/* ====================================================================== */
/* EFFECT */
/* ====================================================================== */
@media screen and (min-width:768px) {
    .effect{
        transition: ease all 0.8s;
        transition-delay: 0.0s;
    }
    .effect.effect_up{ transform: translateY(100px); opacity: 0; }
    .effect.effect_up.inside{ transform: translateY(0px); opacity: 1; }

    .effect.effect_up_child > *{ transform: translateY(100px); opacity: 0; transition: ease transform 0.8s, ease opacity 0.8s; }
    .effect.effect_up_child.inside > *{ transform: translateY(0px); opacity: 1; }
    .effect.effect_up_child > *:nth-child(2) { transition: ease transform 0.8s 0.15s, ease opacity 0.8s 0.15s; }
    .effect.effect_up_child > *:nth-child(3) { transition: ease transform 0.8s 0.3s, ease opacity 0.8s 0.3s; }
    .effect.effect_up_child > *:nth-child(4) { transition: ease transform 0.8s 0.45s, ease opacity 0.8s 0.45s; }
    .effect.effect_up_child > *:nth-child(5) { transition: ease transform 0.8s 0.6s, ease opacity 0.8s 0.6s; }
    .effect.effect_up_child > *:nth-child(6) { transition: ease transform 0.8s 0.75s, ease opacity 0.8s 0.75s; }
    .effect.effect_up_child > .hsh_link { transition: ease transform 0.8s 0.75s, ease opacity 0.8s 0.75s, ease color 0.3s 0s, ease background-color 0.3s 0s; }
}
/* ---------------------------------------------------------------------- */
.a11y-hidden {
    position: absolute !important;
    left: -300000px !important;
    width: 1px !important;
    height: 1px !important;
    display: inline-block !important;
    color: #000 !important;
    background-color: #fff !important;
}
/* ====================================================================== */
/* MAP FILTER */
/* ====================================================================== */
.hsh_map_filter_btn_container {
    display: flex;
    /* flex-wrap: wrap; */
    justify-content: flex-end;
}
.hsh_map_filter_btn_container .hsh_link:last-child {
    margin-right: 0;
}
.hsh_map_filter_item_container {
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    margin-right: -24px;
}
.hsh_map_filter_item {
    width: calc(100% / 3 - 24px);
    margin-right: 24px;
}
@media screen and (max-width: 1023px) {
    .hsh_map_filter_btn_container,
    .hsh_map_filter_item_container {
        justify-content: center;
    }
}
@media screen and (max-width: 767px){
    .hsh_map_filter_item {
        width: calc(50% - 24px);
    }
}
@media screen and (max-width: 375px){
    .hsh_map_filter_item_container {
        margin-right: 0;
    }
    .hsh_map_filter_item {
        width: 100%;
        margin-right: 0;
    }
}
/* ====================================================================== */
/* WECHAT POPUP */
/* ====================================================================== */
.wechat_popup_btn {
    padding: 0;
}
.wechat_popup_btn_desc {
    display: none;
}
.wechat_popup_btn_img {
    display: none;
}
.wechat_popup {
    position: fixed;
    top: 50%;
    left: 50%;
    display: none;
    width: calc(100% - 50px);
    max-width: 360px;
    max-height: 80%;
    padding: 18px 34px;
    border-radius: 10px;
    text-align: center;
    color: #fff;
    background-color: #fd7200;
    transform: translate(-50%, -50%);
}
.wechat_popup_close {
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    margin-left: auto;
    margin-right: -20px;
    margin-bottom: 18px;
    padding: 0;
    border: 0;
    background-color: transparent;
    cursor: pointer;
}
.wechat_popup_close:before,
.wechat_popup_close:after {
    content: "";
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background-color: #fff;
    transform: rotate(45deg);
}
.wechat_popup_close:after {
    transform: rotate(-45deg);
}
.wechat_popup_img_container {
    background-color: #fff;
    padding: 4px;
    border-radius: 10px;
    overflow: hidden;
}
.wechat_popup_img_container img {
    display: block;
    width: 100%;
}
@media screen and (max-width: 375px) {
    .wechat_popup {
        padding: 18px 24px;
    }
    .wechat_popup_close {
        margin-right: -12px;
        margin-bottom: 14px;
    }
    .wechat_popup p {
        font-size: 14px;
    }
}
/* ====================================================================== */
/* INNER　STICKY NAV */
/* ====================================================================== */
.hsh_inner_nav {
    position: sticky;
    top: 24px;
    margin-top: 24px;
    z-index: 10;
}
@media screen and (min-width: 1441px) {
    .hsh_inner_nav {
        margin-left: auto;
        margin-right: auto;
    }
}
.hsh_inner_nav_container {
    display: flex;
    align-items: center;
    padding: 8px;
    padding-left: 30px;
    border-radius: 50px;
    box-shadow: 0px 5px 10px rgba(0,0,0,0.06);
    background-color: #fff;
}
.hsh_inner_nav_container .hsh_link {
    margin-left: auto;
    margin-right: 0;
}
.hsh_inner_nav_item_container {
    display: flex;
    align-items: center;
}
.hsh_inner_nav_item {
    position: relative;
    padding: 0;
    border: 0;
    margin: 6px 12px;
    background-color: transparent;
    font-size: 14px;
    font-family: inherit;
    transition: 0.3s all ease;
    cursor: pointer;
}
.hsh_inner_nav_item:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    display: block;
    width: 100%;
    height: 2px;
    background-color: #ff8400;
    opacity: 0;
    transition: 0.3s all ease;
}
.hsh_inner_nav_item.active:after {
    opacity: 1;
}
.hsh_inner_nav_item:hover {
    color: #ff8400;
}
.hsh_inner_nav_select {
    display: none;
}
@media screen and (max-width: 1600px) {
    .hsh_inner_nav_container {
        margin-right: calc((100vw - 1280px) / 2 * -1 + 60px + 92px);
    }
}
@media screen and (max-width: 1360px) {
    .hsh_inner_nav_container {
        margin-right: calc(-40px + 60px + 92px);
    }
}
@media screen and (max-width: 1279px) {
    .hsh_inner_nav_container {
        margin-right: 84px;
    }
}
@media screen and (max-width: 1023px) {
    .hsh_inner_nav {
        top: 20px;
    }
    .hsh_inner_nav_container {
        margin-right: 60px;
        padding: 4px;
        padding-left: 14px;
    }
    .hsh_inner_nav_container .hsh_link {
        padding: 9px 6px 10px;
        min-width: 100px;
    }
}
@media screen and (max-width: 767px){
    .hsh_inner_nav_select {
        display: block;
        min-width: auto;
        margin-right: 12px;
    }
    .hsh_inner_nav_select .js-select_display {
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        line-clamp: 1;
        line-height: 2;
        -webkit-box-orient: vertical;
    }
    .hsh_inner_nav_item_container {
        display: none;
    }
}
@media screen and (max-width: 639px){
    .hsh_inner_nav_container .hsh_link {
        padding: 10px 6px 11px;
    }
}
/* ====================================================================== */
/* TWO BLOCK */
/* ====================================================================== */
.two-blk {
    display: flex;
}
.two-blk__map {
    width: 50%;
    min-height: 35vw;
}
.two-blk__textarea {
    width: 50%;
    padding: 100px 60px;
    background-color: #fff;
}
.office-list {
    margin: -16px 0;
}
.office-list__item {
    display: flex;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px rgba(0,0,0,0.1) solid;
}
.office-list__item:last-child {
    border-bottom: 0;
}
.office-list__item-textarea {
    margin-right: auto;
}
.office-list__item .hsh_link {
    flex-shrink: 0;
    margin-left: 24px;
    margin-right: 0;
}
.two-blk__textarea .hsh_content {
    max-width: 720px;
    margin-left: 0;
}
.office-list__item-textarea p {
    max-width: 100%;
}
.hsh_content .office-list__item-title {
    margin-bottom: 2px;
}
@media screen and (max-width: 767px) {
    .two-blk {
        flex-flow: column;
    }
    .two-blk__map {
        width: 100%;
        height: 100vw;
        min-height: auto;
        max-height: 420px;
    }
    .two-blk__textarea {
        width: 100%;
        padding: 60px 25px;
    }
}
/* ---------------------------------------------------------------------- */
ul.dot-outside {margin-left: -20px;}
ul.dot-outside li {list-style: none;position: relative;margin-bottom: 8px;}
ul.dot-outside li:last-child {margin-bottom: 0;}
ul.dot-outside li:before {
    content: "";
    position: absolute;
    top: calc(0.75em - 2px);
    left: -10px;
    display: block;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: red;
    overflow: hidden;
}
/* ====================================================================== */
/* FORM */
/* ====================================================================== */
.enquity-popup {
    position: fixed;
    left: 0;
    bottom: -100%;
    width: 100%;
    max-height: calc(100% - 112px);
    /* height: 100%; */
    color: #fff;
    background-color: #ff8400;
    overflow: auto;
    z-index: 97;
    visibility: hidden;
    transition: 1.2s all ease;
}
@media screen and (max-width: 1279px) {
    .enquity-popup {
        max-height: calc(100% - 104px);
    }
}
@media screen and (max-width: 1023px) {
    .enquity-popup {
        max-height: calc(100% - 88px);
    }
}
.enquity-popup.active {
    bottom: 0;
    visibility: visible;
}
.enquity-popup__close-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.enquity-popup__outer {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    z-index: 2;
}
.enquity-popup__inner {
    width: 100%;
    overflow: hidden;
    /* max-height: 70vh; */
    /* background-color: #ff8400; */
    /* overflow: auto; */
}
.enquity-popup__close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    display: block;
    width: 24px;
    height: 24px;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    z-index: 5;
}
.enquity-popup__close-btn:before,
.enquity-popup__close-btn:after {
    content: "";
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background-color: #fff;
    transform: rotate(45deg);
}
.enquity-popup__close-btn:after {
    transform: rotate(-45deg);
}
.hsh_form {
    display: flex;
    flex-wrap: wrap;
    margin-right: -38px;
}
.hsh_form_col {
    position: relative;
    width: 50%;
    padding: 16px 38px 20px 0;
}
.hsh_form_radio {
    display: inline-block;
    margin-right: 24px;
}
.cust-radio,
.cust-checkbox {
    position: relative;
}
.cust-radio input,
.cust-checkbox input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    appearance: none;
    margin: 0;
    opacity: 0;
}
.cust-radio__mask,
.cust-checkbox__mask {
    position: relative;
    padding-left: 1.5em;
    line-height: 1.5;
    display: block;
}
.cust-radio__mask:before,
.cust-checkbox__mask:before {
    content: "";
    position: absolute;
    top: calc((1.5em - 15px) / 2);
    left: 0;
    width: 13px;
    height: 13px;
    border: 1px #fff solid;
}
.cust-radio__mask:after,
.cust-checkbox__mask:after {
    content: "";
    position: absolute;
    top: calc((1.5em - 15px) / 2 + 2px);
    left: 2px;
    width: 11px;
    height: 11px;
    background: #fff;
    opacity: 0;
}
input:checked + .cust-radio__mask:after,
input:checked + .cust-checkbox__mask:after {
    opacity: 1;
}
.hsh_form_input {
    display: block;
    width: 100%;
    padding: 6px 0;
    border: 0;
    border-bottom: 1px rgba(255, 255, 255, 0.5) solid;
    background: transparent;
    color: #fff;
    font-size: 16px;
    line-height: 1.5;
}
.hsh_form_input:focus {
    outline: 0;
    border-bottom-color: #fff;
}
.hsh_form_label {
    position: absolute;
    top: 16px;
    left: 0;
    display: block;
    padding: 6px 0;
    font-size: 16px;
    transition: 0.3s all ease;
}
.has-value .hsh_form_label {
    top: -6px;
    font-size: 12px;
}
.hsh_form .hsh_select {
    min-width: auto;
    border-bottom: 1px rgba(255, 255, 255, 0.5) solid;
}
.hsh_form .hsh_select:focus-within {
    border-bottom-color: #fff;
}
.hsh_form select {
    color: #fff;
    padding-top: 6px;
    padding-bottom: 6px;
    line-height: 1.5;
    appearance: none;
}
.hsh_form select:focus {
    outline: 0;
}
.hsh_form select option {
    color: #000;
}
.hsh_form .js-select_display {
    padding-left: 0;
    background-image: url(/assets/images/icon/dropdown_white.svg);
    opacity: 0;
}
.has-value .js-select_display {
    opacity: 1;
}
.hsh_select .hsh_form_label {
    top: 0;
}
.has-value .hsh_select .hsh_form_label {
    top: calc(-16px - 6px);
}
.hsh_form_col--15 {
    width: 15%;
}
.hsh_form_col--35 {
    width: 35%;
}
.hsh_form_col--100 {
    width: 100%;
}
.cust-radio__mask a,
.cust-checkbox__mask a {
    text-decoration: underline;
}
.enquity-form__thank {
    display: none;
    padding-top: 24px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .hsh_form_label,
    .hsh_form_input,
    .cust-radio__mask,
    .cust-checkbox__mask {
        font-size: 14px;
    }
    .hsh_form_col {
        width: 100%;
    }
}
/* ---------------------------------------------------------------------- */