.bg-grey-color {
  background-color: #f6f6f6; }

.bg-deep-grey-color {
  background-color: #b2b2b2; }

.position-static {
  position: static; }

.txt-align-center {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-size: 1.5em; }

.text-align-right {
  text-align: right; }

.inline-block {
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 30px); }

.block-link {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.width-auto {
  width: auto; }

.img-wrap-width-auto img {
  width: auto; }

.img-wrap-vertical-center img {
  vertical-align: middle; }

.vcenter {
  vertical-align: middle; }

html, body {
  /*for iphone*/
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-family: 'Microsoft JhengHei', 'Microsoft YaHei'; }

body {
  padding-top: 114px; }

img {
  vertical-align: top;
  width: 100%; }

.-row,
.container {
  width: 100%;
  max-width: 1470px;
  margin: auto; }

@media only screen and (min-width: 992px) {
  body {
    padding-top: 208px; }
  .txt-align-center {
    font-size: 3.75em; } }

@media only screen and (min-width: 1273px) {
  body {
    padding-top: 130px; } }

.-nav-container .in {
  /* overflow-y: hidden; */
  max-height: 100vh;
  padding-bottom: 70px; }

.-nav-container .dropdown-toggle::after {
  border: none; }

.-nav-container.bg-light {
  background-color: #ffffff !important;
  box-shadow: 0 1px 50px #aaa; }

.-nav-container .min-height {
  min-height: 98px; }

.-nav-container a {
  display: block;
  color: #666666; }

.-nav-container .nav-other-link a {
  color: rgba(0, 0, 0, 0.5);
  display: block;
  text-decoration: none; }

.-nav-container #navbarText .active .nav-link {
  color: #3d9fcb; }

.-nav-container .nav-link {
  display: inline-block;
  position: relative; }

.-nav-container .-nav-underline {
  position: absolute;
  width: 100%;
  border-bottom: 2px solid #3d9fcb;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0; }

.-nav-container .horizontal {
  width: 100%;
  padding: 20px 50px; }

.-nav-container .dropdown-menu {
  border: none;
  border-radius: 0;
  background-color: #eeeeee; }

.-nav-container .login-status {
  display: inline-block;
  position: relative;
  margin-top: 6px;
  padding-right: 1rem;
  padding-left: 1rem; }
  .-nav-container .login-status:not(:first-of-type)::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -2px;
    height: 20px;
    border-right: 1px solid #cccccc;
    -webkit-transform: translate(0,-50%);
    -moz-transform: translate(0,-50%);
    -ms-transform: translate(0,-50%);
    -o-transform: translate(0,-50%);
    transform: translate(0,-50%);
 }

.-nav-container .search-form {
  margin: 20px 0; }

.-nav-container .-nav-logo {
  width: 210px; }

@media only screen and (min-width: 600px) {
  .-nav-container .-nav-logo {
    width: auto; } }

@media only screen and (min-width: 992px) {
  .-nav-container {
    width: 100%;
    max-width: 1920px;
    color: #666;
    margin: auto;
    padding: 1rem 0.5rem; }
    .-nav-container .in {
      overflow-y: initial;
      max-height: initial;
      padding-bottom: 0; }
    .-nav-container .container {
      flex-wrap: wrap;
      position: relative; }
    .-nav-container a {
      color: #666666; }
    .-nav-container .navbar-nav {
      order: 1; }
    .-nav-container .login-status {
      order: 2; }
    .-nav-container .navbar-nav .nav-link {
      display: block;
      position: relative;
      margin-top: 6px;
      padding-right: 1rem;
      padding-left: 1rem; }
    .-nav-container .navbar-nav .nav-item:not(:nth-last-of-type(1)) .nav-link::after {
      content: "";
      position: absolute;
      top: 10px;
      right: -2px;
      height: 20px;
      border-right: 1px solid #cccccc; }
    .-nav-container .-nav-underline {
      width: calc(100% - 30px); }
    /* .-nav-container .horizontal .col a {
      vertical-align: middle;
      display: inline-block;
      width: 45%;
      margin: 7px 0; } */
      .-nav-container .horizontal .col a:hover {
        text-decoration: none;
        color: #3d9fcb; }
    /* .-nav-container.navbar-expand-lg .navbar-nav .dropdown-menu.horizontal img {
      width: 50%;
      display: inline-block;
      vertical-align: middle; } */
    .-nav-container .search-form {
      order: 3; } }

@media only screen and (min-width: 1260px) {
  .-nav-container {
    flex-wrap: nowrap; } }

.aside .col-wrap {
  background-color: #ffffff;
  box-shadow: 0 0 5px #cccccc; 
}

.sideMenu{
  list-style:none;
  margin:0;
  padding:30px 0;
}

.sideMenu li{
  display: block;
  padding: 15px 20px;
  color: #666666;
  text-decoration: none;
  font-size: 1.125em; 
}

/* .sideMenu li a{
  color: #666666;
} */

.sideMenu li:not(.sideMenu_title):hover {
  background-color: #fff9f6;
}

.sideMenu li:not(.sideMenu_title):hover a{
  color: #ef9222; 
}


.sideMenu li.sideMenu_title {
  font-weight: bold;
  padding: 30px 20px 0;
  color:#212529;
}

.sideMenu li.sideMenu_other{
  font-weight: bold;
}

.sideMenu li:first-child{
  padding:0 20px;
}

/* .aside a {
  display: block;
  padding: 15px 20px;
  color: #666666;
  text-decoration: none;
  font-size: 1.125em; }
  .aside a:hover {
    background-color: #fff9f6;
    color: #ef9222; }

.aside .aside-other-link a {
  padding: 15px 20px; }

.aside .aside-other-link .section {
  padding: 0; } */

.planet {
  background-color: #fff;
  margin: 0;
  margin-bottom: 1.25em;
  padding: 1.25em; }
  .planet img {
    width: auto;
    vertical-align: middle; }
  .planet a {
    text-decoration: none;
    color: black;
    margin-right: 0.625em; }
  .planet .p-ttl {
    color: #3d9fcb;
    font-size: 1.375em;
    margin-bottom: 1rem; }

footer {
  padding: 10px;
  text-align: center; }
  footer img {
    width: auto; }
  footer .row div:nth-of-type(1) {
    margin: 10px; }
  footer .row {
    align-items: center; }
  footer a {
    color: #ffffff;
    display: inline-block;
    padding: 0 10px; }
    footer a:hover {
      text-decoration: none;
      color: #fff; }
    footer a:not(:nth-last-of-type(1)) {
      border-right: 1px solid #ffffff; }
  footer .footer-link {
    position: relative;
    text-align: center; }
  footer .footer-link a:not(:nth-last-of-type(1)) {
    display: none; }

@media only screen and (min-width: 992px) {
  footer {
    text-align: left; }
    footer .footer-link {
      text-align: right; }
    footer .footer-link a:not(:nth-last-of-type(1)) {
      display: inline-block; } }

/* .bg-grey-color{
  background-color: $bg-grey-color;
}

.bg-deep-grey-color{
  background-color: $bg-deep-grey-color;
}

.position-static{
  position:static;
}

.txt-align-center{
  display:block;
  position:absolute;
  top:50%;
  left:50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-size: 1.5em;
}

.text-align-right{
  text-align:right;
}

.inline-block{
  display:inline-block;
  vertical-align: top;
  width:calc(100% - 30px);
}

.block-link{
  display: block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

.width-auto{
  width:auto;
}

.img-wrap-width-auto img{
  width: auto;
}

.img-wrap-vertical-center img{
  vertical-align: middle;
}

.vcenter{
  vertical-align: middle;
} */
/* @mixin -header-col-line {
  content: "";
  position: absolute;
  top: 10px;
  right: -2px;
  height: 20px;
  border-right: 1px solid $light-grey;
}

@mixin -header-col{
  position: relative;
  margin-top: 6px;
  padding-right: 1rem;
  padding-left: 1rem;
} */
/* html, body {
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  font-size:100%;
  font-family: 'Microsoft JhengHei', 'Microsoft YaHei';
}

body{
  padding-top: 114px;
}

img{
  vertical-align:top;
  width:100%;
} */
.page-top-banner {
  position: relative;
  color: #ffffff;
  font-size: 1em; }

/* .-row,
.container{
  width:100%;
  max-width:$boundary;
  margin:auto;
} */
/* .-nav-container{

  .in{
    overflow-y: auto;
    max-height: 100vh;
    padding-bottom: 70px;
  }
  
  .dropdown-toggle::after {
    border:none;
  }

  &.bg-light{
    background-color: #ffffff !important;
    box-shadow: 0 1px 50px #aaa;
  }

  .min-height{
    min-height: 98px;
  }

  a{
    display:block;
    color:$grey;
  }

  .nav-other-link a{
    color:rgba(0,0,0,.5);
    display: block;
    text-decoration:none;
  }

  #navbarText .active .nav-link{
    color:$blue;
  }

  .nav-link{
    display: inline-block;
    position: relative;
  }

  .-nav-underline{
    position: absolute;
    width: 100%;
    border-bottom: 2px solid $blue;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
  }

  .horizontal{
    width: 100%;
    padding:20px 50px;
  }

  .dropdown-menu{
    border: none;
    border-radius: 0;
    background-color: #eeeeee;
  }

  .login-status{
    display: inline-block;
    @include -header-col;
    &:nth-of-type(1)::after{
      @include -header-col-line;
      top:0;
    }
  }
} */
/* .search-form{
  margin: 20px 0;
} */
.-idx-course-featuer {
  max-width: 860px;
  text-align: center;
  padding: 20px 0;
  position: relative; }
  .-idx-course-featuer .col {
    text-align: center; }
  .-idx-course-featuer img {
    /* width: auto;  */
    width:180px;
  }
  .-idx-course-featuer .-icf-title {
    color: #ef9222;
    font-size: 1.75rem;
    margin-bottom: 0.6em;
    text-align: center; }
  .-idx-course-featuer .-icf-sub-title {
    color: #3d9fcb;
    font-size: 1.375em;
    margin-top: 1.2rem;
    margin-bottom: 0.5rem; }
  .-idx-course-featuer .swiper-button-prev {
    left: 0;
    background-image: none;
    outline: none; }
  .-idx-course-featuer .swiper-button-next {
    right: 0;
    background-image: none;
    outline: none; }

.idx-course-overview {
  text-align: center;
  padding: 20px 0; }
  .idx-course-overview .-ico-title {
    color: #ef9222;
    font-size: 1.75rem;
    margin-bottom: 0.6em;
    text-align: center; }
  .idx-course-overview .ico-book {
    display: block;
    width: 50%;
    float: left;
    padding: 5px;
    box-sizing: border-box;
    color: black;
    text-decoration: none; }

/* footer{
  padding:10px;
  text-align:center;

  img {
    width:auto;
  }

  .row div:nth-of-type(1){
    margin:10px;
  }

  .row{
    align-items: center;
  }

  a{
    color:#ffffff;
    display:inline-block;
    padding:0 10px;
    &:hover{
      text-decoration: none;
      color:#fff;
    }
    &:not(:nth-last-of-type(1)){
      border-right:1px solid #ffffff;
    }
  }

  .footer-link{
    position: relative;
    text-align:center;
  }

  .footer-link a:not(:nth-last-of-type(1)){
    display:none;
  }
} */
.idx-intr {
  text-align: left;
  padding: 50px 0; }
  .idx-intr > div {
    margin-bottom: 20px; }
  .idx-intr .isa-ttl {
    color: #ef9222;
    font-size: 1.75rem;
    margin-bottom: 0.6em;
    text-align: center; }
  .idx-intr .idx-intr-1 .ii-title {
    background-color: #ff8759; }
  .idx-intr .idx-intr-2 .ii-title {
    background-color: #ffb153; }
  .idx-intr .idx-intr-3 .ii-title {
    background-color: #72da70; }
  .idx-intr .idx-intr-1 > div:not(.ii-bg-color),
  .idx-intr .idx-intr-2 > div:not(.ii-bg-color),
  .idx-intr .idx-intr-3 > div:not(.ii-bg-color) {
    z-index: 2;
    position: relative; }
  .idx-intr .ii-title {
    text-align: center;
    padding: 10px;
    color: #ffffff;
    font-size: 1.375em; }
  .idx-intr .idx-intr-1 .ii-container {
    padding: 20px; }
  .idx-intr .idx-intr-1 .ii-container > div:not(:nth-last-of-type(1)) {
    margin-bottom: 20px; }
  .idx-intr .ii-container {
    background-color: #ffffff; }
  .idx-intr .idx-intr-1 .fa-caret-right {
    color: #ff8759;
    margin-right: 10px; }
  .idx-intr .idx-intr-1 .ii-container > div,
  .idx-intr .idx-intr-2 .ii-content {
    position: relative; }
  .idx-intr .idx-intr-1 .ii-container > div:not(:nth-last-of-type(1)) {
    border-bottom: 1px solid #cccccc;
    padding-bottom: 20px; }
  .idx-intr .idx-intr-1 .ii-sub-title {
    color: #cccccc; }
  .idx-intr .idx-intr-1 .ii-content,
  .idx-intr .idx-intr-2 .ii-content {
    font-size: 1.125em; }
  .idx-intr .idx-intr-2 .ii-content {
    margin-bottom: 20px; }
  .idx-intr .idx-intr-2 img {
    width: auto; }
  .idx-intr .idx-intr-2 .fa-caret-right {
    color: #ffb153;
    margin-right: 10px; }
  .idx-intr .idx-intr-2 .row {
    align-items: center; }
  .idx-intr .idx-intr-2 .col {
    padding-bottom: 10px; }
  .idx-intr .idx-intr-2 .ii-content::after {
    content: "";
    position: absolute;
    border-bottom: 1px solid #cccccc;
    width: calc(100% - 147px);
    left: 127px;
    bottom: 0; }
  .idx-intr .ii-bg-color {
    position: absolute;
    background-color: #fff;
    top: 0;
    left: 15px;
    width: calc(100% - 30px);
    height: 100%;
    box-shadow: 0 0 10px #666;
    z-index: 1; }

/* overview page */
.ov-container {
  padding-top: 20px;
  padding-bottom: 20px; }
  .ov-container > .row > div {
    margin-bottom: 30px; }
  .ov-container .col-wrap {
    background-color: #ffffff;
    height: 100%;
    box-shadow: 0 0 8px #cccccc; }
  .ov-container .col-wrap.red {
    background: -webkit-linear-gradient(left, white, white 50%, #fff9f6 50%, #fff9f6); }
    .ov-container .col-wrap.red .ov-title {
      background-color: #ff8759; }
    .ov-container .col-wrap.red .ov-section {
      background-color: #ffbc9c; }
    .ov-container .col-wrap.red .ov-section-ttl {
      color: #ff8759; }
  .ov-container .col-wrap.orange {
    background: -webkit-linear-gradient(left, white, white 50%, #fff9f6 50%, #fff9f6); }
    .ov-container .col-wrap.orange .ov-title {
      background-color: #ffb153; }
    .ov-container .col-wrap.orange .ov-section {
      background-color: #ffd39a; }
    .ov-container .col-wrap.orange .ov-section-ttl {
      color: #ffb153; }
  .ov-container .col-wrap.yellow {
    background: -webkit-linear-gradient(left, white, white 50%, #fffdf6 50%, #fffdf6); }
    .ov-container .col-wrap.yellow .ov-title {
      background-color: #ffd00d; }
    .ov-container .col-wrap.yellow .ov-section {
      background-color: #ffed93; }
    .ov-container .col-wrap.yellow .ov-section-ttl {
      color: #e1bd1a; }
  .ov-container .col-wrap.green {
    background: -webkit-linear-gradient(left, white, white 50%, #f8fff7 50%, #f8fff7); }
    .ov-container .col-wrap.green .ov-title {
      background-color: #72da70; }
    .ov-container .col-wrap.green .ov-section {
      background-color: #b7f6af; }
    .ov-container .col-wrap.green .ov-section-ttl {
      color: #72da70; }
  .ov-container .col-wrap.blue {
    background: -webkit-linear-gradient(left, white, white 50%, #f4fafc 50%, #f4fafc); }
    .ov-container .col-wrap.blue .ov-title {
      background-color: #50b8f0; }
    .ov-container .col-wrap.blue .ov-section {
      background-color: #9ce0fc; }
    .ov-container .col-wrap.blue .ov-section-ttl {
      color: #50b8f0; }
  .ov-container .col-wrap.purple {
    background: -webkit-linear-gradient(left, white, white 50%, #faf9ff 50%, #faf9ff); }
    .ov-container .col-wrap.purple .ov-title {
      background-color: #7a69d3; }
    .ov-container .col-wrap.purple .ov-section {
      background-color: #c5bcff; }
    .ov-container .col-wrap.purple .ov-section-ttl {
      color: #7a69d3; }
  .ov-container > a {
    display: block;
    color: #666666; }
  .ov-container .ov-title {
    text-align: center;
    padding: 10px;
    color: #ffffff;
    font-size: 1.75em; }
  .ov-container .ov-section-ttl {
    margin-top: 20px;
    font-size: 1.125em;
    padding: 0 20px; }
  .ov-container .ov-section-list {
    margin: 0; }
  .ov-container .ov-section .inline-block {
    position: relative;
    font-size: 1.375em;
    padding: 10px 20px;
    width: 50%; }
  .ov-container .ov-section .inline-block:nth-of-type(1)::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 25%;
    height: 50%;
    border-right: 1px solid #ffffff; }

.section-selector {
  width: 100%;
  padding: 10px;
  margin-bottom: 1.25em; }

/* .prove */
.prove > div {
  margin-bottom: 20px; }

.prove .circle-shape {
  overflow: hidden;
  width: 130px;
  height: 130px;
  border-radius: 50%; }

.prove .circle-shape img {
  width: 100%; }

.prove .prove-ttl {
  font-size: 1.125em;
  font-weight: bold; }

/* .intr-books */
.intr-books {
  align-items: center;
  margin-bottom: 20px; }
  .intr-books .row {
    margin-bottom: 1.25em; }
  .intr-books .b-ttl {
    font-size: 1.125em;
    color: #ef9222; }
  .intr-books .col-line {
    border-right: none; }
  .intr-books .book-desc {
    margin-top: 1.25em; }

/* .re-html-page */
.re-html-page .inline-block {
  width: auto;
  vertical-align: middle; }

.re-html-page .ttl {
  color: #ef9222;
  font-size: 1.125em; }

.re-html-page .subttl {
  color: #666666; }

/* .page-container */
.page-container {
  padding-top: 40px;
  padding-bottom: 40px;
  min-height: 400px;
  /* .aside{
    .col-wrap{
      background-color:#ffffff;
      box-shadow: 0 0 5px $light-grey;
    }

    .section{
      font-size: $f18;
      font-weight: bold;
      padding: 30px 20px 0;
    }

    a {
      display: block;
      padding: 15px 20px;
      color:$grey;
      text-decoration:none;
      font-size:$f18;
      &:hover{
        background-color: $ll-red;
        color: $orange;
      }
    }
    .aside-other-link a{
      padding: 15px 20px;
    }
    .aside-other-link .section{
      padding: 0;
    }
  } */
  /* .planet{
    background-color: #fff;
    margin:0;
    margin-bottom: $space;
    padding: $space;

    img{
      width: auto;
      vertical-align: middle;
    }

    a{
      text-decoration: none;
      color:black;
      margin-right: $half-space;
    }

    .p-ttl{
      color:$blue;
      font-size: 1.375em;
      margin-bottom: 1rem;
    }
  } */ }
  .page-container .subtitle {
    background-color: #f2e1c4;
    color: #c0592e;
    font-size: 1.5em;
    padding: 0.625em 1.25em;
    margin-bottom: 20px;
    font-weight: bolder; }
  .page-container .column-5 a {
    display: block;
    float: left;
    width: 20%;
    min-width: 140px; }
  .page-container .column-5::after {
    content: "";
    display: block;
    clear: left; }

/* @media only screen and (min-width:600px){
  .-nav-logo{
    width:auto;
  }
} */
@media only screen and (min-width: 768px) {
  .-idx-course-featuer .col {
    text-align: left; }
  .intr-books .book-desc {
    margin-top: 0; }
  .intr-books .col-line {
    border-right: 1px solid #cccccc; } }

@media only screen and (min-width: 992px) {
  /* body{
    padding-top: 208px;
  }

  .txt-align-center{
    font-size: 3.75em;
  } */
  /* .-nav-container{
    width: 100%;
    max-width:1920px;
    color:#666;
    margin: auto;
    padding: 1rem 0.5rem;

    .in{
      overflow-y: initial;
      max-height: initial;
      padding-bottom: 0;
    }
    .container{
      flex-wrap: wrap;
      position:relative;
    }
    a {
      color:$grey;
    }

    .navbar-nav{
      order:1;
    }

    .login-status{
      order:2;
    }
  
    .navbar-nav .nav-link{
      display: block;
      @include -header-col;
    }
  
    .navbar-nav .nav-item:not(:nth-last-of-type(1)) .nav-link::after{
      @include -header-col-line;
    }
  
    .-nav-underline{
      width: calc(100% - 30px);
    }
  
    & .horizontal .col a{
      vertical-align: middle;
      display: inline-block;
      width: 45%;
      margin: 7px 0;
      &:hover{
        text-decoration:none;
        color:$blue;
      }
    }
  
    &.navbar-expand-lg .navbar-nav .dropdown-menu.horizontal img{
      width: 50%;
      display: inline-block;
      vertical-align: middle;
    }

    .search-form{
      order:3;
    }
  } */
  /* footer{
    text-align:left;
    .footer-link{
      text-align:right;
    }
    .footer-link a:not(:nth-last-of-type(1)){
      display: inline-block;
    }
  }
  .-idx-course-featuer{
    .swiper-button-prev{
      left:-50px;
    }

    .swiper-button-next{
      right:-50px;
    }
  } */ }

@media only screen and (min-width: 1260px) {
  /* body{
    padding-top: 130px;
  } */
  /*   .-nav-container{
    flex-wrap:nowrap;
  } */ }
