@charset "UTF-8";
/********       color         *******/
/******************************************/
/******************************************/
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@200;300;400;500;600;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&family=Noto+Serif+TC:wght@200;300;400;500;600;700;900&display=swap");
* {
  box-sizing: border-box;
  font-family: 'Noto Sans TC', sans-serif; }

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden; }

body {
  font-size: 13px;
  margin: 0;
  padding: 0;
  line-height: 1.5;
  color: #4a4a4a; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

img {
  max-width: 100%;
  border: 0px;
  vertical-align: middle; }

ul, li, p, ol, figure {
  list-style-type: none;
  margin: 0;
  padding: 0; }

a, button {
  background-color: transparent;
  text-decoration: none;
  color: #4a4a4a;
  outline: none; }
  a:focus, button:focus {
    outline: none; }
  a:hover, button:hover {
    outline: 0; }
  a:active, button:active {
    outline: 0; }

article, aside, dialog, footer, header, section, footer, nav, figure, menu {
  display: block; }

abbr[title] {
  border-bottom: 1px dotted; }

b, strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

hr {
  box-sizing: content-box;
  height: 0; }

mark {
  background: yellow;
  color: black; }

code, kbd, pre, samp {
  font-family: monospace, serif;
  font-size: 1em; }

pre {
  white-space: pre-wrap; }

q {
  quotes: "\201C" "\201D" "\2018" "\2019"; }

small {
  font-size: 80%; }

sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em; }

sub {
  bottom: -0.25em; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 0; }

fieldset {
  border: 1px solid silver;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

button, input, select, textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0; }

button, input {
  line-height: normal; }

button, select {
  text-transform: none; }

button, html input[type="button"] {
  -webkit-appearance: button;
  cursor: pointer; }

input[type="reset"], input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

input[type="checkbox"], input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-siaing: content-box;
  box-sizing: content-box; }
  input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto;
  vertical-align: top; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

.hidden {
  display: none;
  visibility: hidden;
  height: 0; }

.nuList {
  padding-left: 15px; }
  .nuList li {
    list-style-type: decimal; }
  .nuList a {
    display: inline-block;
    color: #ffc000; }
    .nuList a:hover {
      color: #ff0000; }

/*擋使用者長按及選取*/
* {
  -webkit-touch-callout: none !important;
  -webkit-user-select: none !important;
  user-select: none !important;
  /* Disable selection/Copy of UIWebView */ }

/*允許使用者長按及選取*/
input,
textarea {
  -webkit-touch-callout: unset !important;
  -webkit-user-select: text !important;
  user-select: text !important;
  /* Disable selection/Copy of UIWebView */ }

/*字型*/
/*常用*/
/*陰影*/
/*漸層*/
/*三角形*/
/*瀏覽器*/
/*等分*/
/*絕對上下左右置中*/
/*對齊&置中*/
/*動畫*/
/*旋轉*/
/*傾斜*/
/*filter*/
/*css*/
* {
  margin: 0;
  padding: 0;
  text-decoration: none;
  box-sizing: border-box;
  list-style: none; }

body {
  overflow: hidden;
  background-size: 100% auto;
  background-repeat: repeat-y;
  background-color: #FFF6EE;
  font-size: 15px;
  position: relative; }

section {
  width: 100%; }

.container {
  max-width: 1200px;
  margin: auto;
  padding: 7rem 0%; }
  @media screen and (max-width: 1200px) {
    .container {
      padding: 5rem 6%; } }

a {
  text-decoration: none; }

a:hover {
  text-decoration: none;
  color: #fff;
  transition: 0.3s; }

.title-wrap {
  display: flex;
  flex-direction: row-reverse;
  justify-content: right;
  align-items: flex-start;
  padding-left: 60px; }
  .title-wrap h3 span {
    position: relative;
    z-index: 5; }

p {
  font-family: 'Noto Serif TC', serif;
  font-weight: 600; }

h3.section-title {
  font-family: 'Noto Sans TC',sans-serif !important;
  display: inline-block;
  color: #000;
  writing-mode: vertical-lr;
  font-size: 2rem !important;
  font-weight: 500;
  position: relative; }

/**scroll_icon**/
#myBtn {
  position: fixed;
  top: 35%;
  right: -50%;
  z-index: 9999; }

#myBtn ul li {
  border-bottom: 1px solid #fff;
  text-align: center;
  background-color: #413D3E;
  padding: 10px 8px; }

#myBtn ul li:nth-of-type(1) {
  border-top-left-radius: 15px; }

#myBtn ul li:nth-last-of-type(1) {
  border-bottom: none;
  border-bottom-left-radius: 15px; }

#myBtn ul li span {
  display: block;
  padding-top: 5px; }

#myBtn ul li a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff; }

#myBtn ul li a:hover {
  color: orange;
  text-decoration: none; }

/**RWD**/
@media all and (max-width: 990px) {
  #myBtn ul li {
    padding: 10px 5px; }
  #myBtn ul li a {
    font-size: 90%; }
  #myBtn ul li span {
    width: 40px;
    line-height: 18px; }
  #myBtn ul li a .fa-2x {
    font-size: 1.5em; } }

@media all and (max-width: 767px) {
  #myBtn {
    position: fixed;
    top: inherit !important;
    bottom: 0px;
    left: 0px;
    right: inherit;
    z-index: 9999;
    width: 100%;
    transition: all 0.5s cubic-bezier(0, 0.64, 0.31, 1); }
  #myBtn ul {
    margin: 0px;
    padding: 0px; }
  #myBtn ul li {
    width: 25%;
    float: left;
    border-bottom: none;
    border-top: 1px solid #fff; }
  #myBtn ul li.mobile_line {
    border-right: 1px solid #fff; }
  #myBtn ul li span {
    width: auto !important;
    display: initial;
    padding-left: 5px; }
  #myBtn ul li {
    padding: 10px 10px; }
  #myBtn ul li a .fa-2x {
    font-size: 2em; }
  #myBtn ul li:nth-of-type(1) {
    border-top-left-radius: 0px; }
  #myBtn ul li:nth-last-of-type(1) {
    border-bottom: none;
    border-bottom-left-radius: 0px; } }

@media all and (max-width: 420px) {
  #myBtn ul li a .fa-2x {
    font-size: 1em; } }

@media all and (max-width: 377px) {
  #myBtn ul li a {
    font-size: 80%; } }

@media all and (max-width: 347px) {
  #myBtn ul li span {
    display: block !important;
    padding-left: 0px; } }

.copywriting {
  display: inline-block;
  color: #000;
  writing-mode: vertical-rl;
  font-size: 1rem;
  text-align: start !important; }

#main-banner {
  background-image: url(../images/bg-texture.jpg);
  background-size: 100% auto;
  background-repeat: repeat-y;
  height: 100vh;
  position: relative;
  overflow: hidden;
  z-index: 0; }
  #main-banner nav {
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 100;
    padding: 20px 20px; }
    #main-banner nav h1 {
      text-align: right;
      line-height: 0;
      margin: 0px; }
    #main-banner nav img {
      width: 240px; }
      @media screen and (max-width: 640px) {
        #main-banner nav img {
          width: 40%; } }
  #main-banner .bg-cloud {
    background-image: url(../images/cloud.png);
    background-size: 100% auto;
    background-position: left 0% bottom 0%;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0%;
    left: 0%;
    opacity: 0.8; }
  #main-banner .container {
    position: relative;
    z-index: 20;
    height: 100%; }
  #main-banner .content-wrap {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 20; }
    @media screen and (max-width: 768px) {
      #main-banner .content-wrap {
        width: 100%;
        padding: 0px 6%; } }
    #main-banner .content-wrap h3 {
      display: inline-block;
      font-family: 'Noto Serif TC', serif;
      font-weight: 700;
      padding: 10px;
      border: 0.5px solid #222; }
      @media screen and (max-width: 640px) {
        #main-banner .content-wrap h3 {
          font-size: 1rem; } }
    #main-banner .content-wrap .promotion {
      position: relative; }
      #main-banner .content-wrap .promotion h2 {
        font-family: 'Noto Sans TC',sans-serif !important;
        display: inline-block;
        font-size: 6rem;
        font-weight: 900;
        border-bottom: 0.5px solid #000;
        color: #222;
        padding-bottom: 10px;
        margin-top: 0px; }
        @media screen and (max-width: 640px) {
          #main-banner .content-wrap .promotion h2 {
            font-size: 3rem; } }
        #main-banner .content-wrap .promotion h2 .inline-lower {
          font-size: 3rem;
          padding-left: 10px; }
          @media screen and (max-width: 640px) {
            #main-banner .content-wrap .promotion h2 .inline-lower {
              font-size: 1.5rem; } }
        #main-banner .content-wrap .promotion h2 .inline-differ-color {
          color: #E99201; }
    #main-banner .content-wrap .promotion::before {
      content: "";
      position: absolute;
      width: 30%;
      height: 30%;
      background-image: url(../images/bird01.png);
      background-size: contain;
      background-position: bottom 0% right 0%;
      background-repeat: no-repeat;
      right: -5%;
      top: -25%;
      opacity: 0;
      animation: fly 2s cubic-bezier(0, 0.64, 0.31, 1) 0.5s forwards;
      transition: 0.5s; }
      @media screen and (max-width: 768px) {
        #main-banner .content-wrap .promotion::before {
          animation: fly02 2s cubic-bezier(0, 0.64, 0.31, 1) 0.5s forwards;
          right: 10%;
          top: -25%; } }
    #main-banner .content-wrap .promotion::after {
      content: "";
      position: absolute;
      width: 20%;
      height: 20%;
      background-image: url(../images/bird01.png);
      background-size: contain;
      background-position: bottom 0% right 0%;
      background-repeat: no-repeat;
      right: -20%;
      top: -40%;
      opacity: 0;
      animation: bird02_fly 2s cubic-bezier(0, 0.64, 0.31, 1) 1s forwards;
      transition: 0.5s; }
      @media screen and (max-width: 768px) {
        #main-banner .content-wrap .promotion::after {
          right: 0%;
          top: -40%;
          animation: bird02_fly02 2s cubic-bezier(0, 0.64, 0.31, 1) 1s forwards;
          transition: 0.5s; } }

@keyframes fly {
  0% {
    right: -100%;
    top: -100%; }
  100% {
    right: -5%;
    top: -25%;
    opacity: 1; } }

@keyframes fly02 {
  0% {
    right: -100%;
    top: -100%; }
  100% {
    right: 10%;
    top: -25%;
    opacity: 1; } }

@keyframes bird02_fly {
  0% {
    right: -100%;
    top: -100%; }
  100% {
    right: -20%;
    top: -40%;
    opacity: 1; } }

@keyframes bird02_fly02 {
  0% {
    right: -100%;
    top: -100%; }
  100% {
    right: 0%;
    top: -40%;
    opacity: 1; } }
    #main-banner .content-wrap .sub-info {
      display: flex;
      flex-direction: row;
      align-items: center;
      margin-top: 10px; }
      #main-banner .content-wrap .sub-info p {
        font-family: 'Noto Sans TC',sans-serif;
        font-size: 2rem;
        font-weight: 900;
        padding: 0px 20px;
        color: #000; }
        @media screen and (max-width: 600px) {
          #main-banner .content-wrap .sub-info p {
            font-size: 1.5rem;
            padding: 0px 10px; } }
      #main-banner .content-wrap .sub-info p:nth-of-type(1) {
        color: #E99201;
        padding-left: 0px;
        position: relative; }
      #main-banner .content-wrap .sub-info p:nth-of-type(1)::after {
        content: "";
        height: 70%;
        width: 0.5px;
        background: #000;
        position: absolute;
        right: 0px;
        top: 50%;
        transform: translateY(-50%); }
  #main-banner .back-scene {
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: -40%;
    right: 0px;
    background: url(../images/deco-trees-back-02.png), url(../images/land-back.png);
    background-size: 100% auto;
    background-position: bottom 0% right 0%;
    background-repeat: no-repeat;
    z-index: 0; }
    @media screen and (max-width: 1450px) {
      #main-banner .back-scene {
        bottom: -20%; } }
    @media screen and (max-width: 1200px) {
      #main-banner .back-scene {
        bottom: -10%; } }
    @media screen and (max-width: 640px) {
      #main-banner .back-scene {
        bottom: -5%; } }
  #main-banner .front-scene {
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: -40%;
    left: 0px;
    background: url(../images/deco-trees-02.png), url(../images/land-front.png);
    background-size: 100% auto;
    background-position: bottom 0% left 0%;
    background-repeat: no-repeat;
    z-index: 2; }
    @media screen and (max-width: 1450px) {
      #main-banner .front-scene {
        bottom: -20%; } }
    @media screen and (max-width: 1200px) {
      #main-banner .front-scene {
        bottom: -10%; } }
    @media screen and (max-width: 640px) {
      #main-banner .front-scene {
        bottom: -5%; } }

.deco-bird {
  width: 100%;
  line-height: 0;
  position: relative; }

.deco-bird::before {
  content: "";
  position: absolute;
  width: 15%;
  height: 15vh;
  background-image: url(../images/bird02.png);
  background-size: contain;
  background-position: bottom 0% right 0%;
  background-repeat: no-repeat;
  left: 5%;
  top: -7.5vh;
  z-index: 50; }

#building-scene {
  width: 100%;
  height: 100vh;
  position: relative;
  z-index: 20; }
  @media screen and (max-width: 768px) {
    #building-scene {
      height: 90vh; } }
  #building-scene .main-building {
    width: 100%;
    position: absolute;
    bottom: 0%;
    left: 50%;
    transform: translate3d(-50%, 0px, 0px);
    max-width: unset; }
    @media screen and (max-width: 1200px) {
      #building-scene .main-building {
        bottom: 5%;
        width: 170%; } }
    @media screen and (max-width: 992px) {
      #building-scene .main-building {
        bottom: 20%;
        width: 180%; } }
    @media screen and (max-width: 768px) {
      #building-scene .main-building {
        bottom: 10%;
        width: 120%; } }
    @media screen and (max-width: 375px) {
      #building-scene .main-building {
        bottom: 10%;
        width: 170%; } }
    @media screen and (max-width: 360px) {
      #building-scene .main-building {
        bottom: 20%;
        width: 150%; } }
  #building-scene .scene-wrap {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    position: relative; }
    @media screen and (max-width: 1450px) {
      #building-scene .scene-wrap {
        height: 90vh; } }
  #building-scene .building {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(../images/building.png);
    background-size: 100% auto;
    background-position: bottom 0% left 0%;
    background-repeat: no-repeat;
    bottom: 0%;
    left: 0%;
    z-index: 0; }
    @media screen and (max-width: 960px) {
      #building-scene .building {
        background-size: 150% auto;
        background-position: center bottom 0%; } }
    @media screen and (max-width: 960px) {
      #building-scene .building {
        background-size: 150% auto;
        background-position: center bottom 0%; } }
  #building-scene .building-photo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 150vh;
    max-width: unset; }
  #building-scene .content-wrap {
    text-align: right;
    position: relative; }
    @media screen and (max-width: 1200px) {
      #building-scene .content-wrap {
        text-align: center;
        margin-top: 3rem; } }
    #building-scene .content-wrap h3.section-title {
      color: #fff; }
      #building-scene .content-wrap h3.section-title span {
        position: relative;
        z-index: 5; }
    #building-scene .content-wrap h3.section-title::after {
      content: "";
      position: absolute;
      width: 20px;
      height: 60px;
      background: orange;
      background-size: contain;
      background-position: top 0 right 0;
      background-repeat: no-repeat;
      right: 0%;
      top: -8%; }
  #building-scene .content-wrap::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 200%;
    background-image: url(../images/grid-w-s.svg);
    background-size: contain;
    background-position: top 0 right 0;
    background-repeat: no-repeat;
    right: -2%;
    top: -20%;
    z-index: 0; }
    @media screen and (max-width: 1200px) {
      #building-scene .content-wrap::after {
        right: 0%;
        top: -30%;
        background-position: center; } }

#building-scene::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url(../images/landscape_01.png);
  background-size: 100% auto;
  background-position: bottom 0% left 0%;
  background-repeat: no-repeat;
  left: 0%;
  bottom: 0%; }

.decoer {
  width: 100%;
  position: relative;
  line-height: 0; }

#environment {
  width: 100%;
  position: relative;
  background-color: #FFF6EE;
  z-index: 90; }
  #environment .decoer img {
    width: 100%; }
  #environment .decoer::before {
    content: "";
    width: 20%;
    height: 100%;
    background-image: url(../images/deco-leaf01.png);
    background-size: 100% auto;
    background-position: top 0% left 0%;
    background-repeat: no-repeat;
    left: 0%;
    bottom: 0%;
    z-index: 60; }
  #environment .container::before {
    content: "";
    position: absolute;
    width: 40%;
    height: 100%;
    background-image: url(../images/deco-bird-grass.png);
    background-size: 100% auto;
    background-position: bottom 0% left 0%;
    background-repeat: no-repeat;
    left: -5%;
    bottom: -2%; }
  #environment .content-wrap {
    text-align: right;
    position: relative;
    padding-top: 5rem; }
    #environment .content-wrap .title-wrap {
      justify-content: center; }
      #environment .content-wrap .title-wrap p {
        margin-top: 30px;
        margin-right: 20px; }
    #environment .content-wrap .title-wrap::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 250%;
      background-image: url(../images/grid-o-l.svg);
      background-size: contain;
      background-position: top 0 right 0;
      background-repeat: no-repeat;
      right: -5%;
      top: -20%; }
      @media screen and (max-width: 960px) {
        #environment .content-wrap .title-wrap::before {
          background-size: 50% auto;
          background-position: top 10% left 0%; } }
    #environment .content-wrap .title-wrap::after {
      content: "";
      position: absolute;
      width: 50%;
      height: 50%;
      background-image: url(../images/deco-red-fruit.png);
      background-size: contain;
      background-position: bottom 0% right 0%;
      background-repeat: no-repeat;
      right: -5%;
      bottom: 0%; }
      @media screen and (max-width: 768px) {
        #environment .content-wrap .title-wrap::after {
          right: -15%; } }
      @media screen and (max-width: 640px) {
        #environment .content-wrap .title-wrap::after {
          top: 0%;
          background-size: 70% auto;
          background-position: top 30% right 0%; } }
      @media screen and (max-width: 375px) {
        #environment .content-wrap .title-wrap::after {
          top: 0%;
          background-size: 70% auto;
          background-position: top 50% right 0%; } }
    #environment .content-wrap .envi-photos {
      position: relative;
      z-index: 5;
      display: inline-block; }
      #environment .content-wrap .envi-photos p {
        font-size: 14px;
        position: absolute;
        display: inline-block;
        border: 1px solid #fff;
        border-radius: 50px;
        padding: 9px 15px;
        color: #fff;
        bottom: 5%;
        right: 5%; }
    #environment .content-wrap h3.section-title:nth-of-type(2) {
      margin-top: 30px; }
    #environment .content-wrap h3.section-title::after {
      content: "";
      position: absolute;
      width: 20px;
      height: 60px;
      background: orange;
      background-size: contain;
      background-position: top 0 right 0;
      background-repeat: no-repeat;
      right: 0%;
      bottom: -8%; }
    #environment .content-wrap .photo-wrap .img-wrap {
      position: relative;
      z-index: 5; }
    @media screen and (max-width: 640px) {
      #environment .content-wrap .photo-wrap .park[uk-grid] {
        flex-direction: column-reverse; } }
    #environment .content-wrap .photo-wrap .campus::after {
      content: "";
      position: absolute;
      width: 50%;
      height: 50%;
      background-image: url(../images/deco-leafs02.png);
      background-size: contain;
      background-position: bottom 0 right 0;
      background-repeat: no-repeat;
      right: -15%;
      bottom: -40%; }

.environment::before {
  content: "";
  position: absolute;
  width: 40%;
  height: 350px;
  background-image: url(../images/deco-grass.png);
  background-size: 100% auto;
  background-position: bottom 0% left 0%;
  background-repeat: no-repeat;
  left: 0%;
  bottom: 0%; }
  @media screen and (max-width: 960px) {
    .environment::before {
      height: 50%;
      width: 50%; } }
  @media screen and (max-width: 480px) {
    .environment::before {
      height: 50%;
      width: 70%; } }

#indoor-scene {
  width: 100%;
  position: relative; }
  #indoor-scene .content-wrap .img-wrap {
    position: relative;
    z-index: 5; }
    #indoor-scene .content-wrap .img-wrap p {
      font-family: 'Noto Sans TC',sans-serif !important;
      font-weight: 300;
      padding-top: 10px;
      color: #999;
      text-align: left;
      font-size: 14px; }
  #indoor-scene .content-wrap article {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    position: relative;
    z-index: 5; }
    #indoor-scene .content-wrap article .title-wrap {
      padding-left: 30px; }
    #indoor-scene .content-wrap article h3.section-title:nth-of-type(1)::after {
      content: "";
      position: absolute;
      width: 20px;
      height: 60px;
      background: orange;
      background-size: contain;
      background-position: top 0 right 0;
      background-repeat: no-repeat;
      right: 0%;
      bottom: -8%; }
  #indoor-scene .content-wrap article::after {
    content: "";
    position: absolute;
    width: 80%;
    height: 200%;
    background-image: url(../images/grid-o-l.svg);
    background-size: contain;
    background-position: top 0 right 0;
    background-repeat: no-repeat;
    right: -30%;
    top: -15%; }
    @media screen and (max-width: 960px) {
      #indoor-scene .content-wrap article::after {
        background-size: 55% auto;
        background-position: top 10% left 0%; } }

#indoor-scene::after {
  content: "";
  position: absolute;
  width: 40%;
  height: 100%;
  background-image: url(../images/deco-seed.png), url(../images/deco-grass02.png);
  background-size: auto 30%, 100% auto;
  background-position: bottom 10% right 20%, bottom 0% left 0%;
  background-repeat: no-repeat;
  right: 0%;
  bottom: -10%; }
  @media screen and (max-width: 960px) {
    #indoor-scene::after {
      top: 0%;
      height: 50%;
      width: 50%;
      background-position: bottom 0% right 50%, bottom 0% left 0%; } }
  @media screen and (max-width: 480px) {
    #indoor-scene::after {
      top: 10%;
      height: 50%;
      width: 70%;
      background-size: auto 30%, 100% auto;
      background-position: bottom 0% right 30%, bottom 0% left 0%; } }

#location {
  background-image: url(../images/hill-03-06.png);
  background-size: 100% auto;
  background-position: bottom 0 left 0;
  background-repeat: no-repeat;
  position: relative; }
  #location .google-map {
    filter: drop-shadow(5px 5px 0px #C6C693); }
  #location iframe {
    box-shadow: 0px 0px 0px 3px #C6C693; }
    @media screen and (max-width: 640px) {
      #location iframe {
        height: 360px; } }
  #location .map-wrap {
    position: relative; }
    #location .map-wrap .google-map {
      position: relative;
      z-index: 10; }
  #location .grid-map {
    position: relative;
    z-index: 10; }
    #location .grid-map .img-wrap {
      border: 3px solid #C6C693; }
    #location .grid-map .phone {
      font-family: 'Noto Sans TC',sans-serif !important;
      font-size: 2.5rem !important;
      font-weight: 900;
      color: #E99201;
      text-align: center; }

#location::before {
  content: "";
  position: absolute;
  width: 40%;
  height: 100%;
  background-image: url(../images/deco-seed.png);
  background-size: auto 30%;
  background-position: bottom 10% left 5%;
  background-repeat: no-repeat;
  left: 0%;
  bottom: 0%; }
  @media screen and (max-width: 960px) {
    #location::before {
      width: 50%;
      height: 50%;
      background-size: auto 10%;
      background-position: bottom -10% left 0%; } }
  @media screen and (max-width: 480px) {
    #location::before {
      width: 70%; } }

#form-section {
  background-image: url(../images/bg-texture-02-07.png);
  background-size: 100% auto;
  background-position: bottom 10% left 5%;
  background-repeat: repeat-y;
  position: relative; }
  #form-section h3.section-title::after {
    content: "";
    position: absolute;
    width: 20px;
    height: 60px;
    background: orange;
    background-size: contain;
    background-position: top 0 right 0;
    background-repeat: no-repeat;
    right: 0%;
    top: -8%; }
  #form-section .title-wrap {
    justify-content: center;
    position: relative; }
  #form-section .title-wrap::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 200%;
    background-image: url(../images/grid-w-s.svg);
    background-size: 100% auto;
    background-position: top 0 left 0;
    background-repeat: no-repeat;
    left: -30%;
    top: -80%; }
    @media screen and (max-width: 960px) {
      #form-section .title-wrap::before {
        width: 200%; } }
    @media screen and (max-width: 640px) {
      #form-section .title-wrap::before {
        width: 60%;
        height: 500%;
        left: unset;
        right: 0%;
        top: -180%;
        background-position: top 0% right 0%; } }
  #form-section .form-wrap {
    position: relative;
    z-index: 10; }
  #form-section fieldset {
    width: 100%;
    border: none; }
    #form-section fieldset form {
      width: 100%; }
      #form-section fieldset form .control-group {
        margin-bottom: 20px; }
        #form-section fieldset form .control-group input {
          border: 1px solid #A8925E;
          border-radius: 9px; }
        #form-section fieldset form .control-group input[type=radio], #form-section fieldset form .control-group input[type=checkbox] {
          width: 22px;
          height: 22px;
          border: none; }
        #form-section fieldset form .control-group label, #form-section fieldset form .control-group input[type=radio], #form-section fieldset form .control-group input[type=checkbox] {
          font-size: 1rem;
          vertical-align: middle; }
        #form-section fieldset form .control-group input:not([type=radio]):not([type=checkbox]) {
          width: 100%;
          padding: 16px 24px; }
        #form-section fieldset form .control-group input[type=text]:focus {
          border: 1.5px solid #E99201;
          outline: none; }
        #form-section fieldset form .control-group #Send {
          color: #fff;
          border: none;
          background: #E99201;
          transition: 0.5s;
          width: 50%;
          margin: auto; }
          @media screen and (max-width: 640px) {
            #form-section fieldset form .control-group #Send {
              width: 100%; } }
        #form-section fieldset form .control-group #Send:hover {
          background: #ca8000;
          transition: 0.5s; }

.form-section::before {
  content: "";
  position: absolute;
  width: 30%;
  height: 100%;
  background-image: url(../images/grid-o-l.svg);
  background-size: 100% auto;
  background-position: bottom 0% left 0%;
  background-repeat: no-repeat;
  right: -5%;
  bottom: 0%;
  opacity: 0.7; }
  @media screen and (max-width: 960px) {
    .form-section::before {
      width: 50%; } }
  @media screen and (max-width: 640px) {
    .form-section::before {
      display: none; } }

.form-section::after {
  content: "";
  position: absolute;
  width: 20%;
  height: 100%;
  background-image: url(../images/deco-trees-03.png);
  background-size: 100% auto;
  background-position: bottom 0% left 0%;
  background-repeat: no-repeat;
  left: 0%;
  bottom: -2%;
  opacity: 0.8; }
  @media screen and (max-width: 960px) {
    .form-section::after {
      width: 30%; } }
  @media screen and (max-width: 480px) {
    .form-section::after {
      left: unset;
      right: 0%;
      width: 40%;
      bottom: 0%; } }

footer {
  background-color: rgba(0, 0, 0, 0.65);
  position: relative;
  z-index: 20; }
  footer .container {
    padding: 1rem 0px; }
    @media screen and (max-width: 768px) {
      footer .container {
        padding: 1rem 0px 75px; } }
  footer h4 {
    color: #fff;
    font-family: 'Noto Sans TC',sans-serif;
    font-weight: 200;
    font-size: 14px;
    text-align: center;
    margin: 0px; }
