@charset "UTF-8";
/**
 * Color
 */
/**
* Container
*/
/**
* Screen
*/
/**
 * Space
 * 定義所有使用的 Space
 */
/**
 * Font
 */
/**
* Z-index
*/
/**
* Radius
*/
/**
* Opacity
*/
/**
* Header
*/
/**
*3rd-party
*/
@-webkit-keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes bounce {
  0% {
    -webkit-transform: translateY(-25%);
            transform: translateY(-25%);
    animationTimingFunction: cubic-bezier(0.8, 0, 1, 1);
  }
  50% {
    -webkit-transform: none;
            transform: none;
    animationTimingFunction: cubic-bezier(0, 0, 0.2, 1);
  }
  100% {
    -webkit-transform: translateY(-25%);
            transform: translateY(-25%);
    animationTimingFunction: cubic-bezier(0.8, 0, 1, 1);
  }
}
@keyframes bounce {
  0% {
    -webkit-transform: translateY(-25%);
            transform: translateY(-25%);
    animationTimingFunction: cubic-bezier(0.8, 0, 1, 1);
  }
  50% {
    -webkit-transform: none;
            transform: none;
    animationTimingFunction: cubic-bezier(0, 0, 0.2, 1);
  }
  100% {
    -webkit-transform: translateY(-25%);
            transform: translateY(-25%);
    animationTimingFunction: cubic-bezier(0.8, 0, 1, 1);
  }
}
@-webkit-keyframes fadeInLeftDelay {
  0% {
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
    opacity: 0;
  }
  50% {
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@keyframes fadeInLeftDelay {
  0% {
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
    opacity: 0;
  }
  50% {
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes fadeInLeft {
  0% {
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@keyframes fadeInLeft {
  0% {
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes fadeInRight {
  0% {
    -webkit-transform: translate(20px, 0);
            transform: translate(20px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@keyframes fadeInRight {
  0% {
    -webkit-transform: translate(20px, 0);
            transform: translate(20px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes fadeInUp {
  0% {
    -webkit-transform: translate(0, 20px);
            transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@keyframes fadeInUp {
  0% {
    -webkit-transform: translate(0, 20px);
            transform: translate(0, 20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes fadeInDown {
  0% {
    -webkit-transform: translate(0, -20px);
            transform: translate(0, -20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@keyframes fadeInDown {
  0% {
    -webkit-transform: translate(0, -20px);
            transform: translate(0, -20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeOutRight {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(20px, 0);
            transform: translate(20px, 0);
    opacity: 0;
  }
}
@keyframes fadeOutRight {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translate(20px, 0);
            transform: translate(20px, 0);
    opacity: 0;
  }
}
@-webkit-keyframes gradient {
  0% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
  50% {
    -webkit-transform: translate(-49%, -49%);
            transform: translate(-49%, -49%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
@keyframes gradient {
  0% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
  50% {
    -webkit-transform: translate(-49%, -49%);
            transform: translate(-49%, -49%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
main {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  max-width: 1132px;
  padding-left: 2.4rem;
  padding-right: 2.4rem;
}
@media screen and (max-width: 575px) {
  main {
    padding-left: 1.6rem;
    padding-right: 1.6rem;
  }
}

main {
  min-height: 100vh;
}
@media screen and (max-width: 1023px) {
  main {
    min-height: calc(100vh - 6.4rem);
  }
}

.pageTitle {
  font-size: 2.8rem;
  line-height: 3.6rem;
}
@media screen and (max-width: 1023px) {
  .pageTitle {
    font-size: 1.8rem;
    line-height: 2.4rem;
  }
}

.breadcrumbWrap li + li::before, .breadcrumbWrap li {
  font-size: 1.6rem;
  line-height: 2.4rem;
}
@media screen and (max-width: 1023px) {
  .breadcrumbWrap li + li::before, .breadcrumbWrap li {
    font-size: 1.4rem;
    line-height: 2rem;
  }
}

.errMsg, .formWrap textarea:focus, .formWrap select:focus, .formWrap input:focus, .formWrap textarea, .formWrap select, .formWrap input {
  font-size: 1.4rem;
  line-height: 1.8rem;
}

.formWrap textarea, .formWrap select, .formWrap input {
  padding-top: 0.8rem;
}
@media screen and (max-width: 1023px) {
  .formWrap textarea, .formWrap select, .formWrap input {
    padding-top: 0.8rem;
  }
}
@media screen and (max-width: 575px) {
  .formWrap textarea, .formWrap select, .formWrap input {
    padding-top: 0.4rem;
  }
}

.formWrap textarea, .formWrap select, .formWrap input {
  padding-bottom: 0.8rem;
}
@media screen and (max-width: 1023px) {
  .formWrap textarea, .formWrap select, .formWrap input {
    padding-bottom: 0.8rem;
  }
}
@media screen and (max-width: 575px) {
  .formWrap textarea, .formWrap select, .formWrap input {
    padding-bottom: 0.4rem;
  }
}

.breadcrumbWrap li + li::before, .formWrap textarea, .formWrap select, .formWrap input {
  padding-right: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .breadcrumbWrap li + li::before, .formWrap textarea, .formWrap select, .formWrap input {
    padding-right: 1.6rem;
  }
}
@media screen and (max-width: 575px) {
  .breadcrumbWrap li + li::before, .formWrap textarea, .formWrap select, .formWrap input {
    padding-right: 1.2rem;
  }
}

.breadcrumbWrap li + li::before, .formWrap textarea, .formWrap select, .formWrap input {
  padding-left: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .breadcrumbWrap li + li::before, .formWrap textarea, .formWrap select, .formWrap input {
    padding-left: 1.6rem;
  }
}
@media screen and (max-width: 575px) {
  .breadcrumbWrap li + li::before, .formWrap textarea, .formWrap select, .formWrap input {
    padding-left: 1.2rem;
  }
}

.breadcrumbWrap {
  padding-top: 4rem;
}
@media screen and (max-width: 1023px) {
  .breadcrumbWrap {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 575px) {
  .breadcrumbWrap {
    padding-top: 2rem;
  }
}

.breadcrumbWrap {
  padding-bottom: 4.8rem;
}
@media screen and (max-width: 1023px) {
  .breadcrumbWrap {
    padding-bottom: 3.6rem;
  }
}
@media screen and (max-width: 575px) {
  .breadcrumbWrap {
    padding-bottom: 2.4rem;
  }
}

.errMsg {
  margin-bottom: 1.2rem;
}
@media screen and (max-width: 1023px) {
  .errMsg {
    margin-bottom: 1.2rem;
  }
}
@media screen and (max-width: 575px) {
  .errMsg {
    margin-bottom: 0.8rem;
  }
}

.formWrap:before {
  margin-right: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .formWrap:before {
    margin-right: 1.6rem;
  }
}
@media screen and (max-width: 575px) {
  .formWrap:before {
    margin-right: 1.2rem;
  }
}

.formWrap.icon-arrowRight:before {
  margin-top: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .formWrap.icon-arrowRight:before {
    margin-top: 1.6rem;
  }
}
@media screen and (max-width: 575px) {
  .formWrap.icon-arrowRight:before {
    margin-top: 1.2rem;
  }
}

.contactWrapper .info .row a, .formWrap {
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .contactWrapper .info .row a, .formWrap {
    margin-bottom: 1.6rem;
  }
}
@media screen and (max-width: 575px) {
  .contactWrapper .info .row a, .formWrap {
    margin-bottom: 1.2rem;
  }
}

.contactWrapper .submitBtn {
  margin-top: 2rem;
}
@media screen and (max-width: 1023px) {
  .contactWrapper .submitBtn {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 575px) {
  .contactWrapper .submitBtn {
    margin-top: 1.6rem;
  }
}

.pageTitle {
  margin-bottom: 4rem;
}
@media screen and (max-width: 1023px) {
  .pageTitle {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 575px) {
  .pageTitle {
    margin-bottom: 2rem;
  }
}

.contactWrapper .submitBtn {
  margin-bottom: 8rem;
}
@media screen and (max-width: 1023px) {
  .contactWrapper .submitBtn {
    margin-bottom: 5rem;
  }
}
@media screen and (max-width: 575px) {
  .contactWrapper .submitBtn {
    margin-bottom: 4.8rem;
  }
}

.breadcrumbWrap li {
  letter-spacing: 0.5px;
  font-weight: 400;
}

.breadcrumbWrap a:hover, .contactWrapper .submitBtn:hover {
  opacity: 0.6;
  transition: opacity 0.2s ease-out;
}

.contactWrapper .submitBtn {
  outline: none;
  border: none;
  border-radius: 0.8rem;
  text-align: center;
  font-size: 1.2rem;
  cursor: pointer;
  display: inline-block;
  background-color: var(--secondary-1-color);
  color: var(--secondary-6-color);
  font-weight: 500;
}

.contactWrapper .submitBtn {
  padding: 1.2rem;
  width: 100%;
}

.formWrap select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.formWrap textarea, .formWrap select, .formWrap input {
  border: 1px solid var(--secondary-5-color);
  height: 4rem;
  width: 100%;
  border-radius: 0.8rem;
  background-color: var(--secondary-6-color);
  color: var(--secondary-1-color);
}
.formWrap textarea::-webkit-input-placeholder, .formWrap select::-webkit-input-placeholder, .formWrap input::-webkit-input-placeholder {
  color: var(--secondary-4-color);
}
.formWrap textarea::-moz-placeholder, .formWrap select::-moz-placeholder, .formWrap input::-moz-placeholder {
  color: var(--secondary-4-color);
}
.formWrap textarea:-ms-input-placeholder, .formWrap select:-ms-input-placeholder, .formWrap input:-ms-input-placeholder {
  color: var(--secondary-4-color);
}
.formWrap textarea::-ms-input-placeholder, .formWrap select::-ms-input-placeholder, .formWrap input::-ms-input-placeholder {
  color: var(--secondary-4-color);
}
.formWrap textarea::placeholder, .formWrap select::placeholder, .formWrap input::placeholder {
  color: var(--secondary-4-color);
}
.formWrap textarea:focus, .formWrap select:focus, .formWrap input:focus {
  outline: 0;
  border-color: var(--primary-6-color);
}

.formWrap input {
  height: 4rem;
}
.formWrap input:-webkit-autofill {
  -webkit-text-fill-color: #000;
  -webkit-box-shadow: 0 0 0 150% var(--secondary-6-color) inset;
}
.formWrap input:-webkit-autofill:focus {
  border-color: var(--secondary-1-color);
}
.formWrap input.error {
  border-color: #F00606;
  padding-right: 3.2rem;
}

.formWrap select {
  height: 4rem;
}

.formWrap textarea {
  height: 9.6rem;
}

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

/**
 * Color
 */
/**
* Container
*/
/**
* Screen
*/
/**
 * Space
 * 定義所有使用的 Space
 */
/**
 * Font
 */
/**
* Z-index
*/
/**
* Radius
*/
/**
* Opacity
*/
/**
* Header
*/
/**
*3rd-party
*/
.breadcrumbWrap li {
  display: inline-block;
}
.breadcrumbWrap li:not(:last-of-type) a {
  color: var(--secondary-4-color);
}
.breadcrumbWrap li:last-of-type a {
  color: var(--secondary-2-color);
}
.breadcrumbWrap li + li::before {
  content: "//";
  display: inline-block;
  color: var(--secondary-4-color);
}
.formWrap {
  position: relative;
}
.formWrap:before {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 1.6rem;
  pointer-events: none;
}
.formWrap.icon-arrowRight:before {
  font-size: 1.2rem;
  -webkit-transform: rotate(90deg) translate(-170%, 30%);
          transform: rotate(90deg) translate(-170%, 30%);
  margin-right: 0;
  right: 1.6rem;
}
@media screen and (max-width: 1023px) {
  .formWrap.icon-arrowRight:before {
    right: 1.2rem;
    -webkit-transform: rotate(90deg) translate(-140%, 30%);
            transform: rotate(90deg) translate(-140%, 30%);
  }
}
.formWrap textarea {
  resize: vertical;
}
.formWrap.error::before {
  color: #F00606;
}
.formWrap.error input {
  padding-right: 3.2rem;
  border-color: #F00606;
}
.formWrap.error select {
  padding-right: 3.2rem;
  border-color: #F00606;
}
.formWrap.error textarea {
  padding-right: 3.2rem;
  border-color: #F00606;
}

.errMsg {
  color: #F00606;
  position: relative;
  padding-left: 2rem;
}
.errMsg:before {
  content: "*";
  line-height: 1;
  font-size: 250%;
  font-weight: lighter;
  position: absolute;
  left: 0.3rem;
  top: 50%;
  -webkit-transform: translateY(-30%);
          transform: translateY(-30%);
}

.pageTitle {
  font-weight: 700;
}

.contactWrapper {
  display: flex;
}
.contactWrapper .col {
  margin-right: 2rem;
  width: calc(100% - 34.8rem - 2rem);
}
.contactWrapper .col:last-of-type {
  margin-right: 0;
  width: 34.8rem;
  flex-grow: 0;
  flex-shrink: 0;
}
.contactWrapper .col iframe {
  width: 100%;
  height: 60rem;
}
.contactWrapper .info {
  margin-bottom: 4.8rem;
}
.contactWrapper .info .row {
  display: flex;
  justify-content: space-between;
  color: var(--secondary-4-color);
}
.contactWrapper .info .row a {
  display: block;
  width: 24.3rem;
}
.contactWrapper .info .row:last-of-type:not(address) a {
  margin-bottom: 0;
}
.contactWrapper textarea {
  resize: none;
}

@media screen and (max-width: 1023px) {
  .contactWrapper {
    flex-direction: column;
  }
  .contactWrapper .col {
    width: 100%;
  }
  .contactWrapper .col iframe {
    width: 100vw;
    height: 75vw;
    margin-left: -1.6rem;
    margin-bottom: 1.6rem;
  }
  .contactWrapper .col:last-of-type {
    margin-right: 0;
    width: 100%;
  }
  .contactWrapper .info .row div {
    width: calc(100% - 8.5rem - 3.2rem);
  }
  .contactWrapper .info .row a {
    width: auto;
  }
}
