@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
}
:root {
  --pri-color: #00A3E0;
  --pri-color-hover: #64caf6;
  --pri-color-light : #e0eef5;
  --bg-color : #F8F8F8;
  --sec-color: #9bdb3f;
  --popup-bg-color:#F8F8F8;
  --black: #1B1B1B;
  --gray:#CCCCCC;
  --gray01: #fafafa;
  --gray02: #F6F6F6;
  --gray03: #E8E8E8;
  --gray04: #E8E8E8;
  --gray05: #6C6C6C;
  --green: #9bdb3f;




  --placeholder: #A6A6A6;
  --blue: #00A3E0;
  --red: #C94C4C;
  --orange: #e58c4a;
  --yellow-hl: #fbbf00;
  --green: #93ca43;

  --btn-pri: #00A3E0;
  --btn-pri-hover: #64caf6;
  --btn-sec: #9bdb3f;

  --alert-bg: #d9eff8;

  --white: #ffffff;
  --white02: #f7f7f7;

  --base-s : 8px;
}
html{
  height: 100%;
  /* font-size: 62.5%; font-size 1em = 10px on default browser settings */
}

body {

  color: #1b1b1b;
  font-family: "Nunito Sans", "Microsoft JhengHei", "PingFang TC", "Source Han Sans TC", "Heiti TC", sans-serif;
  background-color: white;
  font-weight: 400;
  word-wrap: break-word;
  position: relative;
  font-size: 16px;
  line-height: 24px;
  /* letter-spacing: 0.8px; */
  overflow-x: hidden;

  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100,
    "YTLC" 500;
}
/* .zh-Hant body.en-GB{
  letter-spacing: 0.3px;
  font-family: "Roboto", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
} */
html[lang="zh-Hant"] body {
  letter-spacing: 0.3px;
  font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
}

body.zh-CN{
  font-family: "Noto Sans SC", "Microsoft JhengHei", "PingFang TC", "Source Han Sans TC", "Heiti TC", sans-serif;
}
/*body.home{
  overflow: hidden;
}*/
img {
  border-width: 0;
}

img.heightAuto {
  height: auto;
}
object, embed {
  vertical-align: bottom;
}
ul, ul li {
  list-style: none;
}
.s-box:after {
  content: ".";
  height: 0;
  display: block;
  clear: both;
  visibility: hidden;
}
.l-box, .pc-l-box, .tab-l-box {
  float: left;
}

.r-box, .pc-r-box, .tab-r-box {
  float: right;
}

.clearfix:after {
  content: " ";
  visibility: hidden;
  display: block;
  height: 0;
  clear: both;
}

.obtn {
}
.obtnBlk {
  width: 100%;
  height: 100%;
  display: block;
}
:focus{
  outline:none;
}
.hide {
  display: none!important;
}

.v-align{
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  position: relative;
}

@media screen and (min-width:320px) and (max-width:480px) {

}
/*///////////////////////////////////////////////////////////// ANCHOR */

a{
  color: var(--btn-pri);
  text-decoration: none;
}

a:hover {
  color: var(--btn-pri-hover);
  text-decoration: none;
}
a {
  -webkit-tap-highlight-color: transparent;
}

img, a img {
  margin: 0;
  padding: 0;
  border: 0;
  border-style: none;
  text-decoration: none;
  vertical-align: top;
}

a.underline {
  text-decoration: underline;
}

a.iabtn:hover {
  cursor: default !important;
}
.f-white{
  color: var(--white);
}
.f-blue{
  color: var(--pri-color);
}
.f-green{
  color: var(--green);
}
.f-color-pri{
  color: #1b1b1b;
}
.f-red{
  color: var(--red);
}
.f-orange{

}
.f-yellow-hl{
  color: var(--yellow-hl);
}
.f-gray{
  color: #6C6C6C;
}
.f-italic{
  font-style: italic;
}
.f-weight-400{
  font-weight: 400;
}
.f-weight-700{
  font-weight: 700;
}

.o0{
  opacity:0;
  filter: alpha(opacity=0);
  -moz-opacity:0;
}
.o0.active {
  opacity: 1;
  filter: alpha(opacity=100);
  -moz-opacity: 1;
}
.img-wrap{
  overflow: hidden;
}
.img-wrap img{
  width: 100%;
}
.italic{
  font-style: italic;
}
.bdr-top{
  border-top: 1px solid #dddddd;
}
.zoom:hover img{
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}
.zoom-tar:hover img.zoom-item{
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}

.transit-02{
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.transit-05{
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  -webkit-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}
hr.hr-green{
  border-top: 1px solid #4ECCA3;
}
.flex,
.flex-child{
  display: flex;
  display: -ms-flexbox;
  display: -webkit-flex;
  flex-wrap: wrap;
}
.flex.jc-start,
.m-flex.jc-start{
  justify-content: flex-start;
}
.flex-v-center{
  align-items: center;
}
.flex-v-top{
    align-items: flex-start;
}
.flex-h-center{
    justify-content: center;
}
.flex .item{
  flex: 1;
}
.flex.n-col-02 .item,
.flex-child.child-col-02 .item-child{
  width: 50%;
  max-width: 50%;
  flex: 1 0 50%;
}
.wide-hide{
  display: block;
}
.wide-show{
  display: none;
}
.extra-wide-show{
    display: none;
}
.m-w-620{
  max-width: 620px;
  margin: 0 auto;
}
.m-w-650{
  max-width: 650px;
  margin: 0 auto;
}
.m-w-700{
  max-width: 700px;
  margin: 0 auto;
}
.m-w-720{
  max-width: 720px;
  margin: 0 auto;
}
.m-w-1010{
  max-width: 1010px;
  margin: 0 auto;
}
.m-w-1366{
  max-width: 1366px;
  margin: 0 auto;
}
.m-flex.m-col-02 .item.m-w-320{
  max-width: 320px;
}
@media (max-width: 768px){
  .m-flex .item.m-m-w-320{
    max-width: 320px;
    margin:0 auto calc(var(--base-s) * 5);
  }
}
@media (min-width: 768px){
  .m-flex{
    display: flex;
    display: -ms-flexbox;
    display: -webkit-flex;
    flex-wrap: wrap;
  }
  .m-flex.m-col-02 .item{
    max-width: 50%;
    padding:0 calc(var(--base-s) * 2);
    box-sizing: border-box;

  }
}

@media (min-width: 980px){
  .wide-hide{
    display: none;
  }
  .wide-show{
    display: block;
  }
  .f-size-s{
    font-size: 12px;
  }
  .f-size-m{
    font-size: 16px;
    line-height: 26px;
  }
  .f-size-ml{
    font-size: 16px;
    line-height: 26px;
  }
  .f-size-ml2{
    font-size: 18px;
    line-height: 20px;
  }
  .f-size-l{
    font-size: 20px;
    line-height: 28px;
  }
  .f-size-l2{
    font-size: 26px;
    line-height: 36px;
  }
  .f-size-xl{
    font-size: 34px;
    line-height: 44px;
  }
  .f-size-xxxl{
    font-size: 42px;
  }
  .w-flex{
    display: flex;
    display: -ms-flexbox;
    display: -webkit-flex;
    flex-wrap: wrap;
  }
  .pc-reverse{
    flex-direction: row-reverse;
  }
  .pc-reverse-revert-important{
    flex-direction: row!important;
  }
  .flex.w-col-04 .item,
  .m-flex.w-col-04 .item{
    width: 25%;
    max-width: 25%;
    flex: 1 0 25%;
  }
  .flex.w-col-03 .item,
  .m-flex.w-col-03 .item,
  .w-flex.w-col-03 .item{
    min-width: 33.33%;
    max-width: 33.33%;
  }
  .w-flex.w-col-02 .item{
    width: 50%;
    max-width: 50%;
    flex: 1 0 50%;
  }
}
@media (min-width: 1200px){
  .extra-wide-hide{
    display: none;
  }
  .extra-wide-show{
    display: block;
  }
}
#wrap{
  position: relative;
  z-index: 10;
  right: 0;
  text-align: center;
  width: 100%;
  /*min-height: 100%;*/
  /*height: auto !important;
  height: 100%;*/
  background-color: white;
  margin-top: 48px;

}
.content{
  position: relative;
  background-color: white;
  z-index: 10;
}

.bottom-page .content{
  margin-top: 0;
}
footer, .push{
  /*height: 328px;*/
}

/*@font-face{
  font-family: 'DIN';
  src: url('../fonts/DIN-CondensedLight.eot');
  src: url('../fonts/DIN-CondensedLight.eot') format('embedded-opentype'),
       url('../fonts/DIN-CondensedLight.woff2') format('woff2'),
       url('../fonts/DIN-CondensedLight.woff') format('woff'),
       url('../fonts/DIN-CondensedLight.ttf') format('truetype'),
       url('../fonts/DIN-CondensedLight.svg#DIN-CondensedLight') format('svg');
}*/

header{
  /* background-color: white; */
  width: 100%;
  height: 48px;
  line-height: 48px;
  position: fixed;
  top:0;
  left: 0;
  z-index: 900;
  /* box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.32); */
  /*box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.08);*/

/*  background-image: url(../img/common/bg_stripe.jpg);
  background-repeat: repeat-x;
  background-position: left top;

  background-size:auto 3px;
  -moz-background-size:auto 3px;
  -webkit-background-size:auto 3px;
  -o-background-size:auto 3px;
  -ms-background-size:auto 3px; */
}
.bottom-page header,
header.active,
header.mobile-active{
  background-color: white;
  box-shadow: 3px 0px 6px rgba(0, 0, 0, 0.32);
}
header .inner{
  position: relative;
  /* max-width: 1280px; */
  margin:0 auto;
}
header .logo{
  width: 52px;
  margin-left: 16px;
  position: relative;
  z-index: 900;
}
header .logo a{
  width: 145px;
  height: auto;
  margin: 0 auto;
}
header .logo a img{
  top: 16px;
  position: absolute;
  height: 16px;
  width: auto;
}
header .logo a img.logo-blue{
  opacity:0;
  filter: alpha(opacity=0);
  -moz-opacity:0;
}
.bottom-page header .logo a img.logo-blue,
header.active .logo a img.logo-blue{
  opacity:1;
  filter: alpha(opacity=100);
  -moz-opacity:1;

}
.bottom-page header .logo a img.logo-white,
header.active .logo a img.logo-white{
  opacity:0;
  filter: alpha(opacity=0);
  -moz-opacity:0;
}
.bottom-page header nav a.nav-btn i,
.bottom-page header nav a.nav-btn span{
  display: none;
}
header.active nav a.nav-btn i,
header.active nav a.nav-btn span{
  color: #00A2E4;
}
.menu{
  position: absolute;
  z-index: 900;
  top:0;
  right: 0px;
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s;

}

.site-overlay-toggle {
    text-align: center;
    display: block;
    width: 50px;
}
.site-overlay-toggle .btn {
    height: 40px;
}
.btn-ui, .btn-ui:active, .btn-ui:focus, .btn-ui:focus:active {
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.btn-ui {
    padding: 0;
    border: none;
    border-radius: 0;
    background-color: transparent;
}
.site-overlay-toggle .btn {
    display: inline-block;
    margin-bottom: 0;
    text-align: center;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    line-height: 1;
    border-radius: 0px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 22px;
    padding: 7px 10px 0 0;
    box-sizing:border-box;
}
.site-overlay-toggle .btn .bar {
    position: relative;
    margin: 0 auto;
    width: 22px;
    height: 1px;
    background: var(--black);
    -webkit-transition: background-color .3s;
    -o-transition: background-color .3s;
    transition: background-color .3s;
}
.site-overlay-toggle .btn .bar{
    display: inline-block;
    vertical-align: top;
}
.site-overlay-toggle .btn .bar:before {
    -webkit-transform: translate(0,6px);
    -ms-transform: translate(0,6px);
    -o-transform: translate(0,6px);
    transform: translate(0,6px);
}
.site-overlay-toggle .btn .bar:after {
    -webkit-transform: translate(0,-6px);
    -ms-transform: translate(0,-6px);
    -o-transform: translate(0,-6px);
    transform: translate(0,-6px);
}
.site-overlay-toggle .btn .bar:after, .site-overlay-toggle .btn .bar:before {
    content: '';
    position: absolute;
    background: var(--black);
    left: 0;
    top: 0;
    width: 22px;
    height: 1px;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

.is-on .site-overlay-toggle .btn>span {
    background: 0 0;
}
.is-on .site-overlay-toggle .btn >span:before {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.is-on .site-overlay-toggle .btn >span:after {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
nav{
  position: fixed;
  width: 100%;
  top:-900px;
  /* z-index: -10; */
}

nav.ready{
  z-index: 90;
}
nav.active{
  top: 55px!important;
}
nav .mobile-menu{

}
nav .mobile-menu .inner{
  padding: 20px 25px;
  background-color: white;
}
nav .mobile-menu a{
  line-height: 55px;
}
nav .mobile-menu a.pri-btn{
  max-width: 180px;
  margin: 0 auto;
  line-height: 46px;
}
nav .mobile-menu .contact-wrap{
  padding-top: 20px;
  border-top: 1px solid #E3E3E3;
  margin-top: 20px;
}

nav a.current .txt,
nav a.nav-btn:hover .txt{

}
nav a{
  color:#A3A3A3;
  padding-left: 0px;
  padding-right: 0px;
  margin-left: 8px;
  margin-right: 8px;
}
nav .divider{
  width: 1px;
  height: 16px;
  background-color: #A3A3A3;
  display: block;
  align-self: center;
  margin-left: 12px;
  margin-right: 12px;
}
nav a.current,
nav a:hover{
  color: var(--btn-pri);
}
nav a span{
  padding-bottom: 8px;
  /* border-bottom: 1px solid white; */
}
nav a.current span,
nav a:hover span{
  /* border-bottom: 1px solid #4ECCA3; */
}
.waveCanvasFooter{
  display: block;
  width: 100%;
  height: 250px;
}
footer{
  position: relative;
  z-index: 10;
  text-align: center;
}
footer .ftr-lead{
  /* font-size: 18px; */
  font-weight: 600;
  font-size: 24px;
  line-height: 26px;
}
footer p,
footer a{
  color: white;
}
footer a:hover{
  color: var(--pri-color-hover);
}
footer .inner{
  background-color: var(--black);
  position: relative;
  padding: 0 calc(var(--base-s) * 2);
  max-width: 100%;
  box-sizing: border-box;
  margin: -1px auto 0;
}
footer .ftr-btm-conts{
  text-align: center;
  padding-bottom: 3px;
}
footer .sns{
  padding-top: 16px;
  padding-bottom: 18px;
}
footer .sns a{
  width: 42px;
  height: 42px;
  line-height: 42px;
  border-radius:100%;
  border:1px solid #EAEAEA;
  -webkit-border-radius:100%;
  -moz-border-radius:100%;
  background-size:8px auto;
  -moz-background-size:8px auto;
  -webkit-background-size:8px auto;
  -o-background-size:8px auto;
  -ms-background-size:8px auto;
  background-repeat: no-repeat;
  background-position: center center;
  margin-right: 9px;
}
footer .sns a:last-child{
  margin-right: 0;
}
footer .sns .fb{
}
footer .sns .tr{

}
.ftr-ut-wrap{
  /* padding-top: 20px;
  padding-bottom: 25px; */
  /* max-width: 980px; */
  max-width: 100%;
  margin:0 auto;
}
.ftr-ut-wrap .inner{
  background: #333333;
  padding-top: 12px;
  padding-left: 24px;
  padding-right: 24px;
  padding-bottom: 12px;
}
.ftr-ut-link{
  justify-content: center;
  margin-bottom: 8px;
  position: relative;
}
.ftr-ut-link .divider{
  background-color: var(--white);
  width: 2px;
  height: 2px;
  display: inline-block;
  margin-left: 16px;
  margin-right: 16px;
  margin-top: 12px;
  vertical-align: text-top;
  border-radius: 100%;
}
.ftr-ut-link a{
  color: var(--white);
}
footer .logo-partner-wrap{
  width: 100%;
  border-top: 1px solid #f1f1f1;
  margin-right: auto;
  margin-left: auto;
  padding-top: 6px;
  padding-bottom: 6px;
}
footer .logo-partner{
  height: 100%;
  width: 150px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0px;
}
copyright{
  text-align: center;
  color: var(--white);
}
.btm-page-contents{
  padding-top: 50px;
}
.hdr-lang-wrap{
  position: absolute;
  z-index: 999;
  right: 48px;
  top: 0px;
  /* top: -70px; */
  width: 48px;
}
.hdr-lang-wrap .lang-btn{
  color: #A3A3A3;
}
.hdr-lang-wrap .lang-btn img{
  width: 16px;
  height: auto;
  margin-right: calc(var(--base-s)* 0.5);
  margin-top: 21px;
}
.en-GB .hdr-lang-wrap .lang-btn img{
  margin-top: 20px;
}
.hdr-lang-wrap .lang{
  bottom: auto;
  top: 64px;
}
.hdr-lang-wrap .lang .tri{
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 5px 5px 5px;
  border-color: transparent transparent var(--sec-color) transparent;
  transform: rotate(0deg);
}

.float-nav{
  position: absolute;
  z-index: 999;
  right: 16px;
  top: 0px;
  /* top: -70px; */
  width: 170px;
}
.ftr-ut-link .lang-btn img{
  width: 16px;
  height: auto;
  margin-right: calc(var(--base-s) * 0.5);
  margin-top: 6px;
}
.lang{
  position: absolute;
  width: 80px;
  height: 0;
  text-align: center;

  right: 0;
  bottom: 28px;
  overflow: hidden;
}
.lang li{
  background: #4ECDA4;
  height: 40px;
  line-height: 40px;
}
.lang li.tri-li{
  height: 5px;
  background-color: transparent;
}
.lang .tri{
  position: absolute;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #4ECDA4 transparent transparent transparent;
  transform: rotate(0deg);
  display: block;
  left: 50%;
  margin-left: -5px;
}
.lang a{
  width: 100%;
  height: 100%;
  color:white;
  font-weight: 300;
  height: 40px;
  line-height: 40px;
  font-size: 16px;
  margin: 0;
}
.lang a:hover{
  color: white;
  opacity: 0.7;
}

.overlay{
  display: none;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 20;
  background-color: #1F3134;
  opacity:0;
  filter: alpha(opacity=0);
  -moz-opacity:0;
}
.overlay.ready{
  display: block;
}
.overlay.active{
  opacity:0.8;
  filter: alpha(opacity=80);
  -moz-opacity:0.8;
}
.back-to-top-wrap{
  text-align: center;
  background-color: #F8F8F8;
  padding: 17px 0 13px;
}
.back-to-top-wrap a{
    display: block;
    width: 50%;
    margin: 0 auto;
    font-size: 11px;
    line-height: 11px;
    padding-top: 17px;
    padding-bottom: 8px;
    background-image: url(../img/bottom/arrow_b_up02.png);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 13px auto;
    -moz-background-size: 13px auto;
    -webkit-background-size: 13px auto;
    -o-background-size: 13px auto;
    -ms-background-size: 13px auto;
}
.back-to-top.back-to-top-wide{
    display: none;
    opacity:0;
    filter: alpha(opacity=0);
    -moz-opacity:0;
    position: fixed;
    z-index: 9990;
    bottom:100px;
    right:35px;
    width: 70px;
    height: 70px;
    margin-bottom: 0;
    background-image: url(../img/bottom/page_top_btn.png);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 70px auto;
    -moz-background-size: 70px auto;
    -webkit-background-size: 70px auto;
    -o-background-size: 70px auto;
    -ms-background-size: 70px auto;
}
.back-to-top.back-to-top-wide.active{
  display: block;
}
.back-to-top.back-to-top-wide.ready{
  opacity:1;
  filter: alpha(opacity=100);
  -moz-opacity:1;
}


.mobile-nav{
  width: 100%;
  position: fixed;
  right:-2000px;
  font-size: 14px;
  background-color: white;
  border-bottom: 1px solid #efefef;
  text-align: left;
  box-sizing: border-box;
  overflow: scroll;
  top: 48px;
  z-index: -900;
}
.mobile-nav.ready{
  z-index: 800;
}
.mobile-nav.active{
  right:0px!important;
}
.mobile-nav .nav{
  padding-top: calc(var(--base-s) * 1);
  margin-bottom: 32px;
}
.mobile-nav .pri-btn{
  margin: 0 auto;
}
.mobile-nav .nav li{
  /* line-height: 48px; */
  padding-top: ;
  border-bottom: 1px solid #DDDDDD;
}
.mobile-nav .nav li.item-ttl{
  /* background-color: var(--pri-color); */
  padding: 0 calc(var(--base-s)* 2);
  margin-bottom: 0;
  font-size: 16px;
  border-bottom: 0;
}

.mobile-nav .nav li a{
  text-decoration: none;
  padding: calc(var(--base-s) * 1.5) calc(var(--base-s) * 2);
  color: #1b1b1b;
  font-size: 16px;
  -webkit-tap-highlight-color: transparent;
}
.mobile-nav .nav li a i {
    margin-left: auto;
}
.mobile-nav .nav li a:hover,
.mobile-nav .nav li a:active,
.mobile-nav .nav li a.active{
  color: var(--pri-color-hover);
  /* background-color: var(--pri-color-hover); */
}
.mobile-nav .nav li.btn-bdr a{
  border-top: 1px dotted #DEDEDE;
}
.mobile-nav .nav li.btn-bdr:last-child a{
  border-bottom: 1px dotted #DEDEDE;
}
.mobile-nav .nav li.btn-bg a{
  background-color: #4A017D;
}
.mobile-nav .nav li.btn-bg a{
  color: white;
}
.mobile-nav .nav .btm-item{
  border-bottom: 0;
  margin-bottom: calc(var(--base-s) * 2);
}
.mobile-nav .nav .btm-item:nth-child(even) a{
  /* border-left:1px solid #DDDDDD;
  border-bottom:1px solid #DDDDDD; */
}
.mobile-nav .nav .btm-item a{
  flex: 1 0 50%;
  box-sizing: border-box;
}

.mobile-nav .nav.nav-mid{

}


.mobile-nav .nav.nav-btm{
  border-top: 1px dotted #DEDEDE;
  border-bottom: 1px dotted #DEDEDE;
}
.mobile-nav .header-btm-wrap{
  padding: 25px 20px 0;
  text-align: center;
}
.mobile-nav .header-btm-wrap a{
  margin-bottom: 30px;
  color: #4A017D;
}
.mobile-nav .header-btm-wrap a:hover{
  color: #4A017D;
}
header a:hover .circle-plus .circle .vertical,
header a:hover .circle-plus .circle .horizontal,
header .courses.active .circle-plus .circle .vertical,
header .courses.active .circle-plus .circle .horizontal,
.mobile-nav a:hover .circle-plus .circle .vertical,
.mobile-nav a:hover .circle-plus .circle .horizontal {
  /* background-color: white; */
}
header .inner nav ul li .hidden-menu a,
.mobile-nav .nav li .hidden-menu a{
  padding: 0 25px 0 40px;
}
.mobile-nav .circle-plus{
  margin-right: -3px;
}
.mobile-nav .btn-wrap{
  padding: 0;
}

#breadcrumbs{
  width: 100%;
  max-width: 100%;
  height: 36px;
  box-sizing: border-box;
  /* position: absolute; */
  z-index: 29;
  background-color: var(--gray04);
}
#breadcrumbs .breadcrumbs-list{
  width: 100%;
  max-width: 100%;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

#breadcrumbs .inner{
  width: 100%;
  height: 100%;
  max-width: 100%;
  line-height: 36px;
  box-sizing: border-box;
  border-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: calc(var(--base-s) * 3);
  padding-right: calc(var(--base-s) * 3);


}
#breadcrumbs .inner ol,
#breadcrumbs .inner ul{
    list-style: none;
}
#breadcrumbs .inner ol li,
#breadcrumbs .inner ul li{
  /* float: left; */
  display: inline-block;
  line-height: 36px;
  color: var(--black);
}
.page-template-page-how #breadcrumbs .inner ul li,
.page-template-page-how #breadcrumbs .inner ul li a{
  color: white;
}


#breadcrumbs .inner ul li.separator span{
  text-align: center;
  width: 14px;
  height: 40px;
  margin: 0 16px;
  font-size: 12px;
  display: block;
  box-sizing:border-box;
}
#breadcrumbs .inner ol li a,
#breadcrumbs .inner ul li a{
  color: var(--black);
  text-decoration: none;
}
#breadcrumbs .inner ol li a:hover,
#breadcrumbs .inner ul li a:hover{
  opacity: 0.5;
}
.breadcrumbs .separator::after {
    font-family: 'FontAwesome' !important;
    content: '\f105';
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    padding-left: 20px;
    padding-right: 20px;
}
@media (min-width: 980px){
    #breadcrumbs{
      height: 40px;
    }
    #breadcrumbs .breadcrumbs-list{
        font-size: 14px;
    }
    #breadcrumbs .inner{
      line-height: 40px;
    }
    #breadcrumbs .inner ol li,
    #breadcrumbs .inner ul li{
      line-height: 40px;
    }
    /* .bottom-page .breadcrumbs .inner{
        max-width: none;
        padding-left: 32px;
        padding-right: 32px;
    } */
    .mobile-nav .nav li a{
      padding: calc(var(--base-s) * 1.5) calc(var(--base-s) * 2);
    }
    .mobile-nav{
      width: 30%;
      box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.32);
    }

}
footer .form{
  margin-top: calc(var(--base-s) * 0);
}
footer .form dl dd{
  margin-bottom: 0;
}
footer .form dl dd input{
  line-height: 18px;
}
footer .form [type="submit"]{
  width: 120px;
}
footer .form p{
  position: relative;
}
footer .form .wpcf7-spinner{
  position: absolute;
  top: 0;
  margin: 10px -15px;
  left: 50%;
}
.icons-wrap{
  padding:calc(var(--base-s) * 1) 0;
}
footer .icons-wrap{
  padding:calc(var(--base-s) * 3) 0;
}
.icons-wrap a{
  width: 40px;
  height: 40px;
  line-height: 40px;
  max-width: 40px;
  display: inline-block;
  background-color: #2E2E2E;
  border-radius: 100%;
  margin: 0 calc(var(--base-s) * 1);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 40px auto;
  box-sizing: border-box;
  font-size: 16px;
}
footer .icons-wrap a i,
footer .icons-wrap a svg{
  color: var(--white);
}
.icons-wrap a:hover{
  background-color:var(--btn-pri-hover);
}
.icons-wrap .fb{
  background-image: url("../img/common/icon_fb_w.png");
}
.icons-wrap .ln{
  background-image: url("../img/common/icon_li_w.png");
}
.icons-wrap .mail{
  background-image: url("../img/common/icon_mail_w.png");
}
.icons-wrap .yt{
  background-image: url("../img/common/icon_yt_w.png");
}
footer .ftr-nav{
  font-weight: 700;
  background-color: var(--black);
  padding: 0 calc(var(--base-s) * 1);
  padding-bottom: calc(var(--base-s) * 4);
}
footer .ftr-nav a{
  padding-top:calc(var(--base-s) * 1.5);
  padding-bottom:calc(var(--base-s) * 1.5);
  display: block;
  position: relative;
  box-sizing: border-box;
}
footer .ftr-nav .ftr-nav-item{
  border-bottom: 1px dotted var(--white);
}
footer .ftr-nav .ftr-nav-item:first-child{
  border-top: 1px dotted var(--white);
}
footer .ftr-nav .circle-plus{
  position: absolute;
  top: 0;
  right: 0;
}
footer .ftr-nav .circle-plus .circle{

}
footer .ftr-nav.wide-nav{
  padding-top:calc(var(--base-s) * 3);
  padding-bottom:calc(var(--base-s) * 8);
}
footer .ftr-nav.wide-nav .item-ttl{
  margin-bottom: calc(var(--base-s) * 1);
  font-size: 24px;
  line-height: 26px;
}
footer .ftr-nav.wide-nav a{
  padding-top:calc(var(--base-s) * 0);
  padding-bottom:calc(var(--base-s) * 0);
  font-weight: 400;
  margin-bottom: calc(var(--base-s) * 1);
}
footer .ftr-nav.wide-nav .wide-nav-wrap{
  max-width: 1280px;
  margin:0 auto;
}
footer .wpcf7-response-output{
  font-size: 14px;
  line-height: 18px;
}
footer .form-target-area{
  position: relative;
}

@media only screen and (min-width: 768px){
  footer .icons-wrap{

  }
  footer .icons-wrap a{
    width: 48px;
    height: 48px;
    max-width: 48px;
    line-height: 48px;
    margin: 0 calc(var(--base-s) * 1.5);
  }

}
@media only screen and (min-width: 980px){
  nav{
    font-size: 16px;
  }
  .mobile-nav ul{
    padding: calc(var(--base-s) * 1) calc(var(--base-s) * 1);
  }
  footer form,
  footer .form-target-area,
  footer .form dl dd{
    width: 100%;
    margin: 0 auto;
    position: relative;
  }
  footer .form p{
    margin-left: auto;
  }
  footer .form [type="submit"]{
    width: 120px;
    margin-top: 0;
    margin-left: auto;
  }
  footer .ftr-nav{

  }
  footer .ftr-nav.wide-nav .item-ttl{
    margin-bottom: calc(var(--base-s) * 3);
  }
}
.btm-btn{
  position: fixed;
  z-index: 900;
  bottom: 24px;
  right: 30px;
  width: 170px;
}
.nav-btn-wrap{
  width: 90%;
  max-width: 380px;
  margin: 0 auto;
}
.nav-btn-wrap .item{
  width: 50%;
  box-sizing: border-box;
  padding-left: 12px;
  padding-right: 12px;
}
@media (min-width: 980px){
  #wrap{
    /*min-height: 100%;*/
  }
  .content{
    margin-top: 80px;
  }
  .bottom-page .content{
    margin-top: 80px;
  }
  .bottom-page.single .content{
    padding-bottom: 90px;
  }
  .site-overlay-toggle{
    width: 60px;
    box-sizing: border-box;
    padding-right: 12px;
  }
  footer{
    background-size: auto 6px;
    -moz-background-size: auto 6px;
    -webkit-background-size: auto 6px;
    -o-background-size: auto 6px;
    -ms-background-size: auto 6px;
  }
  footer .btm-logo{
    width: 80px;
    margin: 0 auto 44px;
  }
  footer .ftr-cols{
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 50px;
  }
  footer .inner{
    padding: 0 calc(var(--base-s)* 3);
  }
  footer .ftr-nav{
    padding-left:calc(var(--base-s) * 3);
    padding-right:calc(var(--base-s) * 3);
  }

  footer .ftr-nav a{
    padding-top:calc(var(--base-s) * 2);
    padding-bottom:calc(var(--base-s) * 2);
  }
  footer .col{
    flex: 1 0 25%;
    margin-bottom: 0;
  }
  footer .col .ttl{
    font-size: 13px;
  }
  footer .col a{
    font-size: 12px;
  }
  footer .ftr-btm-conts{

  }
  footer .ftr-ut-wrap copyright{

  }
  footer .sns{
    padding-top: 24px;
    padding-bottom: 24px;
  }
  footer .sns a{
    margin-right: 20px;
  }
  .hdr-lang-wrap{
    right: 158px;
    width: 48px;
  }
  .hdr-lang-wrap .lang-btn:hover{
    color: var(--sec-color);
  }
  .hdr-lang-wrap .lang-btn img{
    margin-top: 38px;
  }
  .en-GB .hdr-lang-wrap .lang-btn img{
    margin-top: 37px;
  }

  header{
    height: 80px;
    line-height: 80px;
  }
  header .logo{
    width: 180px;
    position: absolute;
    margin-left: 0;
    /* margin: 0 0 0 30px; */
  }
  header .logo a img{
    height: 24px;
    top:28px;
    margin-left: 24px;
  }
  header .logo a{
    width: 270px;
  }
  .float-nav{
    width: 160px;
    top: 18px;
    right: 132px;
  }
  header .flex a.pri-btn,
  header .flex a.sec-btn{
    line-height: 44px;
    height: 44px;
    max-width: 160px;
    width: 160px;
    text-align: center;
    margin-right: 20px;


  }
  header .flex a.pri-btn:hover{
  }
  header .flex a.pri-btn:last-child{
    margin-right: 0;
  }

  #wrap{
    margin-top: 0;
    /*margin-top: 90px;*/

  }

  nav{
    width: calc(100% - 350%);
    position: absolute;
    z-index: 10;
    top:0;
    right: calc(80px + 60px + 160px + 8px);
    width: auto;
  }
  nav a{
    letter-spacing: 0px;
  }
  nav a.nav-btn{
    margin-right: 40px;
  }
  nav a.nav-btn i{
    margin-right: 10px;
  }
  nav .pri-btn{
  }

  footer .logo-partner-wrap{
    border-top: 0px;
    width: 206px;
    margin-left: 60px;
  }
  footer .logo-partner{
    height: 100%;
    border-left: 1px solid #f1f1f1;
    padding-left: 60px;
  }
  .btm-page-contents{
    padding-top: 50px;
  }
  footer .ftr-ut-wrap copyright{
    margin-left: auto;
  }
  .mobile-nav{
    top:80px;
  }

}
@media (min-width: 1180px){


  header .logo{
    /* width: 120px;
    margin: 0 0 0 30px; */
  }

  .hdr-lang-wrap{
    right: 220px;
    width: 48px;
  }
  nav a{
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media (min-width: 1180px){

}
/* Button positioning – tweak to match your header layout */
.lang-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 48px;
  border: 0; background: transparent; color: inherit; cursor: pointer;
  position: absolute;
  top:0;
  right: 50px;
}

/* Icon swap animation */
.lang-toggle .icon {
  position: absolute;
  transition: opacity .25s ease, transform .25s ease;
}
.lang-toggle .icon-earth { opacity: 1; transform: rotate(0deg) scale(1); }
.lang-toggle .icon-close { opacity: 0; transform: rotate(-90deg) scale(.8); }

.lang-toggle.is-active .icon-earth { opacity: 0; transform: rotate(90deg) scale(.8); }
.lang-toggle.is-active .icon-close { opacity: 1; transform: rotate(0deg) scale(1); }

/* Slide-in drawer from the right */
.lang-drawer {
  position: fixed;
  inset: 0 0 0 auto;
  /* width: min(320px, 90vw); */
  transform: translateX(100%);
  transition: transform .3s ease;
  background: #fff; color: #111;
  z-index: 800;
  top:48px;
  width: 160px;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.32);
}
.lang-drawer.is-open { transform: translateX(0); }

.lang-drawer__inner {
  padding: calc(var(--base-s) * 2) 0;
}
.lang-menu {
    position: relative;
    top: auto;
    right: auto;
}
.lang-link {
  display: block;
  padding: calc(var(--base-s) * 1.5) calc(var(--base-s) * 2);
  color: var(--black);
}
.lang-link:hover {}

/* Backdrop */
.lang-backdrop {
  position: fixed; inset: 0; background: rgba(0,0,0,.35); z-index: 999;
  opacity: 0; transition: opacity .3s ease;
}
.lang-backdrop.is-open { opacity: 1; }
@media (min-width: 980px){
  .lang-toggle {
    width: 60px;
    height: 80px;
    top:0;
    right: 60px;
  }
  .lang-drawer {
    top:80px;
  }
}
