* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 2vw;
}
@media all and (min-width: 769px) {
  html {
    font-size: 1vw;
  }
}
@media all and (min-width: 1600px) {
  html {
    font-size: 16px;
  }
}

img {
  display: block;
  width: 100%;
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

.floatL {
  float: left;
}

.floatR {
  float: right;
}

.dt {
  display: none;
}

.mb {
  display: block;
}

@media all and (min-width: 769px) {
  .dt {
    display: block;
  }

  .mb {
    display: none;
  }
}
.sans {
  font-family: "Noto Sans TC", sans-serif;
}

.serif {
  font-family: "Noto Serif TC", serif;
}

.circle {
  text-align: center !important;
  font-size: 2.5rem;
  display: inline-block;
  margin-left: 2%;
  border-radius: 99em;
  background-color: #fff;
  width: 7vw;
  height: 7vw;
  line-height: 7vw;
  color: #f58832;
  vertical-align: middle;
  font-family: Arial, Helvetica, sans-serif;
}
@media all and (min-width: 769px) {
  .circle {
    width: 4vw;
    height: 4vw;
    line-height: 4vw;
  }
}
.circle.purple {
  background-color: #331b23;
  color: #fff;
}
.circle.margin-right {
  margin: 0 2% 0 0;
}

body[page=teach] {
  font-family: "Noto Sans TC", sans-serif;
  letter-spacing: 0;
  line-height: 1;
  letter-spacing: 0.1rem;
}
body[page=teach] > * .inner {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}
body[page=teach] .logo .inner .logo_img {
  margin: 0 auto;
  width: 35.9375%;
}
@media all and (min-width: 769px) {
  body[page=teach] .logo .inner .logo_img {
    width: 11.9791666667%;
  }
}
body[page=teach] > * .inner {
  text-align: center;
}
body[page=teach] > * .inner .txt_open {
  font-size: 2em;
  line-height: 1.5;
}
@media all and (min-width: 769px) {
  body[page=teach] > * .inner .txt_open {
    font-weight: 600;
  }
}
body[page=teach] > * .inner .txt_title {
  font-weight: 600;
  font-size: 4.5em;
  line-height: 1.5;
}
body[page=teach] > * .inner .txt_title span {
  display: block;
}
@media all and (min-width: 769px) {
  body[page=teach] > * .inner .txt_title span {
    display: inline;
  }
}
body[page=teach] > * .inner .txt_content {
  margin-top: 4%;
  font-size: 1.9em;
  line-height: 1.6;
}
@media all and (min-width: 769px) {
  body[page=teach] > * .inner .txt_content {
    margin-top: 3.5%;
    font-size: 1.6em;
    line-height: 2;
  }
}
body[page=teach] .top {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(70%, #f58832), to(#be6a27));
  background-image: linear-gradient(#f58832 70%, #be6a27 100%);
}
body[page=teach] .top .inner {
  padding: 20% 0 50%;
  color: #fff;
  background: url("../img/teach/top_bg-mb.png") center bottom no-repeat;
  background-size: 100%;
}
@media all and (min-width: 769px) {
  body[page=teach] .top .inner {
    padding: 11% 0 22%;
    background: url("../img/teach/top_bg-dt.png") center bottom no-repeat;
    background-size: 100%;
  }
}
body[page=teach] .how {
  background-color: #ffede3;
}
body[page=teach] .how .inner {
  padding: 20% 0 25%;
  color: #331b23;
}
@media all and (min-width: 769px) {
  body[page=teach] .how .inner {
    padding: 7% 0 5%;
  }
}
body[page=teach] .how .inner .txt_content {
  margin-top: 5%;
  line-height: 1.6;
}
@media all and (min-width: 769px) {
  body[page=teach] .how .inner .txt_content {
    margin-top: 3.5%;
    line-height: 2;
  }
}
body[page=teach] .step .title {
  text-align: center;
  font-size: 4.5rem;
  line-height: 2.3;
  background-color: #331b23;
  color: #fff;
}
body[page=teach] .step .inner .step_container .step_item {
  position: relative;
  margin-top: 10%;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item {
    margin-top: 8%;
  }
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item .item_txt {
    position: absolute;
    text-align: left;
    top: 20%;
    left: 18%;
  }
}
body[page=teach] .step .inner .step_container .step_item .item_txt .item_open {
  font-size: 2rem;
  line-height: 1.7;
}
body[page=teach] .step .inner .step_container .step_item .item_txt .item_caption {
  font-size: 3.5rem;
  margin: 2rem 0;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item .item_txt .item_caption {
    font-size: 2.2rem;
    margin: 1.5rem 0;
  }
}
body[page=teach] .step .inner .step_container .step_item .item_txt .item_content {
  line-height: 1.8;
  font-size: 1.8rem;
  margin-bottom: 1.5rem;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item .item_txt .item_content {
    font-size: 1.5rem;
    margin-bottom: 0;
  }
}
body[page=teach] .step .inner .step_container .step_item .item_txt_6 .circle {
  margin-top: 1rem;
}
body[page=teach] .step .inner .step_container .step_item .item_img {
  visibility: visible;
}
body[page=teach] .step .inner .step_container .step_item .item_img.item_img_1 {
  padding-top: 87.5%;
  background: url("../img/teach/step_1-mb.png") center center no-repeat;
  background-size: cover;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item .item_img.item_img_1 {
    padding-top: 36.25%;
    background: url("../img/teach/step_1-dt.png") center center no-repeat;
    background-size: cover;
  }
}
body[page=teach] .step .inner .step_container .step_item .item_img.item_img_2 {
  padding-top: 216.5625%;
  background: url("../img/teach/step_2-mb.png") center center no-repeat;
  background-size: cover;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item .item_img.item_img_2 {
    padding-top: 36.25%;
    background: url("../img/teach/step_2-dt.png") center center no-repeat;
    background-size: cover;
  }
}
body[page=teach] .step .inner .step_container .step_item .item_img.item_img_3 {
  padding-top: 113.75%;
  background: url("../img/teach/step_3-mb.png") center center no-repeat;
  background-size: cover;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item .item_img.item_img_3 {
    padding-top: 36.25%;
    background: url("../img/teach/step_3-dt.png") center center no-repeat;
    background-size: cover;
  }
}
body[page=teach] .step .inner .step_container .step_item .item_img.item_img_4 {
  padding-top: 100.625%;
  background: url("../img/teach/step_4-mb.png") center center no-repeat;
  background-size: cover;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item .item_img.item_img_4 {
    padding-top: 36.25%;
    background: url("../img/teach/step_4-dt.png") center center no-repeat;
    background-size: cover;
  }
}
body[page=teach] .step .inner .step_container .step_item .item_img.item_img_5 {
  padding-top: 71.875%;
  background: url("../img/teach/step_5-mb.png") center center no-repeat;
  background-size: cover;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item .item_img.item_img_5 {
    padding-top: 36.25%;
    background: url("../img/teach/step_5-dt.png") center center no-repeat;
    background-size: cover;
  }
}
body[page=teach] .step .inner .step_container .step_item .item_img.item_img_6 {
  padding-top: 70.3125%;
  background: url("../img/teach/step_6-mb.png") center center no-repeat;
  background-size: cover;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item .item_img.item_img_6 {
    padding-top: 36.25%;
    background: url("../img/teach/step_6-dt.png") center center no-repeat;
    background-size: cover;
  }
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item:nth-child(2n) .item_txt {
    left: 60%;
  }
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item:nth-child(5) .item_txt {
    left: 13%;
  }
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .step_item:nth-child(6) .item_txt {
    width: 17%;
    left: 60%;
  }
  body[page=teach] .step .inner .step_container .step_item:nth-child(6) .item_txt .item_caption {
    width: 100%;
  }
}
body[page=teach] .step .inner .step_container .step_item:first-child {
  margin-top: 0%;
}
body[page=teach] .step .inner .step_container .tips {
  padding: 5% 0;
  text-align: center;
  line-height: 1.5;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .tips {
    padding: 2% 0 7%;
    font-size: 1.5rem;
  }
}
body[page=teach] .step .inner .step_container .tips span {
  display: block;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container .tips span {
    display: inline;
  }
}
body[page=teach] .step .inner .step_container {
  margin: 10% 0;
}
@media all and (min-width: 769px) {
  body[page=teach] .step .inner .step_container {
    margin: 4% 0;
  }
}
body[page=teach] .QA {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(80%, #331b23), color-stop(90%, #6d3b27));
  background-image: linear-gradient(#331b23 80%, #6d3b27 90%);
  background: url("../img/teach/qa_bg-mb.png") center top no-repeat;
  background-size: 100%;
  background-color: #331b23;
}
@media all and (min-width: 769px) {
  body[page=teach] .QA {
    background: url("../img/teach/qa_bg-dt.png") center top no-repeat;
    background-size: 100%;
    background-color: #331b23;
  }
}
body[page=teach] .QA .inner {
  padding: 20% 0;
}
@media all and (min-width: 769px) {
  body[page=teach] .QA .inner {
    padding: 15% 0;
  }
}
body[page=teach] .QA .inner .title {
  color: #f58832;
  font-size: 3.5rem;
}
body[page=teach] .QA .inner .title div {
  font-size: 2rem;
  margin-top: 2%;
}
body[page=teach] .QA .inner .list {
  width: 84%;
  margin: 13% auto 0;
}
@media all and (min-width: 769px) {
  body[page=teach] .QA .inner .list {
    width: 50%;
    margin: 8% auto 0;
  }
}
body[page=teach] .QA .inner .list dl {
  margin-bottom: 5%;
  color: #331b23;
  text-align: left;
  line-height: 1.5;
  border-radius: 1.5rem;
  overflow: hidden;
}
body[page=teach] .QA .inner .list dl dt {
  position: relative;
  padding: 3% 5%;
  background-color: #f58832;
  font-size: 1.8rem;
  cursor: pointer;
}
@media all and (min-width: 769px) {
  body[page=teach] .QA .inner .list dl dt {
    font-size: 1.5rem;
  }
}
body[page=teach] .QA .inner .list dl dt::after {
  content: "+";
  position: absolute;
  color: #000;
  right: 5%;
}
body[page=teach] .QA .inner .list dl dt.open::after {
  content: "-";
}
body[page=teach] .QA .inner .list dl dd {
  display: none;
  padding: 5% 5%;
  background-color: #ffede3;
  font-size: 1.7rem;
  overflow: hidden;
}
@media all and (min-width: 769px) {
  body[page=teach] .QA .inner .list dl dd {
    font-size: 1.3rem;
  }
}
body[page=teach] .QA .inner .btn {
  cursor: pointer;
  background-color: #f58832;
  border-radius: 50px;
  background-size: 100%;
  margin: 8% auto 0;
  width: 40%;
  padding: 1.6rem 0 2rem;
  font-size: 2rem;
  font-weight: 500;
  color: #331b23;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
body[page=teach] .QA .inner .btn:hover {
  background-color: #ffa800;
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
body[page=teach] .QA .inner .btn a {
  color: #ffede3;
  vertical-align: middle;
}
@media all and (min-width: 769px) {
  body[page=teach] .QA .inner .btn {
    width: 20%;
    font-size: 1.8rem;
    padding: 1.3rem 0 1.7rem;
  }
}