@charset "UTF-8";
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 300;
  src: url(../fonts/Lato-Light.ttf) format("ttf");
}
@font-face {
  font-family: "Lato";
  font-style: italic;
  font-weight: 300;
  src: url(../fonts/Lato-LightItalic.ttf) format("ttf");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/Lato-Regular.ttf) format("ttf");
}
@font-face {
  font-family: "Lato";
  font-style: italic;
  font-weight: 400;
  src: url(../fonts/Lato-Italic.ttf) format("ttf");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  src: url(../fonts/Lato-Bold.ttf) format("ttf");
}
@font-face {
  font-family: "Lato";
  font-style: italic;
  font-weight: 700;
  src: url(../fonts/Lato-BoldItalic.ttf) format("ttf");
}
@font-face {
  font-family: "Lato";
  font-style: normal;
  font-weight: 900;
  src: url(../fonts/Lato-Black.ttf) format("ttf");
}
@font-face {
  font-family: "Lato";
  font-style: italic;
  font-weight: 900;
  src: url(../fonts/Lato-BlackItalic.ttf) format("ttf");
}
@font-face {
  font-family: "Noto Sans CJK TC";
  font-style: normal;
  font-weight: 100;
  src: url(../fonts/NotoSansCJKtc-Thin.otf) format("OpenType");
}
@font-face {
  font-family: "Noto Sans CJK TC";
  font-style: normal;
  font-weight: 300;
  src: url(../fonts/NotoSansCJKtc-Light.otf) format("OpenType");
}
@font-face {
  font-family: "Noto Sans CJK TC";
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/NotoSansCJKtc-Regular.otf) format("OpenType");
}
@font-face {
  font-family: "Noto Sans CJK TC";
  font-style: normal;
  font-weight: 500;
  src: url(../fonts/NotoSansCJKtc-Medium.otf) format("OpenType");
}
@font-face {
  font-family: "Noto Sans CJK TC";
  font-style: normal;
  font-weight: 700;
  src: url(../fonts/NotoSansCJKtc-Bold.otf) format("OpenType");
}
@font-face {
  font-family: "Noto Sans CJK TC";
  font-style: normal;
  font-weight: 900;
  src: url(../fonts/NotoSansCJKtc-Black.otf) format("OpenType");
}
@font-face {
  font-family: "Georgia";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/Georgia Regular font.ttf") format("ttf");
}
@font-face {
  font-family: "Felix Titling";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/Felixti.ttf") format("ttf");
}
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
ar,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
}

body {
  font-family: "Lato", "Noto Sans CJK TC", "微軟正黑體", "Microsoft JhengHei", sans-serif;
  color: #777777;
  overflow-x: hidden;
  margin: 0 auto;
  font-weight: 100;
  line-height: 1;
  font-size: 1em;
  webkit-backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

select, button, textarea, input, label {
  font-family: "Lato", "Noto Sans CJK TC", "微軟正黑體", "Microsoft JhengHei", sans-serif;
  outline: none;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidde;
          backface-visibility: hidde;
  webkit-backface-visibility: hidden;
}

table {
  border-collapse: collapse;
}

a, a:focus {
  cursor: pointer;
  text-decoration: none;
  -webkit-transition: color 300ms;
  transition: color 300ms;
}

a:hover,
a:focus {
  text-decoration: none;
}

::-moz-selection {
  color: #fff;
  background: rgba(242, 17, 92, 0.5);
}

::selection {
  color: #fff;
  background: rgba(242, 17, 92, 0.5);
}

img {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#gotop {
  display: none;
  position: fixed;
  right: 55px;
  bottom: 40px;
  cursor: pointer;
  z-index: 999;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  background: url("../images/gotop.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 50px;
  height: 50px;
  font-size: 0em;
  transition-timing-function: ease;
  transition-duration: 0.3s;
  border-radius: 3px;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}
@media (max-width: 991px) {
  #gotop {
    right: 15px;
    bottom: 30px;
    width: 40px;
    height: 40px;
  }
}
#gotop:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 768px) {
  .container {
    width: 750px;
    padding-right: 0px;
    padding-left: 0px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}
.wrap {
  margin-top: 180px;
}
@media (max-width: 991px) {
  .wrap {
    margin-top: 96px;
  }
}
@media (max-width: 767px) {
  .wrap {
    margin-top: 50px;
  }
}

.mt {
  margin-top: 80px;
}
@media (max-width: 767px) {
  .mt {
    margin-top: 68px;
  }
}
.mt--index {
  margin-top: 0;
}
@media (max-width: 991px) {
  .mt--index {
    margin-top: 68px;
  }
}

@-webkit-keyframes scale {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}

@keyframes scale {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}
@-webkit-keyframes RightLeft {
  0% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
  50% {
    -webkit-transform: translateX(2px);
            transform: translateX(2px);
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
@keyframes RightLeft {
  0% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
  50% {
    -webkit-transform: translateX(2px);
            transform: translateX(2px);
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
.header {
  position: relative;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1030;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: background-color;
  transition-property: background-color;
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}
.header--fixed {
  background-color: #fff;
}
.header--fixed .navbar__logo-black {
  display: block;
}
.header--fixed .navbar__logo-white {
  display: none;
}
.header--fixed .navbar__link-item {
  color: #333333;
  text-shadow: none;
}
@media (max-width: 991px) {
  .header--fixed .navbar__link-item {
    color: #fff;
  }
}
.header--fixed .navbar__link-item:hover {
  color: #FF7BB1;
}
@media (max-width: 991px) {
  .header--fixed .navbar__link-item:hover {
    color: #fff;
  }
}
.header--pink {
  background-color: transparent;
}
.header--pink .navbar__logo-black {
  display: none;
}
@media (max-width: 991px) {
  .header--pink .navbar__logo-black {
    display: block;
  }
}
.header--pink .navbar__logo-white {
  display: block;
}
@media (max-width: 991px) {
  .header--pink .navbar__logo-white {
    display: none;
  }
}
.header--pink .navbar__link-item {
  color: #fff;
  text-shadow: none;
}
@media (max-width: 991px) {
  .header--pink .navbar__link-item {
    color: #fff;
  }
}
.header--pink .navbar__link-item:hover {
  color: #FF7BB1;
}
@media (max-width: 991px) {
  .header--pink .navbar__link-item:hover {
    color: #fff;
  }
}
.header h1 {
  display: none;
}

.navbar {
  background-color: transparent;
  position: relative;
  z-index: 1050;
}
@media (max-width: 991px) {
  .navbar {
    background-color: #fff;
  }
  .navbar::before {
    content: "";
    display: block;
    width: 100%;
    height: 60px;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 0;
    background-color: #fff;
  }
}
.navbar-hidden {
  display: none;
}
.navbar-block {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px 0px;
  min-height: 79px;
}
@media (max-width: 767px) {
  .navbar-block {
    min-height: auto;
  }
}
.navbar__head-bar {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 991px) {
  .navbar__head-bar {
    width: 100%;
    position: relative;
    z-index: 1000;
  }
}
.navbar__body {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 991px) {
  .navbar__body {
    -webkit-transition-timing-function: ease;
            transition-timing-function: ease;
    -webkit-transition-duration: 0s;
            transition-duration: 0s;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: absolute;
    top: 0;
    right: 0px;
    width: 100%;
    height: 0;
    margin-top: 79px;
    z-index: -2;
    transition-timing-function: ease;
    -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s;
    -webkit-transition-property: all;
    transition-property: all;
  }
  .navbar__body--open {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #111111;
    height: auto;
    z-index:1002;
  }
}
@media (max-width: 767px) {
  .navbar__body {
    margin-top: 68px;
  }
}
.navbar__toggle {
  display: none;
}
@media (max-width: 991px) {
  .navbar__toggle {
    display: block;
    z-index: 1050;
  }
}
.navbar__toggle--active {
  display: block;
}
.navbar__toggle-line {
  display: block;
  width: 24px;
  height: 2px;
  background-color: #fff;
  margin-bottom: 6px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.navbar__toggle-line:last-child {
  margin-bottom: 0px;
}
@media (max-width: 991px) {
  .navbar__toggle-line {
    background-color: #111111;
  }
}
.navbar__logo {
  display: block;
}
.navbar__logo img {
  width: 134px;
}
.navbar__logo-black {
  display: none;
}
@media (max-width: 991px) {
  .navbar__logo-black {
    display: block;
  }
}
@media (max-width: 991px) {
  .navbar__logo-white {
    display: none;
  }
}
.navbar__link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}
@media (max-width: 991px) {
  .navbar__link {
    display: block;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
    max-height: 495px;
    z-index:1000;
    overflow-y: auto;
    overflow-x: hidden;
  }
}
.navbar__link-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  text-align: center;
  position: relative;
  color: #fff;
  font-size: 1em;
  -webkit-transition-property: opacity, color;
  transition-property: opacity, color;
  font-weight: 400;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: color;
  transition-property: color;
  padding: 0px 15px;
  text-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
}
@media (max-width: 991px) {
  .navbar__link-item {
    height: auto;
    color: #fff;
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.07);
  }
}
@media screen and (max-width: 767px) and (max-height: 400px) {
  .navbar__link-item {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
.navbar__link-item:hover {
  color: #FF7BB1;
}
.navbar__link-item:first-child {
  padding-left: 0;
}
@media (max-width: 991px) {
  .navbar__link-item:first-child {
    padding-left: 15px;
  }
}
.navbar__link-item:last-child {
  padding-right: 0;
}
@media (max-width: 991px) {
  .navbar__link-item:last-child {
    padding-right: 15px;
  }
}

.footer {
  background-color: #000000;
  padding-top: 45px;
  padding-bottom: 45px;
}
.footer-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.footer-link__item {
  width: 14px;
  height: 13px;
  display: block;
  margin-left: 15px;
  margin-right: 15px;
}
.footer-link__item::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
.footer-link__item--fb::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -28px -60px;
}
.footer-link__item--fb:hover::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -28px -73px;
}
.footer-link__item--twitter::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -14px -60px;
}
.footer-link__item--twitter:hover::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -14px -73px;
}
.footer-link__item--line::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -42px -60px;
}
.footer-link__item--line:hover::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -42px -73px;
}
.footer-link__item--youtube::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: 0 -60px;
}
.footer-link__item--youtube:hover::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: 0 -73px;
}
.footer-copyright {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 35px;
}
.footer-copyright__item {
  font-size: 0.75em;
  color: rgba(255, 255, 255, 0.8);
  font-weight: 500;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.2;
}
.footer-copyright__item::before {
  content: "";
  display: block;
  width: 11px;
  height: 10px;
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -60px 0;
  margin-right: 5px;
  margin-left: 5px;
}
.footer-copyright__item:first-child::before {
  display: none;
}
.footer-copyright__item a {
  color: rgba(255, 255, 255, 0.8);
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: color;
  transition-property: color;
}
.footer-copyright__item a:hover {
  color: #FF7BB1;
}

.fixedbtn {
  width: 78px;
  height: 104px;
  position: fixed;
  bottom: 110px;
  right: 55px;
  z-index: 999;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}
@media (max-width: 991px) {
  .fixedbtn {
    right: 10px;
    bottom: 90px;
  }
}
.fixedbtn:hover {
  opacity: 0.8;
}
.fixedbtn img {
  display: block;
  width: 100%;
}

.page__box {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -10px;
  border-radius: 3px;
}
.page__item {
  list-style-type: none;
  margin-left: 10px;
  margin-top: 10px;
}
.page__item:first-child {
  margin-left: 0;
}
.page__item--active .page__item-link {
  background-color: #000000;
  border-color: #000000;
  color: #fff;
}
.page__item--active .page__item-link:hover {
  color: #fff;
  background-color: #000000;
  border-color: #000000;
}
.page__item-link {
  color: #444444;
  border: 1px solid #999999;
  font-size: 1em;
  font-weight: 400;
  width: 40px;
  height: 40px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
}
@media (max-width: 479px) {
  .page__item-link {
    width: 30px;
    height: 30px;
    font-size: 0.875em;
  }
}
.page__item-link:hover {
  color: #fff;
  background-color: #000000;
  border-color: #000000;
}
.page__item-link:hover .page__item-icon--prev {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -71px -5px;
}
.page__item-link:hover .page__item-icon--next {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -84px -5px;
}
.page__item-icon--prev {
  display: block;
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -71px 0px;
  width: 13px;
  height: 5px;
}
.page__item-icon--next {
  display: block;
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -84px 0px;
  width: 13px;
  height: 5px;
}

.insidebanner {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  min-height: 350px;
  padding-top: 80px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  padding-bottom: 30px;
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}
@media (max-width: 991px) {
  .insidebanner {
    min-height: 250px;
    margin-top: 60px;
    padding-top: 30px;
  }
}
@media (max-width: 575px) {
  .insidebanner {
    min-height: 200px;
  }
}
.insidebanner::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.35);
}
.insidebanner--nooverlay::before {
  display: none;
}
.insidebanner .container {
  position: relative;
  z-index: 1;
}
.insidebanner-title {
  text-align: center;
  color: #fff;
  font-size: 2.5em;
  font-weight: 500;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .insidebanner-title {
    font-size: 2.25em;
  }
}
@media (max-width: 575px) {
  .insidebanner-title {
    font-size: 1.5em;
  }
}
.insidebanner-subtitle {
  text-align: center;
  color: #fff;
  font-size: 2.5em;
  font-weight: 400;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .insidebanner-subtitle {
    font-size: 2.25em;
  }
}
@media (max-width: 575px) {
  .insidebanner-subtitle {
    font-size: 1.5em;
  }
}
.insidebanner-date {
  text-align: center;
  color: #fff;
  font-size: 0.875em;
  font-weight: 400;
  margin-top: 20px;
}

@media (max-width: 991px) {
  .flower {
    display: none;
  }
}
.flower-left {
  width: 300px;
  height: 185px;
  background-image: url("../images/flower-left.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1040;
}
@media (max-width: 991px) {
  .flower-left {
    top: 80px;
  }
}
.flower-right {
  width: 300px;
  height: 200px;
  background-image: url("../images/flower-right.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1040;
}
@media (max-width: 991px) {
  .flower-right {
    top: 80px;
  }
}

@media (max-width: 767px) {
  .indexbanner--pc {
    display: none;
  }
}
.indexbanner--mobile {
  display: none;
}
@media (max-width: 767px) {
  .indexbanner--mobile {
    display: block;
    z-index:1;
  }
}
.indexbanner-item {
  display: block;
  width: 100%;
  height: 700px;
  position: relative;
  padding-top: 240px;
  padding-bottom: 80px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (max-width: 991px) {
  .indexbanner-item {
    height: 80vw;
    padding-top: 80px;
  }
}
.indexbanner-item::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.3);
}
.indexbanner-item .container {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.indexbanner-item__block {
  position: relative;
  z-index: 1;
  width: 690px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 991px) {
  .indexbanner-item__block {
    width: 100%;
  }
}
.indexbanner-item__title {
  font-family: "Dancing Script", "Lato", "Noto Sans CJK TC", "微軟正黑體", "Microsoft JhengHei", cursive;
  text-align: center;
  color: #fff;
  font-size: 7.1875em;
  text-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
}
@media (max-width: 991px) {
  .indexbanner-item__title {
    font-size: 4.375em;
  }
}
.indexbanner-item__textbox {
  padding-top: 40px;
}
@media (max-width: 767px) {
  .indexbanner-item__textbox {
    padding-top: 15px;
  }
}
@media (max-width: 575px) {
  .indexbanner-item__textbox {
    display: none;
  }
}
.indexbanner-item__text {
  text-align: center;
  color: #fff;
  font-size: 1em;
  line-height: 1.75em;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
}
@media (max-width: 991px) {
  .indexbanner-item__text {
    font-size: 0.875em;
  }
}
.indexbanner-item__text::after {
  content: "/";
  display: block;
}
.indexbanner-item__text p {
  line-height: 1.75em;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-height: 5.25em;
}
.indexbanner-item__text:last-child::after {
  display: none;
}
.indexbanner .slick-dots {
  bottom: 30px;
}
@media (max-width: 575px) {
  .indexbanner .slick-dots {
    bottom: 20px;
  }
}
.indexbanner .slick-dots li button:before {
  color: #fff;
  opacity: 1;
}
.indexbanner .slick-dots li.slick-active button:before {
  color: #FF7BB1;
}
.indexbanner.slick-dotted.slick-slider {
  margin-bottom: 0;
}

.title-box {
  text-align: center;
}
.title-box__main {
  font-size: 1.125em;
  color: #333333;
  font-weight: 300;
}
@media (max-width: 767px) {
  .title-box__main {
    font-size: 1em;
  }
}
@media (max-width: 575px) {
  .title-box__main {
    font-size: 1.5em;
  }
}
.title-box__text {
  font-family: "Dancing Script", "Lato", "Noto Sans CJK TC", "微軟正黑體", "Microsoft JhengHei", cursive;
  font-size: 3.125em;
  color: #000000;
  font-weight: 400;
  margin-top: 10px;
}
@media (max-width: 767px) {
  .title-box__text {
    font-size: 2.375em;
  }
}

.indexwork {
  padding-top: 65px;
}
@media (max-width: 767px) {
  .indexwork {
    padding-top: 40px;
  }
}
.indexwork-text {
  margin-top: 25px;
  font-size: 1em;
  color: #777777;
  font-weight: 300;
  line-height: 1.75;
  text-align: center;
  width: 710px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 991px) {
  .indexwork-text {
    width: 100%;
  }
}
.indexwork-block {
  width: calc(100% + 10px);
  margin-left: -5px;
  margin-right: -5px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 50px;
}
@media (max-width: 767px) {
  .indexwork-block {
    margin-top: 30px;
  }
}
@media (max-width: 479px) {
  .indexwork-block {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
.indexwork-item {
  width: calc(25% - 10px);
  margin-left: 5px;
  margin-right: 5px;
  position: relative;
  margin-top: 10px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.indexwork-item:nth-child(1) {
  margin-top: 0;
}
.indexwork-item:nth-child(2) {
  margin-top: 0;
}
.indexwork-item:nth-child(3) {
  margin-top: 0;
}
.indexwork-item:nth-child(4) {
  margin-top: 0;
}
@media (max-width: 991px) {
  .indexwork-item {
    width: calc(33.33% - 10px);
  }
  .indexwork-item:nth-child(4) {
    margin-top: 10px;
  }
}
@media (max-width: 767px) {
  .indexwork-item {
    width: calc(50% - 10px);
  }
  .indexwork-item:nth-child(3) {
    margin-top: 10px;
  }
}
@media (max-width: 479px) {
  .indexwork-item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .indexwork-item:nth-child(2) {
    margin-top: 10px;
  }
}
.indexwork-item::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.indexwork-item:hover .indexwork-item__overlay {
  opacity: 1;
}
.indexwork-item__overlay {
  position: absolute;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  left: 10px;
  top: 10px;
  background: rgba(255, 255, 255, 0.9);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  opacity: 0;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}
.indexwork-item__text {
  font-size: 0.9375em;
  color: #333333;
  font-weight: 400;
}
.indexwork-item__subtext {
  font-size: 0.875em;
  color: rgba(242, 17, 92, 0.5);
  font-weight: 300;
  margin-top: 10px;
}

.indexabout {
  margin-top: 70px;
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .indexabout {
    margin-top: 40px;
    padding-bottom: 40px;
  }
}
.indexabout .title-box::before {
  content: "";
  display: block;
  width: 60px;
  height: 59px;
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: 0 0;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 35px;
}
@media (max-width: 767px) {
  .indexabout .title-box::before {
    margin-bottom: 20px;
  }
}
.indexabout-text {
  margin-top: 25px;
  font-size: 1em;
  color: #777777;
  font-weight: 300;
  line-height: 1.75;
  text-align: center;
  width: 800px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 991px) {
  .indexabout-text {
    width: 100%;
  }
}

.indexdress {
  background-image: url("../images/index/indexdress-bg.jpg");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 140px;
  padding-bottom: 110px;
}
@media (max-width: 767px) {
  .indexdress {
    padding-top: 70px;
    padding-bottom: 60px;
  }
}
.indexdress-block {
  background: rgba(255, 255, 255, 0.8);
  padding: 25px 40px;
}
.indexdress-row {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
}
@media (max-width: 991px) {
  .indexdress-row {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.indexdress-col {
  width: 50%;
}
@media (max-width: 991px) {
  .indexdress-col {
    width: 100%;
  }
}
.indexdress-col .title-box {
  text-align: left;
}
.indexdress-col:first-child {
  padding-right: 50px;
}
@media (max-width: 991px) {
  .indexdress-col:first-child {
    padding-right: 0;
  }
}
.indexdress-col:last-child {
  padding-left: 50px;
}
@media (max-width: 991px) {
  .indexdress-col:last-child {
    padding-left: 0;
  }
}
.indexdress-subtitle {
  font-size: 1em;
  color: #333333;
  font-weight: 300;
  padding-top: 60px;
}
.indexdress-text {
  font-size: 0.875em;
  color: #777777;
  font-weight: 300;
  line-height: 1.75;
  padding-top: 15px;
}
.indexdress-text__item {
  margin-top: 10px;
}
.indexdress-text__item:first-child {
  margin-top: 0;
}
.indexdress-btn {
  width: 160px;
  height: 40px;
  border: 1px solid rgba(242, 17, 92, 0.5);
  color: rgba(242, 17, 92, 0.5);
  text-align: center;
  line-height: 40px;
  display: block;
  font-size: 0.9375em;
  font-weight: 400;
  margin-top: 30px;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: color, background;
  transition-property: color, background;
}
@media (max-width: 767px) {
  .indexdress-btn {
    margin-top: 20px;
  }
}
.indexdress-btn:hover {
  background: rgba(242, 17, 92, 0.5);
  color: #fff;
}

.indexinfo {
  padding-top: 65px;
  padding-bottom: 65px;
}
@media (max-width: 767px) {
  .indexinfo {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.indexinfo-block {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
}
@media (max-width: 991px) {
  .indexinfo-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.indexinfo-img {
  width: 500px;
  text-align: right;
}
@media (max-width: 1199px) {
  .indexinfo-img {
    width: 400px;
  }
}
@media (max-width: 991px) {
  .indexinfo-img {
    width: 100%;
    text-align: center;
    margin-top: 40px;
  }
}
.indexinfo-img img {
  max-width: 100%;
}
.indexinfo-right {
  width: calc(100% - 500px);
  padding-left: 60px;
  text-align: left;
}
@media (max-width: 1199px) {
  .indexinfo-right {
    width: calc(100% - 400px);
  }
}
@media (max-width: 991px) {
  .indexinfo-right {
    width: 100%;
    padding-left: 0;
  }
}
.indexinfo-right .title-box {
  text-align: left;
}
.indexinfo-right__text {
  font-size: 1em;
  color: #777777;
  font-weight: 300;
  line-height: 1.625;
  margin-top: 25px;
}
.indexinfo-right__text a {
  color: #777777;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: color;
  transition-property: color;
}
.indexinfo-right__text a:hover {
  color: #FF7BB1;
}
.indexinfo-right__btn {
  width: 160px;
  height: 40px;
  border: 1px solid rgba(242, 17, 92, 0.5);
  color: rgba(242, 17, 92, 0.5);
  font-weight: 400;
  font-size: 0.9375em;
  display: block;
  text-align: center;
  line-height: 40px;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: background, color;
  transition-property: background, color;
  margin-top: 30px;
}
@media (max-width: 767px) {
  .indexinfo-right__btn {
    margin-top: 20px;
  }
}
.indexinfo-right__btn:hover {
  color: #fff;
  background: #FF7BB1;
}

.indexmap {
  height: 400px;
}
@media (max-width: 575px) {
  .indexmap {
    height: 250px;
  }
}

.aboutbanner {
  min-height: 700px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  padding-top: 140px;
  padding-bottom: 115px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 991px) {
  .aboutbanner {
    padding-top: 40px;
  }
}
@media (max-width: 767px) {
  .aboutbanner {
    min-height: 400px;
    padding-bottom: 90px;
  }
}
.aboutbanner::after {
  content: "";
  display: block;
  width: 100%;
  height: 135px;
  background-position: center center;
  background-repeat: repeat-x;
  background-size: auto;
  background-image: url("../images/about/aboutbanner-bg.png");
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
@media (max-width: 767px) {
  .aboutbanner::after {
    height: 80px;
    background-size: auto 100%;
  }
}
.aboutbanner-block {
  text-align: center;
}
.aboutbanner-title {
  font-size: 115px;
  font-weight: 400;
  color: #ffffff;
  font-family: "Dancing Script", "Lato", "Noto Sans CJK TC", "微軟正黑體", "Microsoft JhengHei", cursive;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  text-align: center;
}
@media (max-width: 767px) {
  .aboutbanner-title {
    font-size: 70px;
  }
}
.aboutbanner-info {
  font-size: 16px;
  font-weight: 300;
  color: #ffffff;
  line-height: 2;
  text-align: center;
  padding-top: 40px;
}
@media (max-width: 767px) {
  .aboutbanner-info {
    padding-top: 20px;
  }
}
@media (max-width: 575px) {
  .aboutbanner-info {
    text-align: left;
  }
}
.aboutbanner-info a {
  color: #fff;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.aboutbanner-info a:hover {
  opacity: 0.8;
}
.aboutbanner-btn {
  margin-top: 35px;
  height: 40px;
  padding: 0 23px;
  font-size: 15px;
  font-weight: 400;
  color: #fff;
  line-height: 40px;
  border: 1px solid #fff;
  display: inline-block;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: color, border-color, background;
  transition-property: color, border-color, background;
}
@media (max-width: 767px) {
  .aboutbanner-btn {
    margin-top: 30px;
  }
}
.aboutbanner-btn:hover {
  color: #fff;
  border-color: #FF7BB1;
  background: #FF7BB1;
}

.about {
  padding-top: 30px;
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .about {
    padding-bottom: 40px;
  }
}
.about .title-box {
  text-align: left;
}
.about-subtitle {
  font-size: 17px;
  font-weight: 400;
  color: rgba(242, 17, 92, 0.5);
  line-height: 1.6;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 15px;
}
@media (max-width: 767px) {
  .about-subtitle {
    font-size: 16px;
  }
}
.about-text {
  padding-top: 20px;
}
.about-text__title {
  margin-bottom: 30px;
  font-weight: 500;
  color: #555;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
.about-text__img {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  position: relative;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
@media (max-width: 576px) {
  .about-text__img {
    width: 90px;
    height: 90px;
  }
}
.about-text__img:after {
  content: "";
  width: 135px;
  height: 135px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border: 1px solid #ddd;
  border-radius: 50%;
}
@media (max-width: 576px) {
  .about-text__img:after {
    width: 100px;
    height: 100px;
  }
}
.about-text__img--photography {
  background-image: url("../images/about/photography-intro.jpg");
}
.about-text__img--stylist {
  background-image: url("../images/about/stylist-intro.jpg");
}
.about-text__item {
  padding-top: 20px;
  font-size: 16px;
  font-weight: 300;
  color: #777777;
  line-height: 2;
  padding-left: 20px;
  text-align: justify;
}
@media (max-width: 767px) {
  .about-text__item {
    font-size: 14px;
  }
}
.about-text__item:first-child {
  padding-top: 0;
}
.about-item--active .about-item__head::after {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -85px -26px;
}
.about-item--active .about-item__body {
  display: block;
}
.about-item__head {
  font-size: 16px;
  font-weight: 400;
  color: #333333;
  padding-top: 30px;
  padding-bottom: 15px;
  border-bottom: 1px solid #999999;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  cursor: pointer;
  line-height: 1.2;
  text-align: justify;
}
.about-item__head::after {
  content: "";
  display: block;
  width: 10px;
  min-width: 10px;
  height: 6px;
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -85px -20px;
  margin-left: 10px;
}
.about-item__body {
  padding-left: 20px;
  padding-top: 10px;
  padding-bottom: 10px;
  display: none;
}
.about-item__text {
  font-size: 14px;
  font-weight: 300;
  color: #777777;
  line-height: 1.8;
  text-align: justify;
  margin-top: 20px;
}
.about-item__text:first-child {
  margin-top: 0;
}
.about-item__text .bold {
  font-weight: 700;
}
.about-item__text .bold span {
  color: #cd232c;
}

.news {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .news {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.news-block {
  width: 940px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1199px) {
  .news-block {
    width: 100%;
  }
}
.news-item {
  text-align: center;
  padding-bottom: 68px;
  background-image: url("../images/news/newsbg.jpg");
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 8px;
  padding-top: 60px;
}
@media (max-width: 767px) {
  .news-item {
    padding-top: 30px;
    padding-bottom: 38px;
  }
}
.news-item:first-child {
  padding-top: 0;
}
.news-item__title {
  font-size: 1.5625em;
  font-weight: 400;
  color: #222222;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.news-item__title:hover {
  opacity: 0.8;
}
.news-item__date {
  font-size: 0.875em;
  font-weight: 400;
  color: rgba(242, 17, 92, 0.5);
  margin-top: 35px;
}
@media (max-width: 767px) {
  .news-item__date {
    margin-top: 20px;
  }
}
.news-item__img {
  margin-top: 30px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
}
@media (max-width: 767px) {
  .news-item__img {
    margin-top: 15px;
  }
}
.news-item__img::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 50%;
}
.news-item__text {
  font-size: 0.875em;
  font-weight: 300;
  color: #777777;
  margin-top: 35px;
  line-height: 1.8em;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-height: 3.6em;
}
@media (max-width: 767px) {
  .news-item__text {
    margin-top: 20px;
  }
}
.news-item__link {
  font-size: 0.75em;
  font-weight: 400;
  color: rgba(242, 17, 92, 0.5);
  border-bottom: 1px dashed rgba(242, 17, 92, 0.5);
  padding-bottom: 4px;
  margin-top: 35px;
  display: inline-block;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: color;
  transition-property: color;
}
@media (max-width: 767px) {
  .news-item__link {
    margin-top: 20px;
  }
}
.news-item__link:hover {
  color: #333333;
}
.news-pages {
  text-align: center;
  padding-top: 40px;
}
@media (max-width: 767px) {
  .news-pages {
    padding-top: 30px;
  }
}

.insidenews {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .insidenews {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.insidenews-body {
  width: 770px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1199px) {
  .insidenews-body {
    width: 100%;
  }
}
.insidenews-footer {
  width: 938px;
  margin-left: auto;
  margin-right: auto;
  background-image: url("../images/news/newsbg.jpg");
  background-position: top left;
  background-repeat: repeat-x;
  background-size: auto 8px;
  padding-top: 46px;
  margin-top: 30px;
}
@media (max-width: 1199px) {
  .insidenews-footer {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .insidenews-footer {
    margin-top: 15px;
    padding-top: 28px;
  }
}
.insidenews-footer__linkbox {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.insidenews-footer__link {
  width: 14px;
  height: 14px;
  display: block;
  margin-left: 10px;
  margin-right: 10px;
}
.insidenews-footer__link::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
.insidenews-footer__link--fb::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -70px -60px;
}
.insidenews-footer__link--fb:hover::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -70px -74px;
}
.insidenews-footer__link--line::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -56px -60px;
}
.insidenews-footer__link--line:hover::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -56px -74px;
}
.insidenews-footer__link--google::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -84px -60px;
}
.insidenews-footer__link--google:hover::before {
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -84px -74px;
}
.insidenews-footer__btn {
  width: 155px;
  height: 40px;
  font-size: 1em;
  font-weight: 400;
  color: rgba(242, 17, 92, 0.5);
  border: 1px solid rgba(242, 17, 92, 0.5);
  display: block;
  text-align: center;
  line-height: 40px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: background;
  transition-property: background;
}
@media (max-width: 767px) {
  .insidenews-footer__btn {
    margin-top: 20px;
  }
}
.insidenews-footer__btn:hover {
  background: rgba(242, 17, 92, 0.05);
}

.ckeditor-body {
  line-height: 26px;
  color: #777;
  font-weight: 300;
}
.ckeditor-body h1, .ckeditor-body h2, .ckeditor-body h3, .ckeditor-body h4, .ckeditor-body h5, .ckeditor-body h6, .ckeditor-body strong {
  font-weight: 500;
}
.ckeditor-body h1 {
  font-size: 24px;
}
.ckeditor-body h2 {
  font-size: 22px;
}
.ckeditor-body h3 {
  font-size: 20px;
}
.ckeditor-body h4 {
  font-size: 18px;
}
.ckeditor-body h5 {
  font-size: 15px;
}
.ckeditor-body h6 {
  font-size: 14px;
}
.ckeditor-body p {
  padding-top: 15px;
  padding-bottom: 15px;
  color: #777;
  font-weight: 300;
  margin-bottom: 0;
  font-size: 14px;
}
.ckeditor-body p:first-child {
  padding-top: 0;
}
.ckeditor-body p:last-child {
  padding-bottom: 0;
}
.ckeditor-body img {
  max-width: 100%;
}
.ckeditor-body a {
  color: rgba(242, 17, 92, 0.5);
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.ckeditor-body a:hover {
  color: #777;
}
.ckeditor-body table {
  border-collapse: collapse;
  margin-right: auto;
  margin-left: auto;
}
.ckeditor-body th, .ckeditor-body td, .ckeditor-body table {
  border: 1px solid #dddddd;
}
.ckeditor-body td {
  padding: 10px 5px;
  font-size: 14px;
}
.ckeditor-body ul li {
  list-style-type: disc;
  font-size: 14px;
}
.ckeditor-body ol li {
  list-style: decimal;
  font-size: 14px;
}
.ckeditor-body ul, .ckeditor-body ol {
  margin-left: 20px;
  margin-bottom: 0;
  padding-top: 15px;
  padding-bottom: 15px;
}
.ckeditor-body blockquote {
  border-left: 6px solid rgba(242, 17, 92, 0.2);
  background: rgba(255, 255, 255, 0.6);
  color: #fff;
  padding: 10px 15px;
  margin-top: 15px;
  margin-bottom: 15px;
}
.ckeditor-body blockquote p {
  color: #777;
  font-size: 16px;
  padding-top: 0;
  padding-bottom: 0;
}
.ckeditor-body iframe {
  height: 450px;
}
@media (max-width: 991px) {
  .ckeditor-body iframe {
    height: 350px;
  }
}
@media (max-width: 575px) {
  .ckeditor-body iframe {
    height: 250px;
  }
}
@media (max-width: 479px) {
  .ckeditor-body iframe {
    height: 200px;
  }
}

.product {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .product {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.product-tab {
  margin-top: -30px;
  text-align: center;
}
@media (max-width: 767px) {
  .product-tab {
    margin-top: -15px;
  }
}
.product-tab__item {
  font-size: 0.9375em;
  font-weight: 300;
  color: #777777;
  margin-top: 30px;
  line-height: 1.2;
  display: inline-block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (max-width: 767px) {
  .product-tab__item {
    margin-top: 15px;
  }
}
.product-tab__item::after {
  content: "|";
  color: #DDDDDD;
  padding-left: 15px;
  margin-right: 15px;
}
.product-tab__item:hover {
  opacity: 0.8;
}
.product-tab__item--active {
  color: #FF7BB1;
}
.product-tab__item:last-child::after {
  display: none;
}
.product-block {
  margin-top: 60px;
}
@media (max-width: 767px) {
  .product-block {
    margin-top: 20px;
  }
}
.product-item {
  width: calc(25% - 10px);
  position: relative;
  margin-left: 5px;
  margin-right: 5px;
  margin-top: 10px;
}
@media (max-width: 1199px) {
  .product-item {
    width: calc(33.33% - 10px);
  }
}
@media (max-width: 575px) {
  .product-item {
    width: calc(50% - 10px);
  }
}
.product-item:hover .product-item__overlay {
  opacity: 1;
}
.product-item__img img {
  width: 100%;
}
.product-item__overlay {
  position: absolute;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  left: 10px;
  top: 10px;
  background: rgba(255, 255, 255, 0.9);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  opacity: 0;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}
.product-item__text {
  font-size: 0.9375em;
  color: #333333;
  font-weight: 400;
}
.product-item__subtext {
  font-size: 0.875em;
  color: rgba(242, 17, 92, 0.5);
  font-weight: 300;
  margin-top: 10px;
}
.product-pages {
  text-align: center;
  padding-top: 40px;
}
@media (max-width: 767px) {
  .product-pages {
    padding-top: 30px;
  }
}

.insideproduct {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .insideproduct {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.insideproduct-block {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
}
@media (max-width: 991px) {
  .insideproduct-block {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.insideproduct-img {
  width: 770px;
}
@media (max-width: 1199px) {
  .insideproduct-img {
    width: 600px;
  }
}
@media (max-width: 991px) {
  .insideproduct-img {
    width: 100%;
  }
}
.insideproduct-img__item {
  margin-top: 40px;
}
@media (max-width: 767px) {
  .insideproduct-img__item {
    margin-top: 15px;
  }
}
.insideproduct-img__item img {
  max-width: 100%;
}
.insideproduct-img__item:first-child {
  margin-top: 0;
}
.insideproduct-info {
  font-size: 0.875em;
  font-weight: 300;
  color: #333333;
  line-height: 1.8;
  width: calc(100% - 770px);
  padding-left: 40px;
}
@media (max-width: 1199px) {
  .insideproduct-info {
    width: calc(100% - 600px);
  }
}
@media (max-width: 991px) {
  .insideproduct-info {
    width: 100%;
    padding-left: 0;
    padding-top: 40px;
  }
}
@media (max-width: 991px) and (max-width: 767px) {
  .insideproduct-info {
    padding-top: 15px;
  }
}
.insideproduct-footer {
  width: 770px;
  padding-top: 40px;
}
@media (max-width: 1199px) {
  .insideproduct-footer {
    width: 600px;
  }
}
@media (max-width: 991px) {
  .insideproduct-footer {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .insideproduct-footer {
    padding-top: 20px;
  }
}
.insideproduct-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-top: 1px solid #DDDDDD;
  border-bottom: 1px solid #DDDDDD;
}
.insideproduct-link__item {
  height: 105px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-left: 1px solid #DDDDDD;
}
@media (max-width: 767px) {
  .insideproduct-link__item {
    height: 80px;
  }
}
.insideproduct-link__item:first-child {
  border-left: none;
  width: 190px;
}
.insideproduct-link__item:nth-child(2) {
  width: calc(100% - 380px);
}
@media (max-width: 767px) {
  .insideproduct-link__item:nth-child(2) {
    width: calc(100% - 240px);
  }
}
@media (max-width: 575px) {
  .insideproduct-link__item:nth-child(2) {
    width: calc(100% - 200px);
  }
}
@media (max-width: 374px) {
  .insideproduct-link__item:nth-child(2) .insidenews-footer__link {
    margin-left: 5px;
    margin-right: 5px;
  }
}
.insideproduct-link__item:last-child {
  width: 190px;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.insideproduct-post {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.insideproduct-post--prev {
  width: 100%;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  font-size: 0.875em;
  font-weight: 500;
  color: #000000;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  height: 100%;
}
@media (max-width: 767px) {
  .insideproduct-post--prev {
    width: 120px;
  }
}
@media (max-width: 575px) {
  .insideproduct-post--prev {
    width: 100px;
  }
}
.insideproduct-post--prev::before {
  content: "";
  display: block;
  width: 7px;
  height: 11px;
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -60px -10px;
  margin-right: 15px;
}
@media (max-width: 575px) {
  .insideproduct-post--prev::before {
    margin-right: 5px;
  }
}
.insideproduct-post--prev:hover {
  opacity: 0.8;
}
.insideproduct-post--next {
  width: 100%;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: 0.875em;
  font-weight: 500;
  color: #000000;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media (max-width: 767px) {
  .insideproduct-post--next {
    width: 120px;
  }
}
@media (max-width: 575px) {
  .insideproduct-post--next {
    width: 100px;
  }
}
.insideproduct-post--next::after {
  content: "";
  display: block;
  width: 7px;
  height: 11px;
  background-size: 100px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -67px -10px;
  margin-left: 15px;
}
@media (max-width: 575px) {
  .insideproduct-post--next::after {
    margin-left: 5px;
  }
}
.insideproduct-post--next:hover {
  opacity: 0.8;
}
.insideproduct-socialicon {
  min-height: 105px;
  border-top: 1px solid #DDDDDD;
  border-bottom: 1px solid #DDDDDD;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.insideproduct-btn {
  width: 155px;
  height: 40px;
  font-size: 1em;
  font-weight: 400;
  color: rgba(242, 17, 92, 0.5);
  border: 1px solid rgba(242, 17, 92, 0.5);
  display: block;
  text-align: center;
  line-height: 40px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: background;
  transition-property: background;
}
@media (max-width: 767px) {
  .insideproduct-btn {
    margin-top: 20px;
  }
}
.insideproduct-btn:hover {
  background: rgba(242, 17, 92, 0.05);
}

.price {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .price {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.price-rec {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
}
@media (max-width: 991px) {
  .price-rec {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.price-rec__left {
  width: 380px;
}
@media (max-width: 991px) {
  .price-rec__left {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }
}
.price-rec__right {
  width: calc(100% - 380px);
}
@media (max-width: 991px) {
  .price-rec__right {
    width: 100%;
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .price-rec__right {
    margin-top: 30px;
  }
}
.price-rec__icon {
  width: 45px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 767px) {
  .price-rec__icon {
    width: 35px;
  }
}
.price-rec__icon img {
  width: 100%;
}
.price-rec__title {
  font-size: 22px;
  font-weight: 500;
  color: #333333;
  line-height: 1.5;
  text-align: center;
  margin-top: 40px;
}
@media (max-width: 767px) {
  .price-rec__title {
    font-size: 18px;
    margin-top: 20px;
  }
}
.price-rec__hr {
  width: 240px;
  height: 1px;
  background: #777777;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  margin-bottom: 25px;
}
@media (max-width: 767px) {
  .price-rec__hr {
    margin-top: 15px;
    margin-bottom: 20px;
  }
}
.price-rec__priceitem {
  font-size: 45px;
  font-weight: 400;
  color: #333333;
  text-align: center;
  font-family: "Georgia", "Lato", "Noto Sans CJK TC", "微軟正黑體", "Microsoft JhengHei", sans-serif;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 25px;
  position: relative;
}
@media (max-width: 767px) {
  .price-rec__priceitem {
    font-size: 38px;
  }
}
.price-rec__priceitem::before {
  content: "NT";
  font-size: 20px;
  font-family: "Felix Titling", "Lato", "Noto Sans CJK TC", "微軟正黑體", "Microsoft JhengHei", sans-serif;
}
.price-rec__priceitem--tw::before {
  content: "NT";
}
.price-rec__priceitem--jp::before {
  content: "¥";
}
.price-rec__priceitem::after {
  content: "";
  width: 1px;
  height: 18px;
  background: #f2115c;
  position: absolute;
  bottom: 0;
  left: calc(50% - 6px);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.price-rec__priceitem:last-child {
  padding-bottom: 0;
}
.price-rec__priceitem:last-child::after {
  display: none;
}
.price-rec__btn {
  margin-top: 25px;
  width: 130px;
  height: 40px;
  font-size: 14px;
  font-weight: 300;
  color: #555555;
  line-height: 40px;
  border: 1px solid #dddddd;
  display: block;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: color, border-color, background;
  transition-property: color, border-color, background;
}
.price-rec__btn:hover {
  color: #fff;
  border-color: #FF7BB1;
  background: #FF7BB1;
}
.price-rec__item {
  margin-top: 30px;
}
.price-rec__item:first-child {
  margin-top: 0;
}
.price-rec__subtitle {
  font-size: 18px;
  font-weight: 500;
  color: rgba(242, 17, 92, 0.5);
  line-height: 1.4;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 767px) {
  .price-rec__subtitle {
    font-size: 16px;
  }
}
.price-rec__subtitle--hr::after {
  content: "";
  display: block;
  width: 185px;
  height: 1px;
  background: #777777;
  margin-left: 25px;
}
@media (max-width: 767px) {
  .price-rec__subtitle--hr::after {
    width: 120px;
  }
}
.price-rec__text {
  font-size: 15px;
  font-weight: 300;
  color: #777777;
  line-height: 1.6;
  padding-left: 20px;
  padding-top: 10px;
  text-align: justify;
}
@media (max-width: 767px) {
  .price-rec__text {
    font-size: 14px;
  }
}
.price-block {
  width: calc(100% + 30px);
  margin-left: -15px;
  margin-right: -15px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 150px;
}
@media (max-width: 767px) {
  .price-block {
    padding-top: 40px;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
.price-item {
  width: calc(33.333% - 30px);
  margin-left: 15px;
  margin-right: 15px;
  border: 1px solid #dddddd;
  padding: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 30px;
}
.price-item:nth-child(1) {
  margin-top: 0;
}
.price-item:nth-child(2) {
  margin-top: 0;
}
.price-item:nth-child(3) {
  margin-top: 0;
}
@media (max-width: 991px) {
  .price-item {
    width: calc(50% - 30px);
  }
  .price-item:nth-child(3) {
    margin-top: 30px;
  }
}
@media (max-width: 767px) {
  .price-item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .price-item:nth-child(2) {
    margin-top: 30px;
  }
}
.price-item:hover {
  border-color: #FF7BB1;
}
.price-item:hover .price-item__btn {
  color: #fff;
  border-color: #FF7BB1;
  background: #FF7BB1;
}
.price-item__icon {
  width: 52px;
  margin-left: auto;
  margin-right: auto;
}
.price-item__icon img {
  width: 100%;
}
.price-item__title {
  font-size: 18px;
  font-weight: 500;
  color: #333333;
  line-height: 1.3;
  text-align: center;
  margin-top: 20px;
}
@media (max-width: 767px) {
  .price-item__title {
    font-size: 18px;
    margin-top: 20px;
  }
}
.price-item__hr {
  width: 200px;
  height: 1px;
  background: #dddddd;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .price-item__hr {
    margin-top: 15px;
    margin-bottom: 20px;
  }
}
.price-item__pricebox {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
.price-item__priceitem {
  font-size: 40px;
  font-weight: 400;
  color: #333333;
  text-align: center;
  font-family: "Georgia", "Lato", "Noto Sans CJK TC", "微軟正黑體", "Microsoft JhengHei", sans-serif;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
@media (max-width: 767px) {
  .price-item__priceitem {
    font-size: 32px;
    width: auto;
  }
}
.price-item__priceitem::before {
  content: "NT";
  font-size: 17px;
  font-family: "Felix Titling", "Lato", "Noto Sans CJK TC", "微軟正黑體", "Microsoft JhengHei", sans-serif;
  padding-top: 12px;
}
.price-item__priceitem--tw::before {
  content: "NT";
}
.price-item__priceitem--jp::before {
  content: "¥";
}
.price-item__priceitem::after {
  content: "";
  width: 1px;
  height: 25px;
  background: #dddddd;
  margin-left: 15px;
  margin-right: 15px;
  margin-top: 10px;
}
.price-item__priceitem:last-child::after {
  display: none;
}
.price-item__infobox {
  padding-top: 20px;
}
.price-item__infoitem {
  font-size: 14px;
  font-weight: 300;
  color: #aaaaaa;
  line-height: 1.8;
  text-align: center;
  padding-bottom: 15px;
}
.price-item__infoitem::after {
  content: "";
  display: block;
  background: #dddddd;
  width: 200px;
  height: 1px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
}
.price-item__infoitem:last-child {
  padding-bottom: 0;
}
.price-item__infoitem:last-child::after {
  display: none;
}
.price-item__btn {
  margin-top: 25px;
  width: 130px;
  height: 40px;
  font-size: 14px;
  font-weight: 300;
  color: #555555;
  line-height: 40px;
  border: 1px solid #dddddd;
  display: block;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: color, border-color, background;
  transition-property: color, border-color, background;
}

.contact {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media (max-width: 767px) {
  .contact {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
.contact-body__form {
  padding-top: 65px;
}
@media (max-width: 767px) {
  .contact-body__form {
    padding-top: 30px;
  }
}

.form-row {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 30px;
}
@media (max-width: 575px) {
  .form-row {
    padding-top: 20px;
  }
}
.form-row:first-child {
  padding-top: 0px;
}
.form-item {
  width: 100%;
}
.form-item--two {
  width: calc(50% - 15px);
}
@media (max-width: 575px) {
  .form-item--two {
    width: 100%;
  }
}
.form-item--two:first-child {
  margin-right: 15px;
}
@media (max-width: 575px) {
  .form-item--two:first-child {
    margin-right: 0;
  }
}
.form-item--two:last-child {
  margin-left: 15px;
}
@media (max-width: 575px) {
  .form-item--two:last-child {
    margin-left: 0;
    margin-top: 20px;
  }
}
.form-item--active .form-item__input, .form-item--active .form-item__textarea, .form-item--active .form-item__select {
  border: 1px solid #e50a0a;
}
.form-item--active .form-item__msg {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.form-item__body {
  padding-top: 15px;
}
@media (max-width: 575px) {
  .form-item__body {
    padding-top: 5px;
  }
}
.form-item__msg {
  font-size: 0.9375em;
  color: #e50a0a;
  line-height: 1;
  display: none;
  font-weight: 300;
  margin-top: 5px;
}
.form-item__input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  height: 40px;
  font-size: 1em;
  line-height: 1.5;
  color: #aaaaaa;
  font-weight: 300;
  border: #DDDDDD 1px solid;
  border-radius: 0px;
  padding: 0px 10px;
  outline: none;
  margin-bottom: 0;
}
.form-item__input:focus {
  outline: none;
}
.form-item__label {
  font-weight: 300;
  font-size: 1em;
  color: #555555;
  display: inline-block;
  line-height: 1;
}
.form-item__textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  font-size: 1em;
  line-height: 1.5;
  color: #aaaaaa;
  font-weight: 300;
  border: #DDDDDD 1px solid;
  padding: 10px 10px;
  height: 140px;
  resize: none;
  overflow: auto;
  outline: none;
  border-radius: 0px;
}
.form-item__textarea:focus {
  outline: none;
}
.form-item__selectbox {
  position: relative;
  background-color: #fff;
}
.form-item__selectbox::before {
  content: "";
  display: block;
  position: absolute;
  right: 14px;
  top: calc(50% - 3px);
  background-image: url("../images/arrow.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 8px;
  height: 7px;
}
.form-item__select {
  color: #aaaaaa;
  font-weight: 300;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  height: 40px;
  font-size: 0.9375em;
  line-height: 1.5;
  padding: 0px 28px 0px 10px;
  border: #DDDDDD 1px solid;
  background-color: transparent;
  position: relative;
  border-radius: 0px;
}
.form-item__select::-ms-expand {
  display: none;
}
.form-item__select option {
  font-weight: 300;
  color: #aaaaaa;
}
.form-btn {
  margin-top: 40px;
}
@media (max-width: 767px) {
  .form-btn {
    margin-top: 20px;
  }
}
.form-btn__item {
  margin-left: auto;
  margin-right: auto;
  width: 155px;
  height: 40px;
  padding: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  outline: none;
  cursor: pointer;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  font-size: 1em;
  font-weight: 400;
}
.form-btn__item:hover {
  opacity: 0.8;
}
.form-btn__item-submit {
  background-color: #333333;
  border: #333333;
  color: #fff;
}

.contactmap {
  height: 500px;
}
@media (max-width: 991px) {
  .contactmap {
    height: auto;
  }
}
.contactmap .container {
  position: relative;
}
.contactmap-map {
  width: 100%;
  height: 100%;
}
@media (max-width: 991px) {
  .contactmap-map {
    margin-top: 70px;
    height: 400px;
  }
}
@media (max-width: 767px) {
  .contactmap-map {
    margin-top: 40px;
  }
}
@media (max-width: 575px) {
  .contactmap-map {
    height: 250px;
  }
}
.contactmap-block {
  position: absolute;
  top: 115px;
  left: 0;
  z-index: 9999;
  background: #fff;
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.25);
          box-shadow: 0 0 15px rgba(0, 0, 0, 0.25);
  padding: 30px 25px;
  border-top-right-radius: 50px;
  width: 450px;
}
@media (max-width: 991px) {
  .contactmap-block {
    position: relative;
    top: auto;
    left: auto;
    border-top-right-radius: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    border: 1px solid #DDDDDD;
    width: 100%;
  }
}
@media (max-width: 575px) {
  .contactmap-block {
    padding: 15px;
  }
}
.contactmap-logo img {
  width: 114px;
}
.contactmap-info {
  padding-top: 20px;
  font-size: 14px;
  color: #777777;
  font-weight: 300;
  line-height: 1.8;
}
.contactmap-info a {
  color: #777777;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: color;
  transition-property: color;
}
.contactmap-info a:hover {
  color: #FF7BB1;
}
.contactmap-info__title {
  color: #555555;
  font-weight: 400;
}