/* 
Confirmed in use 
*/

/* General fixes */
/* Wrapping the whole content including the bottom margin of the last section */
.elementor-section-wrap {
    overflow: auto;
}
/* Hide auto generated p tag if empty */
p:empty{
    display: none;
}


/* Common */

html {
    font-size: 100%; 
}

body {
    color: #4c4c4c;
    /* line-height: 1.625em; */
    background: linear-gradient(#000 50px, #f5f5f5 50px) no-repeat;
    min-height: 100vh;
}

p {
    margin-bottom: 1.625em!important;
}
p:last-child {
    margin-bottom: 0!important;
}

/* Headdings */
h1, h2, h3,
.entry-content h1, .entry-content h2, .entry-content h3 {
    /* font-family: 'nunito', 'Open Sans', 'Helvetica Neue', Arial, sans-serif!important; */
    font-weight: 300;
    /* line-height: 1.25em!important; */
}

h4, h5, h6,
.entry-content h4, .entry-content h5, .entry-content h6{
    line-height: 1.625em!important;
    /* margin-bottom: 0.5em;
    letter-spacing: 0.04em;
    line-height: 1.5em; */
}

h1, .entry-content h1 {
    font-size: 3.25rem;
}

h2, .entry-content h2 {
    font-size: 2.5rem;
}

h3, .entry-content h3 {
    font-size: 2rem;   
}

h4, .entry-content h4 {
    font-size: 1.6rem;
}

h5, .entry-content h5 {
    font-size: 1.25rem;
}

h6, .entry-content h6 {
    font-size: 1rem;
}



/* 
Type manipulations
*/

.lm-text-lg {
    font-size: 1.125rem;
    line-height: 1.625em;
}


/* 
Image manipulations
*/

img {
    height: auto;
    width: auto;
}

.lm-image-height-m img {
    height: 300px;
    width: auto;
}



/*
UI elements
*/

/* Divider */
.lm-divider {   
    border-left: 1px solid #999999;
    height: 24px;
    width: 1px;
    position: relative;
    left: 50%;
    margin-left: 0;
    top: 0;
    opacity: 0.5;
}

/* Form elements */
.check {
    cursor: pointer;
    position: relative;
    margin: auto;
    width: 18px;
    height: 18px;
    -webkit-tap-highlight-color: transparent;
    transform: translate3d(0, 0, 0);
  }
  /* .check:before {
    content: "";
    position: absolute;
    top: -15px;
    left: -15px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(34,50,84,0.03);
    opacity: 0;
    transition: opacity 0.2s ease;
  } */
  .check svg {
    position: relative;
    top:4px; /* Added later for aligning to the text*/
    z-index: 1;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke: #c8ccd4;
    stroke-width: 1.5;
    transform: translate3d(0, 0, 0);
    transition: all 0.2s ease;
  }
  .check svg path {
    stroke-dasharray: 60;
    stroke-dashoffset: 0;
  }
  .check svg polyline {
    stroke-dasharray: 22;
    stroke-dashoffset: 66;
  }
  .check:hover:before {
    opacity: 1;
  }
  .check:hover svg {
    stroke: #4285f4;
  }
  #cbx:checked + .check svg {
    stroke: #4285f4;
  }
  #cbx:checked + .check svg path {
    stroke-dashoffset: 60;
    transition: all 0.3s linear;
  }
  #cbx:checked + .check svg polyline {
    stroke-dashoffset: 42;
    transition: all 0.2s linear;
    transition-delay: 0.15s;
  }
  


/* List */

ul {
    margin: 0 auto;
    padding-left: 2.6em;
}
ul.bullet-points {
    width: fit-content;
}
ul.lm-open-position-list {
    width: 100%;
    max-width: 420px;
    min-width: 320px;
    list-style: none;
    margin-left: auto;
    margin-right: auto;
}
ul.lm-open-position-list li {
    margin-bottom: 1.625em;
    border-bottom: solid 1px #dddddd;
}
a.lm-open-position {

}

.lm-open-position-area {
    float: right;
}


/* 
Sections
*/
.lm-overflow-hidden {
    display: block;
    overflow: hidden;
}

@media screen and (min-width: 768px) {
    .lm-section {
        max-width: 1236px;
        margin-left: auto;
        margin-right: auto;
        overflow: hidden;
    }
    /* old */
    .lm-section-fade-in {
        max-width: 1236px;
        margin-left: auto;
        margin-right: auto;   
        transition: opacity 1s, top 1s!important;
        opacity: 0;
        top: 48px;
    }
    .lm-section-fade-in.fade-in {
        opacity: 1;
        top: 0;
    }
    /* new */
    .lm-block-fade-in {    
        transition: opacity 1s, top 1s!important;
        opacity: 0;
        top: 48px;
    }
    .lm-block-fade-in section {
        overflow: hidden;
    }
    .lm-block-fade-in.fade-in {
        opacity: 1;
        top: 0;
    }
}

/* Make the height the same as the adjacent div */
.lm-column-block {
    height: 100%;
}


/* Password protected page */
.post-password-form {
    margin-top: 100px;
}
/* news articles */
.news-template-default article.news {
    max-width: 852px;
    padding: 48px!important;
    margin-top: 48px!important;
    margin-left: auto!important;
    margin-right: auto!important;
}
@media screen and (min-width: 768px) {
    .news-template-default article.news {
        max-width: 852px;
        padding: 96px!important;
        margin-top: 24px!important;
    }
}





/* ////// */












/* @font-face {
    font-family:"GothamRnd-Light";
    src: url(../fonts/GothamRnd-Light.woff) format("woff");
} */

@font-face {
    font-family: YuGothicM;
    src: local("Yu Gothic Medium");
  }

body {
    font-family: Arial, sans-serif;
    font-size: 100%;
    min-width: 360px;
    overflow: hidden;
}

body:lang(en) {
    font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif;
}

body:lang(ja) {
    font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
    font-weight: 400;
}

body:lang(zh-CN) {
    font-family: 'Hiragino Kaku Gothic Pro', 'WenQuanYi Zen Hei', '微軟正黑體', '蘋果儷中黑', Helvetica, Arial, sans-serif;
    font-weight: 400;
}




h1:lang(ja), h2:lang(ja), h3:lang(ja),
.entry-content h1:lang(ja), .entry-content h2:lang(ja), .entry-content h3:lang(ja) {
    font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif!important;
    font-weight: 300;
}
h1:lang(zh-CN), h2:lang(zh-CN), h3:lang(zh-CN),
.entry-content h1:lang(zh-CN), .entry-content h2:lang(zh-CN), .entry-content h3:lang(zh-CN) {
    font-family: 'Hiragino Kaku Gothic Pro', 'WenQuanYi Zen Hei', '微軟正黑體', '蘋果儷中黑', Helvetica, Arial, sans-serif!important;
    font-weight: 400;
}


h4:lang(ja), h5:lang(ja), h6:lang(ja),
.entry-content h4:lang(ja), .entry-content h5:lang(ja), .entry-content h6:lang(ja){
    margin-bottom: 0.5em;
    font-weight: 400;
    line-height: 1.5em;
}



/* Text layout */
.entry-content h4.lm-page-description {
    font-size: 1.5em!important;
    font-weight: 600!important;
    max-width: 700px!important;
}

.justify {
    text-align: justify;
    margin-left: auto;
    margin-right: auto;
}


.lm-grey {
    color: #999999!important;
}

.lm-bold {
    font-weight: bold;
}


p {
    font-weight: 300;
}

p:lang(zh) {
    font-weight: normal;
}



ul.bullet-points li {
    margin-bottom: 0.62em; 
}
/* For video control */
.controls__overlay li {
    margin-bottom: 0; 
}


h1,h2,h3, h4, h5, h6, p, li {
    max-width: 660px;
}
h1,h2,h3, h4, h5, h6, p {
    margin-left: auto!important;
    margin-right: auto!important;
}



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

:lang(zh), .entry-content h1:lang(zh), .entry-content h2:lang(zh), .entry-content h3:lang(zh), {font-family: 'Arial',"Simhei", STHeitiSC-Medium, sans-serif!important;;}
h1.jpn, h2.jpn, h3.jpn, h4.jpn {font-family: "Noto Sans Japanese"!important;}

.small {
    font: 0.875em;
}


/* a:hover {
    opacity: 0.7;
} */



.center {
    text-align: center!important;
    margin-left: auto!important;
    margin-right: auto!important;
}

.block-center{
    text-align: center;
}



.lm-tablet-center {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.lm-mobile-center {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}