::-moz-selection { background: #74F1D6;}
::selection { background: #74F1D6;}

/* force break lines of text links */
a {
  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
  word-break: break-word !important;
}

/* Responsive visibility */
@media all and (min-width:551px) {
  .desktop-br {display: inline;}
  .mobile-br {display: none;}
}
@media all and (max-width:550px) {
    .desktop-br {display: none;}
    .mobile-br {display: inline;}
}

/* Header background color dark theme */
.bg-dark {
  background-color: #191919 !important;
}

/* Service name with green underline */
.text-service-name {
  display: inline-block !important;
}

/* Japanese i18n texts */
h1.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 90px;
  line-height: 130%;
  font-weight: 900;
}

h2.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 70px;
  line-height: 130%;
  font-weight: 900;
  letter-spacing: 1px;

}

h3.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 44px;
  line-height: 144%;
  /* font-weight: 900; */
}

@media only screen and (max-width: 479px) {
  h1.language-ja {
    font-size: 48px;
  }

  h2.language-ja {
    font-size: 44px;
  }

  h3.language-ja {
    font-size: 32px;
  }
}

h4.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 32px;
  line-height: 160%;
  /* font-weight: 900; */
}

h5.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 24px;
  line-height: 118%;
  font-weight: 700;
}

h6.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 18px;
  line-height: 130%;
  font-weight: 500;
}

.nav-links.language-ja {
  margin-right: 36px;
  padding-right: 32px;
  background-repeat: no-repeat;
  font-family: source-han-sans-japanese, sans-serif;
  color: #191919;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
}

.desc.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  /* color: #191919; */
  font-size: 18px;
  line-height: 170%;
  font-weight: 400;
  text-align: left;
}

.body.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 16px;
  line-height: 170%;
  font-weight: 300;
  text-align: left;
}

.button.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  line-height: 48px;
  font-weight: 600;
  letter-spacing: 0.5px;
}

.text-samll.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 14px;
  font-weight: 500;
}

.text-tiny.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 12px;
  font-weight: 500;
}

/* Business login button */
.btn-biz-login.language-ja {
  font-family: source-han-sans-japanese, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 32px;
}

/* Hide Vimeo title */
.vp-controls-wrapper {
  display: none !important;
}

/* Stop scrolling body on mobile menu scroll */
@media (max-width: 900px) {
  html.noscroll {
    overflow: hidden;
  }

  body.noscroll {
      overflow: hidden;
      height: 100vh;
  }

  .wrapper-nav-panels {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* Custom input select dropdown */
.input-dropdown {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-image: url('https://uploads-ssl.webflow.com/5e71e0c8ed23ac0233b0fc6e/5e7308e4be65a4ebaa5adf44_angle-down-black.svg');
  background-repeat: no-repeat;
  background-position: right 8px top 50%, 0 0;
  background-size: 24px auto, 100%;
}

/* Hide arrow icon in IE browsers */
.input-dropdown::-ms-expand {
  display: none;
}

/* Show elements */
.show {
  display: block;
}





























/* reset text link in news */
.wrapper-article-body a:link, .wrapper-article-body a:visited {
  color: #070a23;
  text-decoration: none;
}

/* text link decoration and hover state animation */
/* color settings for black textlink on white background */
.wrapper-article-body a:after {
  background-color: #74F1D6;
}  

/* color settings for black textlink on green background */
.blackongreen:after {
  background-color: #121212;
}

.blackongreen:hover {
  color: white;
}

/* color settings for white textlink on black background */
.whiteonblack:after {
  background-color: #74F1D6;
}  

.whiteonblack:hover {
  color: #070a23;
}    

/* underline settings */
.textlink, .wrapper-article-body a {
  position: relative;
  /* margin: 3px; */
  transition: color .25s;
}  

.textlink:after, .wrapper-article-body a:after {
  content: '';
  position: absolute;
  left:0; bottom : -2px;
  height: 2px;
  width: 100%;
  transition: height .25s;
  z-index: -1;
}

.textlink:hover:after, .wrapper-article-body a:hover:after {
  height: 120%;
}

/* customize select language dropdown ui */
select#lang-select {
  position: realtive;
  z-index: 10;
  padding: 8px 6px;
  border: none;
  color: transparent !important;
  background-color: transparent;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  text-shadow: 0 0 0 #3a3a3a;
  background-color: transparent;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  font-size: 14px;
}

.custom-select:after {
  position: absolute;
  top: calc(50% - 7px);
  right: 13px;
  z-index: 0;
  width: 6px;
  height: 6px;
  border-right: 1px solid #3a3a3a;
  border-bottom: 1px solid #3a3a3a;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  content: "";
}

form.custom-select {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /* border: 1px solid #121212; */
}

/* Article */
figcaption {
  font-size: 12px;
}