@charset "UTF-8";
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%;
}

@-webkit-keyframes ani-circle-green {
  0% {
    -webkit-transform: translateY(1500px);
            transform: translateY(1500px);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    opacity: 1;
  }
}

@keyframes ani-circle-green {
  0% {
    -webkit-transform: translateY(1500px);
            transform: translateY(1500px);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    opacity: 1;
  }
}

@-webkit-keyframes ani-circle-orange {
  0% {
    -webkit-transform: translateY(-1500px);
            transform: translateY(-1500px);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    opacity: 1;
  }
}

@keyframes ani-circle-orange {
  0% {
    -webkit-transform: translateY(-1500px);
            transform: translateY(-1500px);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    opacity: 1;
  }
}

@-webkit-keyframes ani-circle-blue {
  0% {
    -webkit-transform: translateX(-2000px);
            transform: translateX(-2000px);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    opacity: 1;
  }
}

@keyframes ani-circle-blue {
  0% {
    -webkit-transform: translateX(-2000px);
            transform: translateX(-2000px);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    opacity: 1;
  }
}

@-webkit-keyframes ani-circle-blue-sm {
  0% {
    -webkit-transform: translateX(-800px);
            transform: translateX(-800px);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    opacity: 1;
  }
}

@keyframes ani-circle-blue-sm {
  0% {
    -webkit-transform: translateX(-800px);
            transform: translateX(-800px);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    opacity: 1;
  }
}

@-webkit-keyframes ani-loading {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes ani-loading {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes ani-header {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}

@keyframes ani-header {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}

@-webkit-keyframes ani-t2b {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes ani-t2b {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

.form--style2 {
  padding-top: 120px;
}

@media (max-width: 991px) {
  .form--style2 {
    padding-top: 0;
  }
}

.form__row {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: calc(100% + 20px);
  margin-left: -10px;
  margin-right: -10px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 30px;
}

@media (max-width: 767px) {
  .form__row {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-top: 15px;
  }
}

.form__row:first-child {
  margin-top: 0;
}

.form__row--colspan .form__col {
  width: 100%;
}

.form__col {
  width: calc(50% - 20px);
  margin-left: 10px;
  margin-right: 10px;
  text-align: left;
}

@media (max-width: 767px) {
  .form__col {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-top: 15px;
  }
  .form__col:first-child {
    margin-top: 0;
  }
}

.form__label {
  font-weight: 500;
  font-size: 1em;
  color: #602b2b;
  position: relative;
  display: inline-block;
  margin-bottom: 5px;
}

.form__label.focus::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  background: #ea5a5a;
  border-radius: 100em;
  position: absolute;
  top: 4px;
  right: -10px;
}

.form__input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  height: 50px;
  font-size: 1.125em;
  font-weight: 500;
  background: -webkit-gradient(linear, left top, left bottom, from(#eef1f5), to(#e6e9f0));
  background: linear-gradient(to bottom, #eef1f5 0%, #e6e9f0 100%);
  color: #4d4d4d;
  line-height: 1.5;
  border: none;
  padding: 0px 15px;
  border-radius: 100em;
}

@media (max-width: 767px) {
  .form__input {
    font-size: 1em;
  }
}

.form__input:focus {
  border: 1px solid #ea5a5a;
  background: white;
}

.form__input:disabled, .form__input [disabled] {
  color: #888;
  cursor: not-allowed;
  -webkit-text-fill-color: #888;
  opacity: 1;
}

.form__input::-webkit-input-placeholder {
  color: #b1b5bf;
}

.form__input::-moz-placeholder {
  color: #b1b5bf;
}

.form__input:-ms-input-placeholder {
  color: #b1b5bf;
}

.form__input::-ms-input-placeholder {
  color: #b1b5bf;
}

.form__input::placeholder {
  color: #b1b5bf;
}

.form__textarea {
  border: none;
  font-size: 1.125em;
  font-weight: 500;
  background: -webkit-gradient(linear, left top, left bottom, from(#eef1f5), to(#e6e9f0));
  background: linear-gradient(to bottom, #eef1f5 0%, #e6e9f0 100%);
  color: #4d4d4d;
  border-radius: 6px;
  padding: 20px 15px;
  resize: none;
  width: 100%;
  height: 134px;
}

@media (max-width: 767px) {
  .form__textarea {
    font-size: 1em;
  }
}

.form__textarea:focus {
  border: 1px solid #ea5a5a;
  background: white;
}

.form__textarea:disabled, .form__textarea [disabled] {
  color: #888;
  cursor: not-allowed;
  -webkit-text-fill-color: #888;
  opacity: 1;
}

.form__textarea::-webkit-input-placeholder {
  color: #b1b5bf;
}

.form__textarea::-moz-placeholder {
  color: #b1b5bf;
}

.form__textarea:-ms-input-placeholder {
  color: #b1b5bf;
}

.form__textarea::-ms-input-placeholder {
  color: #b1b5bf;
}

.form__textarea::placeholder {
  color: #b1b5bf;
}

.form__selectitem {
  position: relative;
  background: -webkit-gradient(linear, left top, left bottom, from(#eef1f5), to(#e6e9f0));
  background: linear-gradient(to bottom, #eef1f5 0%, #e6e9f0 100%);
  border-radius: 100em;
  height: 50px;
}

@media (max-width: 374px) {
  .form__selectitem {
    margin-left: 0;
    margin-top: 10px;
    margin-top: 0;
  }
}

.form__selectitem:first-child {
  margin-left: 0;
}

.form__selectitem::after {
  content: "";
  display: block;
  position: absolute;
  right: 15px;
  top: calc(50% - 7px);
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -127px 0;
  width: 14px;
  height: 12px;
  z-index: 1;
}

.form__select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  height: 50px;
  font-size: 1.125em;
  font-weight: 500;
  background: transparent;
  color: #4d4d4d;
  line-height: 1.5;
  border: none;
  padding: 0px 15px;
  border-radius: 100em;
  position: relative;
  z-index: 2;
}

@media (max-width: 767px) {
  .form__select {
    font-size: 1em;
  }
}

.form__select:focus {
  border: 1px solid #ea5a5a;
  background: white;
}

.form__select:disabled, .form__select [disabled] {
  color: #888;
  cursor: not-allowed;
  -webkit-text-fill-color: #888;
  opacity: 1;
}

.form__select::-ms-expand {
  display: none;
}

.form__address {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: calc(100% + 10px);
  margin-left: -5px;
  margin-right: -5px;
}

@media (max-width: 767px) {
  .form__address {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.form__address-item {
  margin-left: 5px;
  margin-right: 5px;
}

.form__address-item:first-child, .form__address-item:nth-child(2), .form__address-item:nth-child(3) {
  width: calc(( 50% - 25px) / 3);
}

@media (max-width: 767px) {
  .form__address-item:first-child, .form__address-item:nth-child(2), .form__address-item:nth-child(3) {
    width: calc( 33.33% - 10px);
  }
}

@media (max-width: 480px) {
  .form__address-item:first-child, .form__address-item:nth-child(2), .form__address-item:nth-child(3) {
    width: calc( ( 100% - 110px) / 2);
  }
}

@media (max-width: 480px) {
  .form__address-item:first-child {
    width: 80px;
  }
}

.form__address-item:last-child {
  width: calc( 50% - 15px);
}

@media (max-width: 767px) {
  .form__address-item:last-child {
    width: 100%;
    margin-top: 10px;
  }
}

.form__file {
  width: calc(100% + 10px);
  margin-left: -5px;
  margin-right: -5px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

@media (max-width: 767px) {
  .form__file {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.form__file-item {
  margin-left: 5px;
  margin-right: 5px;
  position: relative;
}

.form__file-item:first-child, .form__file-item:nth-child(2) {
  width: calc(( 50% - 25px) / 3);
}

@media (max-width: 991px) {
  .form__file-item:first-child, .form__file-item:nth-child(2) {
    width: 30%;
  }
}

@media (max-width: 767px) {
  .form__file-item:first-child, .form__file-item:nth-child(2) {
    width: calc( 50% - 10px);
  }
}

@media (max-width: 767px) {
  .form__file-item:last-child {
    width: 100%;
  }
}

.form__file-item input {
  opacity: 0;
  position: relative;
  z-index: 2;
  height: 50px;
}

.form__file-btn {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  font-size: 1.125em;
  font-weight: 500;
  color: #4d4d4d;
  text-align: right;
  line-height: 50px;
  height: 50px;
  width: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#eef1f5), to(#e6e9f0));
  background: linear-gradient(to bottom, #eef1f5 0%, #e6e9f0 100%);
  border-radius: 100em;
  text-align: center;
}

@media (max-width: 767px) {
  .form__file-btn {
    font-size: 1em;
  }
}

.form__file-btn::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 24px;
  position: absolute;
  top: calc(50% - 12px);
  right: 18px;
}

@media (max-width: 374px) {
  .form__file-btn::before {
    right: 10px;
  }
}

.form__file-btn.upload {
  padding-right: 30px;
}

.form__file-btn.upload::before {
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: 0 -47px;
}

.form__file-btn.download {
  background: #602b2b;
  color: #fff;
  font-size: 1em;
  padding-right: 30px;
}

.form__file-btn.download::before {
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -20px -47px;
}

.form__file-name {
  margin-top: 5px;
  width: 200%;
  word-break: break-all;
}

.form__file-text {
  font-size: 1em;
  color: #ea5a5a;
  line-height: 1.5;
  margin-top: -22px;
  margin-bottom: -22px;
}

@media (max-width: 767px) {
  .form__file-text {
    margin-top: 5px;
    margin-bottom: 0;
  }
}

.form__check {
  width: 100%;
}

.form__check .form__checkbox {
  display: none;
}

.form__check .form__checkbox:checked + label::after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  left: 0px;
  top: 5px;
  z-index: 2;
  background: url("../images/common/check.svg");
  background-size: auto;
  background-position: center top;
  background-repeat: no-repeat;
}

.form__check .form__checklabel {
  display: inline-block;
  font-size: 0.9375em;
  color: #4d4d4d;
  font-weight: 500;
  cursor: pointer;
  position: relative;
  padding-left: 20px;
}

@media (max-width: 767px) {
  .form__check .form__checklabel {
    font-size: 1em;
  }
}

.form__check .form__checklabel::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 1px solid #d5d8df;
  background-color: #ffffff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 5px;
  left: 0;
  z-index: 1;
}

.form__check .form__checklabel span {
  display: inline-block;
  line-height: 1.5;
}

.form__check .form__checklabel a {
  color: #602b2b;
  text-decoration: underline;
  -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;
}

.form__check .form__checklabel a:hover {
  color: #ea5a5a;
}

.form__btn {
  margin-top: 25px;
}

.form__btn--style2 {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.form__btn--style2 .btn {
  margin-left: 30px;
}

@media (max-width: 767px) {
  .form__btn--style2 .btn {
    margin-left: 15px;
  }
}

.form__btn--style2 .btn:first-child {
  margin-left: 0;
}

.btn {
  width: 186px;
  height: 46px;
  line-height: 46px;
  font-size: 1.25em;
  font-weight: 700;
  color: #fff;
  background: #a9d67e;
  display: inline-block;
  border: none;
  border-radius: 10px;
  -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;
  cursor: pointer;
}

@media (max-width: 767px) {
  .btn {
    font-size: 1.125em;
  }
}

.btn:hover {
  background: #ea5a5a;
}

.btn.gray {
  background: #b9beca;
  cursor: pointer;
}

body {
  font-family: "Noto Sans TC", "微軟正黑體", sans-serif;
  color: #222222;
  margin: 0 auto;
  font-weight: 400;
  line-height: 1.2;
  position: relative;
  overflow-x: hidden;
}

select, button, textarea, input {
  font-family: "Noto Sans TC", "微軟正黑體", sans-serif;
  outline: none;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-text-size-adjust: none;
}

table {
  border-collapse: collapse;
}

a, a:focus {
  cursor: pointer;
  text-decoration: none;
  -webkit-transition: color 300ms;
  transition: color 300ms;
}

a:active {
  outline: none;
}

img {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  max-width: 100%;
}

.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: 1140px;
  }
}

@media (min-width: 1400px) {
  .container {
    width: 1350px;
  }
}

.container--sm {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 768px) {
  .container--sm {
    width: 750px;
    padding-right: 0px;
    padding-left: 0px;
  }
}

@media (min-width: 992px) {
  .container--sm {
    width: 970px;
  }
}

@media (min-width: 1200px) {
  .container--sm {
    width: 1020px;
  }
}

.header {
  position: absolute !important;
  top: 0;
  left: 0;
  z-index: 1030;
  width: 100%;
}

.header.index {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  height: 84px;
  padding-top: 0;
}

@media (max-width: 991px) {
  .header.index {
    padding-bottom: 0;
    height: 63px;
  }
  .header.index.navbar--active {
    height: 100%;
  }
}

.header.animated {
  display: block;
  opacity: 0;
  visibility: hidden;
  -webkit-animation: ani-header 0.5s ease;
          animation: ani-header 0.5s ease;
  -webkit-animation-delay: 2.5s;
          animation-delay: 2.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  pointer-events: all;
}

@media (min-width: 1200px) {
  .header.single {
    -webkit-box-shadow: 0 0 10px rgba(221, 221, 221, 0.7);
            box-shadow: 0 0 10px rgba(221, 221, 221, 0.7);
  }
}

.navbar {
  background: #fffcf5;
  text-align: center;
}

@media (max-width: 1699px) {
  .navbar {
    background-position: 30% top;
  }
}

@media (max-width: 991px) {
  .navbar {
    background: #005bab;
  }
}

@media (max-width: 991px) {
  .navbar--active .navbar__toggle-item:first-child {
    top: 17px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .navbar--active .navbar__toggle-item:nth-child(2) {
    display: none;
  }
  .navbar--active .navbar__toggle-item:last-child {
    top: 17px;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}

.navbar--active .navbar__overlay {
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  background: #fffcf5;
}

@media (min-width: 992px) {
  .navbar--active .navbar__overlay {
    display: none;
  }
}

@media (max-width: 991px) {
  .navbar--active .navbar__body {
    top: 62px;
  }
}

.navbar__hidden {
  display: none;
}

.navbar__block {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 1500px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 21px 0;
}

@media (max-width: 1699px) {
  .navbar__block {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media (max-width: 991px) {
  .navbar__block {
    padding: 10px 15px;
  }
}

@media (max-width: 991px) {
  .navbar__head {
    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;
    min-height: 43px;
    z-index: 11;
    position: relative;
  }
  .navbar__head::before {
    content: "";
    display: block;
    width: calc(100% + 30px);
    margin-left: -15px;
    margin-right: -15px;
    height: 64px;
    background: #fffcf5;
    background-size: auto 100%;
    background-position: 25% top;
    background-repeat: no-repeat;
    position: absolute;
    top: -10px;
    left: 0;
    z-index: 2;
  }
}

@media (max-width: 767px) {
  .navbar__head::before {
    background-position: 15% top;
  }
}

.navbar__logo {
  position: relative;
  z-index: 5;
  display: inline-block;
  width: 208px;
}

@media (max-width: 991px) {
  .navbar__logo {
    width: 190px;
  }
}

@media (max-width: 374px) {
  .navbar__logo {
    width: 140px;
  }
}

.navbar__logo img {
  width: 100%;
  max-width: 100%;
  display: block;
}

.navbar__toggle {
  width: 30px;
  height: 40px;
  cursor: pointer;
  position: relative;
  z-index: 5;
  display: none;
}

@media (max-width: 991px) {
  .navbar__toggle {
    display: block;
  }
}

.navbar__toggle-item {
  display: block;
  width: 30px;
  height: 2px;
  background: #005bab;
  position: absolute;
  top: 9px;
  left: 0;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

.navbar__toggle-item:nth-child(2) {
  top: 20px;
}

.navbar__toggle-item:last-child {
  top: 32px;
}

.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 {
    position: absolute;
    top: -100vh;
    right: 0;
    z-index: 3;
    -webkit-transition-timing-function: ease;
            transition-timing-function: ease;
    -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s;
    background: #fffcf5;
    overflow-x: hidden;
    overflow-y: auto;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: calc(100vh - 100px);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding: 0;
    padding-bottom: 10px;
  }
  .navbar__body::before {
    display: none;
  }
}

.navbar__links {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 1;
}

@media (max-width: 991px) {
  .navbar__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
    padding-top: 10px;
  }
}

.navbar__link {
  display: block;
  position: relative;
  font-size: 1.25em;
  font-weight: 700;
  color: #ffffff !important;
  letter-spacing: 0.2em;
  text-align: center;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  margin-left: 10px;
  width: 177px;
  height: 45px;
  padding-top: 15px;
}

@media (max-width: 991px) {
  .navbar__link {
    margin-left: 0;
    margin-top: 10px;
  }
}

@media (min-width: 992px) {
  .navbar__link:hover {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
}

.navbar__link:first-child {
  margin-left: 0;
}

@media (max-width: 991px) {
  .navbar__link:first-child {
    margin-top: 0;
  }
}

.navbar__link.blue {
  background: url("../images/navbar-item-blue.svg");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  width: 218px;
}

.navbar__link.orange {
  background: url("../images/navbar-item-orange.svg");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  color: #fff;
}

.navbar__link.green {
  background: url("../images/navbar-item-green.svg");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
}

.navbar__link-item.sm {
  letter-spacing: 0;
  font-size: 0.8em;
}

.navbar__socials {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 15px;
}

@media (max-width: 991px) {
  .navbar__socials {
    margin-left: 0;
    margin-top: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.navbar__social {
  display: inline-block;
  width: 40px;
  height: 40px;
  margin-left: 10px;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (max-width: 991px) {
  .navbar__social {
    margin-left: 0;
    margin-top: 10px;
  }
}

.navbar__social:hover {
  opacity: 0.8;
}

.navbar__social:first-child {
  margin-left: 0;
}

@media (max-width: 991px) {
  .navbar__social:first-child {
    margin-top: 0;
  }
}

.navbar__social.home {
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: 0 0;
}

.navbar__social.fb {
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -40px 0;
}

.navbar__social.ig {
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -80px 0;
}

.navbar .jsNavList .navbar__link-item:last-child {
  display: none;
}

.navbar .jsNavList:hover .navbar__link-item:first-child {
  display: none;
}

.navbar .jsNavList:hover .navbar__link-item:last-child {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.footer {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
  background: #005bab;
  text-align: center;
}

@media (max-width: 767px) {
  .footer {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
}

.footer.index {
  height: auto;
  display: none;
}

.footer__text {
  font-size: 1em;
  font-weight: 300;
  color: white;
  line-height: 1.4;
  text-align: center;
}

@media (max-width: 767px) {
  .footer__text {
    width: 100%;
    font-size: 0.875em;
  }
}

.index {
  text-align: center;
  overflow: hidden;
  height: 980px;
  position: relative;
  padding-top: 180px;
  background: #fffcf5;
}

@media (max-width: 1699px) {
  .index {
    padding-top: 220px;
  }
}

@media (max-width: 1399px) {
  .index {
    height: 900px;
  }
}

@media (max-width: 1199px) {
  .index {
    padding-top: 260px;
  }
}

@media (max-width: 991px) {
  .index {
    height: 1024px;
    padding-top: 260px;
  }
}

@media (max-width: 767px) {
  .index {
    padding-top: 65px;
    height: auto;
    padding-bottom: 10vw;
  }
}

@media (max-width: 480px) {
  .index {
    padding-bottom: 18vw;
  }
}

.index .container {
  position: relative;
  z-index: 4;
}

.index.animated .index__circle-item.green, .index.animated .index__circle-item.orange, .index.animated .index__circle-item.blue {
  -webkit-animation-play-state: running;
          animation-play-state: running;
}

.index__title {
  background: url("../images/index/index-title.png");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  width: 940px;
  height: 340px;
  margin: 0 auto;
  opacity: 0;
  -webkit-animation: zoomIn 1s ease;
          animation: zoomIn 1s ease;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  text-indent: -9999px;
  position: relative;
  z-index: 2;
}

@media (max-width: 1399px) {
  .index__title {
    width: 700px;
    height: 255px;
  }
}

@media (max-width: 1199px) {
  .index__title {
    width: 600px;
    height: 220px;
  }
}

@media (max-width: 767px) {
  .index__title {
    width: 440px;
    height: 160px;
  }
}

@media (max-width: 480px) {
  .index__title {
    width: 330px;
    height: 120px;
  }
}

@media (max-width: 374px) {
  .index__title {
    width: 280px;
    height: 110px;
  }
}

.index__time {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 1em;
  font-weight: 700;
  color: #ea5a5a;
  margin-top: 30px;
  opacity: 0;
  -webkit-animation: fadeInUp 0.5s ease;
          animation: fadeInUp 0.5s ease;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
  background: url("../images/index/index-time-bg.png");
  background-size: auto;
  background-position: bottom left;
  background-repeat: repeat-x;
  padding: 20px 65px 22px;
  position: relative;
}

@media (max-width: 1399px) {
  .index__time {
    font-size: 0.875em;
  }
}

@media (max-width: 991px) {
  .index__time {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 10px;
    padding: 20px 10px;
  }
}

@media (max-width: 767px) {
  .index__time {
    background: url("../images/index/index-time-bg.png");
    background-size: auto 3px;
    background-position: bottom left;
    background-repeat: repeat-x;
    padding-bottom: 15px;
  }
}

@media (max-width: 374px) {
  .index__time {
    font-size: 0.875em;
    letter-spacing: -0.05em;
  }
}

.index__time .highlight {
  font-size: 1.875em;
}

@media (max-width: 480px) {
  .index__time .highlight {
    font-size: 1.6em;
  }
}

.index__time .star {
  position: relative;
}

.index__time .star::before {
  content: "";
  display: inline-block;
  width: 26px;
  height: 26px;
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -120px -25px;
  position: absolute;
  top: 10px;
  left: -35px;
  z-index: 1;
}

@media (max-width: 1399px) {
  .index__time .star::before {
    top: 5px;
  }
}

@media (max-width: 767px) {
  .index__time .star::before {
    -webkit-transform: scale(0.7);
            transform: scale(0.7);
    left: -25px;
  }
}

.index__time::after {
  content: "";
  display: inline-block;
  width: 95px;
  height: 15px;
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: 0 -71px;
  position: absolute;
  top: 0;
  left: calc(50% - 47px);
  z-index: 1;
}

@media (max-width: 767px) {
  .index__time::after {
    -webkit-transform: scale(0.7);
            transform: scale(0.7);
  }
}

@media (max-width: 991px) {
  .index__time-item {
    width: 100%;
  }
}

.index__time-item::after {
  content: "";
  display: inline-block;
  width: 98px;
  height: 7px;
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: 0 -40px;
  margin-left: 10px;
  margin-right: 10px;
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
}

@media (max-width: 991px) {
  .index__time-item::after {
    width: 7px;
    height: 25px;
    background-size: 150px 100px;
    background-repeat: no-repeat;
    background-image: url("../images/icon.png");
    background-position: -120px 0;
    display: block;
    margin: 5px auto 0;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}

.index__time-item:last-child::after {
  display: none;
}

.index__text {
  font-size: 1.5em;
  font-weight: 700;
  color: #4d4d4d;
  margin-top: 15px;
  line-height: 1.75;
  opacity: 0;
  -webkit-animation: fadeInUp 0.5s ease;
          animation: fadeInUp 0.5s ease;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}

@media (max-width: 1399px) {
  .index__text {
    font-size: 1.25em;
  }
}

@media (max-width: 767px) {
  .index__text {
    font-size: 1em;
    line-height: 1.4;
  }
}

@media (max-width: 374px) {
  .index__text {
    font-size: 0.9375em;
  }
}

.index__btn {
  display: block;
  margin-top: 35px;
  opacity: 0;
  -webkit-animation: fadeInUp 0.5s ease;
          animation: fadeInUp 0.5s ease;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
}

@media (max-width: 767px) {
  .index__btn {
    margin-top: 15px;
  }
}

.index__btn img {
  -webkit-animation: ani-loading 0.8s ease infinite;
          animation: ani-loading 0.8s ease infinite;
  -webkit-animation-delay: 3.5s;
          animation-delay: 3.5s;
}

@media (max-width: 767px) {
  .index__btn img {
    width: 200px;
  }
}

.index__block {
  position: absolute;
  top: -60px;
  right: -111px;
  z-index: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background: url("../images/index/index-block-bg.png");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  width: 476px;
  height: 440px;
  opacity: 0;
  -webkit-animation: fadeInUp 0.5s ease;
          animation: fadeInUp 0.5s ease;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
}

@media (max-width: 1699px) {
  .index__block {
    top: -120px;
    right: -40px;
  }
}

@media (max-width: 1399px) {
  .index__block {
    width: 380px;
    height: 351px;
    top: -100px;
    right: -15px;
  }
}

@media (max-width: 1199px) {
  .index__block {
    top: -170px;
    right: -5px;
  }
}

@media (max-width: 991px) {
  .index__block {
    top: -190px;
    width: 350px;
    height: 324px;
  }
}

@media (max-width: 767px) {
  .index__block {
    position: relative;
    top: auto;
    right: auto;
    margin-top: 10px;
  }
}

@media (max-width: 480px) {
  .index__block {
    width: 345px;
    height: 319px;
  }
}

@media (max-width: 374px) {
  .index__block {
    width: 290px;
    height: 268px;
  }
}

.index__item:first-child {
  padding-top: 80px;
  width: 270px;
}

@media (max-width: 1399px) {
  .index__item:first-child {
    padding-top: 70px;
    width: 55%;
  }
}

@media (max-width: 991px) {
  .index__item:first-child {
    padding-top: 60px;
  }
}

@media (max-width: 374px) {
  .index__item:first-child {
    padding-top: 50px;
  }
}

.index__item:last-child {
  margin-left: -44px;
  width: 250px;
  padding-top: 220px;
}

@media (max-width: 1399px) {
  .index__item:last-child {
    width: 50%;
    margin-left: -5%;
    padding-top: 180px;
  }
}

@media (max-width: 991px) {
  .index__item:last-child {
    padding-top: 165px;
  }
}

@media (max-width: 374px) {
  .index__item:last-child {
    padding-top: 140px;
  }
}

.index__item-title {
  font-size: 1.5em;
  font-weight: 700;
  color: #602b2b;
}

@media (max-width: 1399px) {
  .index__item-title {
    font-size: 1.25em;
  }
}

@media (max-width: 374px) {
  .index__item-title {
    font-size: 1.125em;
  }
}

.index__item-text {
  font-size: 1.25em;
  font-weight: 400;
  color: #602b2b;
  line-height: 1.4;
}

@media (max-width: 1399px) {
  .index__item-text {
    font-size: 1em;
  }
}

@media (max-width: 374px) {
  .index__item-text {
    font-size: 0.875em;
  }
}

.index__item-text .highlight {
  color: #ea5a5a;
  font-weight: 700;
}

.index__line {
  background: url("../images/index/index-line.png");
  background-size: auto 100%;
  background-position: center bottom;
  background-repeat: no-repeat;
  height: 245px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 2;
  opacity: 0;
  -webkit-animation: fadeIn 0.5s ease;
          animation: fadeIn 0.5s ease;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 2.1s;
          animation-delay: 2.1s;
  pointer-events: none;
}

@media (max-width: 1699px) {
  .index__line {
    height: 180px;
  }
}

@media (max-width: 1199px) {
  .index__line {
    height: 100px;
  }
}

.index__pen-item {
  opacity: 0;
  -webkit-animation: fadeInUp 0.5s ease;
          animation: fadeInUp 0.5s ease;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 2.5s;
          animation-delay: 2.5s;
  pointer-events: none;
}

.index__pen-item:first-child {
  position: absolute;
  bottom: 8%;
  left: 8%;
  z-index: 3;
}

@media (max-width: 1699px) {
  .index__pen-item:first-child {
    width: 130px;
    left: 1%;
  }
}

@media (max-width: 1399px) {
  .index__pen-item:first-child {
    width: 120px;
    bottom: 5%;
  }
}

@media (max-width: 1199px) {
  .index__pen-item:first-child {
    bottom: -180px;
  }
}

@media (max-width: 991px) {
  .index__pen-item:first-child {
    top: auto;
    bottom: -100px;
    width: 100px;
  }
}

@media (max-width: 767px) {
  .index__pen-item:first-child {
    width: 15%;
  }
}

@media (max-width: 480px) {
  .index__pen-item:first-child {
    width: 20%;
    left: 5%;
    bottom: -80px;
  }
}

@media (max-width: 374px) {
  .index__pen-item:first-child {
    bottom: -50px;
  }
}

.index__pen-item:last-child {
  position: absolute;
  bottom: 12%;
  right: 12%;
  z-index: 3;
}

@media (max-width: 1699px) {
  .index__pen-item:last-child {
    bottom: 5%;
    right: 5%;
  }
}

@media (max-width: 1399px) {
  .index__pen-item:last-child {
    width: 240px;
    right: 8%;
    bottom: 2%;
  }
}

@media (max-width: 767px) {
  .index__pen-item:last-child {
    width: 30%;
    right: 2%;
  }
}

@media (max-width: 480px) {
  .index__pen-item:last-child {
    width: 43%;
    bottom: 0;
  }
}

.inside {
  overflow: hidden;
  padding-top: 160px;
}

@media (max-width: 991px) {
  .inside {
    padding-bottom: 40px;
  }
}

@media (max-width: 767px) {
  .inside {
    padding-top: 100px;
  }
}

.inside--style1 {
  height: 1016px;
  background: url("../images/common/inside-bg.jpg");
  background-size: auto;
  background-position: center top;
  background-repeat: no-repeat;
}

@media (max-width: 991px) {
  .inside--style1 {
    height: auto;
    background-size: 1580px auto;
    background-position: center bottom;
    min-height: 90vh;
  }
}

@media (max-width: 767px) {
  .inside--style1 {
    background: #fff;
  }
}

.inside--style2 {
  min-height: 1016px;
  background: url("../images/common/inside-bg2-people_01.png"), url("../images/common/inside-bg2-people_02.png"), url("../images/common/inside-bg2.jpg"), #a9d67e;
  background-size: auto,auto,auto;
  background-position: left top 406px,right top 576px,center top;
  background-repeat: no-repeat,no-repeat,no-repeat;
  padding-bottom: 100px;
}

@media (max-width: 1699px) {
  .inside--style2 {
    background-position: left -150px top 406px,right -100px top 576px,center top;
  }
}

@media (max-width: 1399px) {
  .inside--style2 {
    background-size: 20vw auto, 15vw auto,auto;
    background-position: left -9vw top 406px,right -5vw top 576px,center top;
  }
}

@media (max-width: 1199px) {
  .inside--style2 {
    background: url("../images/common/inside-bg2.jpg"), #a9d67e;
    background-size: auto;
    background-position: center top;
    background-repeat: no-repeat;
  }
}

@media (max-width: 991px) {
  .inside--style2 {
    padding-bottom: 40px;
    background: url("../images/common/inside-bg2-tb.jpg") #a9d67e;
    background-size: auto;
    background-position: center top;
    background-repeat: no-repeat;
  }
}

@media (max-width: 767px) {
  .inside--style2 {
    background-size: 800px auto;
  }
}

.inside--style3 {
  padding-top: 105px;
  height: 1016px;
  background: url("../images/common/inside-bg3.jpg");
  background-size: auto;
  background-position: center top;
  background-repeat: no-repeat;
}

@media (max-width: 991px) {
  .inside--style3 {
    background: #fff;
  }
}

@media (max-width: 767px) {
  .inside--style3 {
    padding-top: 100px;
  }
}

@media (max-width: 991px) {
  .inside--style3 {
    height: auto;
    min-height: 90vh;
  }
}

.inside--style4 {
  padding-top: 105px;
  height: 1016px;
  background: url("../images/common/inside-bg4.jpg");
  background-size: auto;
  background-position: center top;
  background-repeat: no-repeat;
}

@media (max-width: 1199px) {
  .inside--style4 {
    background: url("../images/common/inside-bg4-md.png"), #fffcf5;
    background-size: auto;
    background-position: right bottom;
    background-repeat: no-repeat;
  }
}

@media (max-width: 991px) {
  .inside--style4 {
    background: #fffcf5;
  }
}

@media (max-width: 767px) {
  .inside--style4 {
    padding-top: 100px;
  }
}

@media (max-width: 991px) {
  .inside--style4 {
    height: auto;
    min-height: 90vh;
  }
}

.vote__time {
  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;
  font-size: 1em;
  font-weight: 700;
  color: #ea5a5a;
  border: 1px solid #ea5a5a;
  padding: 6px 15px;
  border-radius: 100em;
  width: 900px;
  max-width: 100%;
  background: #fff;
  position: relative;
  z-index: 1;
}

@media (max-width: 767px) {
  .vote__time {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: 0.875em;
  }
}

@media (max-width: 374px) {
  .vote__time {
    font-size: 0.75em;
  }
}

.vote__time .highlight {
  font-size: 1.875em;
}

@media (max-width: 991px) {
  .vote__time .highlight {
    font-size: 1.5em;
  }
}

@media (max-width: 480px) {
  .vote__time .highlight {
    font-size: 1.7em;
  }
}

.vote__time-title {
  font-size: 1.5em;
  font-weight: 700;
}

@media (max-width: 991px) {
  .vote__time-title {
    font-size: 1.125em;
  }
}

@media (max-width: 767px) {
  .vote__time-title {
    display: inline-block;
  }
  .vote__time-title::after {
    content: "";
    display: block;
    width: 50px;
    height: 1px;
    background: #ea5a5a;
    margin: 10px auto;
  }
}

@media (max-width: 480px) {
  .vote__time-title {
    font-size: 1.125em;
  }
}

@media (max-width: 767px) {
  .vote__time-item {
    width: 100%;
  }
}

.vote__time-item::after {
  content: "";
  display: inline-block;
  width: 98px;
  height: 7px;
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: 0 -40px;
  margin-left: 10px;
  margin-right: 10px;
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
}

@media (max-width: 767px) {
  .vote__time-item::after {
    width: 7px;
    height: 25px;
    background-size: 150px 100px;
    background-repeat: no-repeat;
    background-image: url("../images/icon.png");
    background-position: -120px 0;
    display: block;
    margin: 5px auto 0;
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}

@media (max-width: 767px) {
  .vote__time-item:last-child {
    width: 100%;
  }
}

.vote__time-item:last-child::after {
  display: none;
}

.vote__info {
  background: -webkit-gradient(linear, left top, left bottom, from(#ffeec8), to(#fff3d7));
  background: linear-gradient(to bottom, #ffeec8 0%, #fff3d7 100%);
  border-radius: 26px;
  padding: 50px 75px 35px;
  margin-top: -25px;
}

@media (max-width: 991px) {
  .vote__info {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 480px) {
  .vote__info {
    padding: 50px 15px 15px;
  }
}

.vote__info-block {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: calc(100% + 60px);
  margin-left: -30px;
  margin-right: -30px;
}

@media (max-width: 767px) {
  .vote__info-block {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.vote__info-item {
  font-size: 1em;
  font-weight: 500;
  color: #4d4d4d;
  line-height: 1.5;
  width: calc(33.33% - 60px);
  margin-left: 30px;
  margin-right: 30px;
  position: relative;
}

@media (max-width: 767px) {
  .vote__info-item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-top: 50px;
  }
  .vote__info-item:first-child {
    margin-top: 0;
  }
}

.vote__info-item::before {
  content: "";
  display: block;
  width: 10px;
  height: 118px;
  background: url("../images/vote/vote-info-bg.png");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: -35px;
}

@media (max-width: 767px) {
  .vote__info-item::before {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    left: calc(50% - 5px);
    top: -80px;
  }
}

.vote__info-item:first-child::before {
  display: none;
}

.vote__info-btn {
  margin-top: -15px;
}

@media (max-width: 767px) {
  .vote__info-btn {
    margin-top: 15px;
  }
}

.vote__info-btn .btn {
  width: 196px;
  background: #ea5a5a;
}

.vote__info-btn .btn:hover {
  background: #a9d67e;
}

.vote__nodata {
  color: #fff;
  margin-top: 40px;
  font-size: 1.25em;
}

.vote__block {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: calc(100% + 16px);
  margin-left: -8px;
  margin-right: -8px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 40px;
}

@media (max-width: 991px) {
  .vote__block {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

.vote__item {
  background: #fff;
  border: 2px solid #602b2b;
  border-radius: 15px;
  padding: 25px 20px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: calc( 50% - 16px);
  margin-left: 8px;
  margin-right: 8px;
  margin-top: 16px;
  position: relative;
}

.vote__item:first-child, .vote__item:nth-child(2) {
  margin-top: 0;
}

@media (max-width: 991px) {
  .vote__item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .vote__item:nth-child(2) {
    margin-top: 16px;
  }
}

@media (max-width: 480px) {
  .vote__item {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.vote__item::before {
  content: "";
  display: block;
  width: 62px;
  height: 62px;
  background: url("../images/vote/vote-item-bg.jpg");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -2px;
  right: -2px;
  z-index: 1;
  pointer-events: none;
}

@media (max-width: 767px) {
  .vote__item::before {
    width: 40px;
    height: 40px;
  }
}

.vote__head {
  width: 225px;
  height: 225px;
}

@media (max-width: 1199px) {
  .vote__head {
    width: 200px;
    height: 200px;
  }
}

@media (max-width: 480px) {
  .vote__head {
    width: 100%;
    height: auto;
    position: relative;
  }
  .vote__head::before {
    content: "";
    display: block;
    padding-top: 100%;
  }
}

.vote__img {
  width: 100%;
  height: 100%;
  border: 1px solid #602b2b;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}

@media (max-width: 480px) {
  .vote__img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
}

.vote__body {
  width: calc( 100% - 225px);
  padding-left: 15px;
  position: relative;
}

@media (max-width: 1199px) {
  .vote__body {
    width: calc( 100% - 200px);
  }
}

@media (max-width: 480px) {
  .vote__body {
    width: 100%;
    padding-left: 0;
    padding-top: 15px;
  }
}

.vote__table {
  width: 100%;
  font-weight: 500;
}

.vote__table .title {
  width: 80px;
  height: auto !important;
  color: #602b2b;
  text-align: left;
}

@media (max-width: 767px) {
  .vote__table .title {
    font-size: 0.875em;
    width: 70px;
  }
}

@media (max-width: 480px) {
  .vote__table .title {
    font-size: 1em;
    width: 80px;
  }
}

.vote__table .content {
  width: calc( 100% - 80px);
  color: #4d4d4d;
  font-size: 1.125em;
}

@media (max-width: 767px) {
  .vote__table .content {
    font-size: 1em;
    width: calc( 100% - 70px);
  }
}

@media (max-width: 480px) {
  .vote__table .content {
    width: calc( 100% - 80px);
    font-size: 1.125em;
  }
}

.vote__table-box {
  min-height: 3em;
}

@media (max-width: 480px) {
  .vote__table-box {
    min-height: auto;
  }
}

.vote__table-text {
  line-height: 1.5;
  display: inline;
  word-break: break-all;
}

.vote__table-link {
  color: #a9d67e;
  text-decoration: underline;
  -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;
}

.vote__table-link:hover {
  color: #ea5a5a;
}

.vote__table tr td {
  padding-top: 8px;
  vertical-align: top;
}

@media (max-width: 1199px) {
  .vote__table tr td {
    padding-top: 3px;
  }
}

@media (max-width: 767px) {
  .vote__table tr td {
    padding-top: 6px;
  }
}

.vote__table tr:first-child td {
  padding-top: 0;
}

.vote__share {
  font-size: 1em;
  font-weight: 700;
  color: #fff;
  background: #ea5a5a;
  width: 72px;
  height: 30px;
  line-height: 30px;
  border-radius: 15em;
  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;
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 1;
  cursor: pointer;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (max-width: 480px) {
  .vote__share {
    top: -15px;
    right: -15px;
  }
}

.vote__share::before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -40px -47px;
  margin-right: 4px;
}

.vote__share:hover {
  opacity: 0.8;
}

.vote__btn {
  margin-top: 10px;
}

@media (max-width: 1199px) {
  .vote__btn {
    margin-top: 5px;
  }
}

@media (max-width: 767px) {
  .vote__btn {
    padding-top: 6px;
  }
}

@media (max-width: 480px) {
  .vote__btn {
    text-align: center;
  }
}

.vote__btn .btn {
  text-align: center;
  width: 154px;
}

.search {
  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: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 20px;
  margin-bottom: -20px;
}

@media (max-width: 767px) {
  .search {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media (max-width: 374px) {
  .search {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    text-align: center;
  }
}

.search__label {
  font-size: 1.125em;
  color: #fff;
  margin-right: 10px;
}

@media (max-width: 767px) {
  .search__label {
    font-size: 1em;
  }
}

@media (max-width: 374px) {
  .search__label {
    width: 100%;
    margin-bottom: 10px;
    margin-right: 0;
  }
}

.search__item {
  width: 280px;
  border: 1px solid #602b2b;
  background: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  border-radius: 100em;
}

@media (max-width: 767px) {
  .search__item {
    width: 250px;
  }
}

.search__item-input {
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: 50px;
  font-size: 1.125em;
  font-weight: 500;
  border-radius: 100em;
  background: transparent;
  padding-left: 20px;
  padding-right: 80px;
}

@media (max-width: 767px) {
  .search__item-input {
    font-size: 1em;
  }
}

.search__item-input::-webkit-input-placeholder {
  color: #b1b5bf;
}

.search__item-input::-moz-placeholder {
  color: #b1b5bf;
}

.search__item-input:-ms-input-placeholder {
  color: #b1b5bf;
}

.search__item-input::-ms-input-placeholder {
  color: #b1b5bf;
}

.search__item-input::placeholder {
  color: #b1b5bf;
}

.search__item-btn {
  width: 72px;
  height: 40px;
  background: #ea5a5a;
  color: #fff;
  font-size: 1.125em;
  font-weight: 500;
  position: absolute;
  top: 5px;
  right: 5px;
  z-index: 1;
  text-align: center;
  line-height: 38px;
  border-radius: 100em;
  border: none;
  cursor: pointer;
  -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;
}

.search__item-btn:hover {
  background: #ea5a5a;
}

.success__img {
  text-align: center;
}

.success__text {
  font-size: 1.5em;
  font-weight: 700;
  color: #4d4d4d;
  line-height: 1.75;
  margin-top: 20px;
}

@media (max-width: 767px) {
  .success__text {
    font-size: 1.125em;
  }
}

.success__time {
  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;
  font-size: 1em;
  font-weight: 700;
  color: #ea5a5a;
  border: 1px solid #ea5a5a;
  padding: 6px 15px;
  border-radius: 100em;
  width: 760px;
  max-width: 100%;
  background: #fff;
  margin-top: 40px;
}

@media (max-width: 767px) {
  .success__time {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 30px;
  }
}

@media (max-width: 374px) {
  .success__time {
    font-size: 0.875em;
  }
}

.success__time .highlight {
  font-size: 1.875em;
}

@media (max-width: 480px) {
  .success__time .highlight {
    font-size: 1.6em;
  }
}

.success__time-text {
  font-size: 1.5em;
  font-weight: 700;
}

@media (max-width: 480px) {
  .success__time-text {
    font-size: 1.125em;
  }
}

.success__btn {
  margin-top: 35px;
}

.login {
  text-align: center;
  padding-top: 120px;
}

@media (max-width: 991px) {
  .login {
    padding-top: 0;
  }
}

.login__title {
  font-size: 2.25em;
  font-weight: 700;
  color: #4d4d4d;
}

@media (max-width: 767px) {
  .login__title {
    font-size: 1.5em;
  }
}

.login__subtitle {
  font-size: 1.125em;
  font-weight: 500;
  color: #4d4d4d;
  margin-top: 10px;
}

@media (max-width: 767px) {
  .login__subtitle {
    font-size: 1em;
  }
}

.login__link {
  margin-top: 35px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media (max-width: 480px) {
  .login__link {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.login__link-item {
  margin-left: 30px;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  max-width: 186px;
}

.login__link-item:first-child {
  margin-left: 0;
}

@media (max-width: 767px) {
  .login__link-item {
    margin-left: 15px;
  }
}

@media (max-width: 480px) {
  .login__link-item {
    margin-left: 0;
    margin-top: 15px;
  }
  .login__link-item:first-child {
    margin-top: 0;
  }
}

.login__link-item:hover {
  opacity: 0.8;
}

.portfolio {
  width: 1022px;
  background: #fff;
  border: 2px solid #602b2b;
  border-radius: 15px;
  padding: 20px;
  position: relative;
  margin-top: 60px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

@media (max-width: 1199px) {
  .portfolio {
    width: 100%;
  }
}

@media (max-width: 991px) {
  .portfolio {
    width: 540px;
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .portfolio {
    max-width: 100%;
    padding-bottom: 40px;
  }
}

.portfolio::before {
  content: "";
  display: block;
  width: 62px;
  height: 62px;
  background: url("../images/vote/vote-item-bg.jpg");
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -2px;
  right: -2px;
  z-index: 1;
  pointer-events: none;
}

@media (max-width: 767px) {
  .portfolio::before {
    width: 40px;
    height: 40px;
  }
}

.portfolio__head {
  width: 500px;
  height: 500px;
}

@media (max-width: 1199px) {
  .portfolio__head {
    width: 400px;
    height: 400px;
  }
}

@media (max-width: 991px) {
  .portfolio__head {
    width: 100%;
    height: auto;
    position: relative;
  }
  .portfolio__head::before {
    content: "";
    display: block;
    padding-top: 100%;
  }
}

.portfolio__img {
  width: 100%;
  height: 100%;
  border: 1px solid #602b2b;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}

@media (max-width: 991px) {
  .portfolio__img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
}

.portfolio__body {
  width: calc( 100% - 500px);
  padding-left: 15px;
  position: relative;
}

@media (max-width: 1199px) {
  .portfolio__body {
    width: calc( 100% - 400px);
  }
}

@media (max-width: 991px) {
  .portfolio__body {
    width: 100%;
    padding-left: 0;
    padding-top: 15px;
  }
}

.portfolio__table {
  width: 100%;
  font-weight: 500;
}

.portfolio__table .title {
  width: 80px;
  color: #602b2b;
  text-align: left;
}

@media (max-width: 767px) {
  .portfolio__table .title {
    font-size: 0.875em;
    width: 70px;
  }
}

@media (max-width: 480px) {
  .portfolio__table .title {
    font-size: 1em;
    width: 80px;
  }
}

.portfolio__table .content {
  width: calc( 100% - 80px);
  font-size: 1.125em;
  color: #4d4d4d;
}

@media (max-width: 767px) {
  .portfolio__table .content {
    font-size: 1em;
    width: calc( 100% - 70px);
  }
}

@media (max-width: 480px) {
  .portfolio__table .content {
    width: calc( 100% - 80px);
    font-size: 1.125em;
  }
}

.portfolio__table-box {
  min-height: 3em;
}

@media (max-width: 480px) {
  .portfolio__table-box {
    min-height: auto;
  }
}

.portfolio__table-text {
  line-height: 1.5;
  display: inline;
  word-break: break-all;
}

.portfolio__table-link {
  color: #a9d67e;
  text-decoration: underline;
  -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;
}

.portfolio__table-link:hover {
  color: #ea5a5a;
}

.portfolio__table tr td {
  padding-top: 8px;
  vertical-align: top;
}

@media (max-width: 1199px) {
  .portfolio__table tr td {
    padding-top: 5px;
  }
}

@media (max-width: 767px) {
  .portfolio__table tr td {
    padding-top: 6px;
  }
}

.portfolio__table tr:first-child td {
  padding-top: 0;
}

.portfolio__share {
  font-size: 1em;
  font-weight: 700;
  color: #fff;
  background: #ea5a5a;
  width: 72px;
  height: 30px;
  line-height: 30px;
  border-radius: 15em;
  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;
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 1;
  cursor: pointer;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (max-width: 991px) {
  .portfolio__share {
    top: -15px;
    right: -15px;
  }
}

.portfolio__share::before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  background-size: 150px 100px;
  background-repeat: no-repeat;
  background-image: url("../images/icon.png");
  background-position: -40px -47px;
  margin-right: 4px;
}

.portfolio__share:hover {
  opacity: 0.8;
}

.portfolio__btn {
  margin-top: 15px;
}

@media (max-width: 767px) {
  .portfolio__btn {
    padding-top: 6px;
  }
}

@media (max-width: 991px) {
  .portfolio__btn {
    text-align: center;
  }
}

.portfolio__btn .btn {
  text-align: center;
  width: 154px;
  margin-left: 10px;
}

@media (max-width: 480px) {
  .portfolio__btn .btn {
    width: calc(50% - 8px);
  }
}

.portfolio__btn .btn:first-child {
  margin-left: 0;
}

.s1 {
  background: url("../images/index/s1-bg.jpg"), #602b2b;
  background-size: auto;
  background-position: center bottom;
  background-repeat: repeat-x;
  padding-top: 85px;
  padding-bottom: 85px;
}

@media (max-width: 767px) {
  .s1 {
    padding-top: 40px;
    padding-bottom: 40px;
    background-size: auto 10px;
  }
}

@media (min-width: 1200px) {
  .s1 .container {
    width: 1100px;
  }
}

.s1 .title {
  background: url("../images/index/title-s1.png");
  background-size: auto 100%;
  background-position: center top;
  background-repeat: no-repeat;
  margin: 0 auto;
  text-indent: -9999px;
  width: 419px;
}

@media (max-width: 767px) {
  .s1 .title {
    background: url("../images/index/title-s1-sm.png");
    background-size: auto 100%;
    background-position: center top;
    background-repeat: no-repeat;
    width: 235px;
    height: 81px;
  }
}

.s1__wrap {
  border-radius: 20px;
  background: #fff;
  padding: 45px 70px;
  margin-top: 45px;
}

@media (max-width: 991px) {
  .s1__wrap {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media (max-width: 767px) {
  .s1__wrap {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.s1__wrap-title {
  font-size: 1.5em;
  font-weight: 700;
  color: #ea5a5a;
  text-align: center;
  margin-bottom: 15px;
}

.s1__wrap ul {
  list-style: none;
}

.s1__wrap li {
  padding-left: 1em;
  font-size: 1.125em;
  font-weight: 500;
  color: #4d4d4d;
  line-height: 1.56;
  margin-top: 10px;
}

.s1__wrap li:first-child {
  margin-top: 0;
}

.s1__wrap li::before {
  content: "*";
  display: inline-block;
  text-indent: -0.8em;
}

.s1__method {
  margin-top: 55px;
  text-align: center;
  color: #fff;
}

.s1__method-title {
  font-size: 1.5em;
  font-weight: 700;
  color: #a9d67e;
}

.s1__method-prize {
  margin-top: 25px;
  text-align: center;
}

.s1__method-prize img {
  margin: 0 auto;
}

.s1__method-block {
  margin-top: 20px;
}

@media (max-width: 767px) {
  .s1__method-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.s1__method-btn {
  display: inline-block;
  margin-left: 20px;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

@media (max-width: 767px) {
  .s1__method-btn {
    margin-left: 0;
    margin-top: 15px;
  }
}

.s1__method-btn:first-child {
  margin-left: 0;
}

@media (max-width: 767px) {
  .s1__method-btn:first-child {
    margin-top: 0;
  }
}

.s1__method-btn img {
  height: 48px;
}

@media (max-width: 374px) {
  .s1__method-btn img {
    height: 36px;
  }
}

@media (min-width: 768px) {
  .s1__method-btn:not(.nolink):hover {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
}

.s1__method-btn.nolink {
  cursor: default;
}

.s1__method-remark {
  padding-left: 1em;
  line-height: 1.56;
  text-align: center;
  font-size: 1.125em;
  letter-spacing: 0.025em;
  margin-top: 15px;
}

@media (max-width: 991px) {
  .s1__method-remark {
    font-size: 1em;
  }
}

.s2 {
  background: #ea5a5a;
  padding-top: 85px;
  padding-bottom: 85px;
}

@media (max-width: 767px) {
  .s2 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

@media (min-width: 1200px) {
  .s2 .container {
    width: 1100px;
  }
}

.s2 .title {
  background: url("../images/index/title-s2.png");
  background-size: auto 100%;
  background-position: center top;
  background-repeat: no-repeat;
  margin: 0 auto;
  text-indent: -9999px;
}

.s2__block {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 45px;
}

@media (max-width: 991px) {
  .s2__block {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin-top: 30px;
  }
}

.s2__img {
  width: calc(100% - 682px);
}

@media (max-width: 1199px) {
  .s2__img {
    padding-right: 15px;
  }
}

@media (max-width: 991px) {
  .s2__img {
    width: 100%;
    text-align: center;
    padding-right: 0;
    padding-top: 15px;
  }
  .s2__img img {
    width: 200px;
  }
}

@media (max-width: 767px) {
  .s2__img img {
    width: 150px;
  }
}

.s2__box {
  width: 682px;
  border-radius: 20px;
  background: #fff;
  padding: 35px 70px;
}

@media (max-width: 991px) {
  .s2__box {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .s2__box {
    padding: 30px 15px;
  }
}

.s2__box ul {
  list-style: none;
  margin-top: 10px;
}

.s2__box ul:first-child {
  margin-top: 0;
}

.s2__box li {
  padding-left: 1em;
  font-size: 1.125em;
  font-weight: 500;
  color: #4d4d4d;
  line-height: 1.56;
  margin-top: 10px;
}

@media (max-width: 767px) {
  .s2__box li {
    font-size: 1em;
  }
}

.s2__box li:first-child {
  margin-top: 0;
}

.s2__box li::before {
  content: "‧";
  display: inline-block;
  text-indent: -1em;
  color: #ea5a5a;
}

.s2__box li .highlight {
  font-size: 1.22em;
}

.s2__box li .sm {
  font-size: 0.8889em;
}

@media (min-width: 481px) {
  .s2__box .padding4 li {
    padding-left: 6em;
    text-indent: -5em;
  }
}

.s2__prize {
  text-align: center;
  color: #fff;
  margin-top: 50px;
}

@media (max-width: 767px) {
  .s2__prize {
    margin-top: 10px;
  }
}

.s2__prize-title {
  font-size: 1.5em;
  font-weight: 700;
  margin-bottom: 15px;
}

@media (max-width: 767px) {
  .s2__prize-title {
    font-size: 1.25em;
  }
}

.s2__prize-img {
  margin-top: 25px;
  margin-bottom: 60px;
}

@media (max-width: 767px) {
  .s2__prize-img {
    margin-top: 20px;
    margin-bottom: 30px;
  }
  .s2__prize-img img {
    margin: 0 auto;
    width: 400px;
  }
}

.s2__prize-text {
  font-size: 1.125em;
  font-weight: 500;
}

@media (max-width: 767px) {
  .s2__prize-text {
    font-size: 1em;
  }
}

.s2__prize-text .mt {
  margin-top: 60px;
}

.notice {
  background: #fff;
  padding-top: 75px;
  padding-bottom: 80px;
  font-size: 1em;
  color: #4d4d4d;
  line-height: 1.5;
}

@media (max-width: 767px) {
  .notice {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

@media (min-width: 1200px) {
  .notice .container {
    width: 1100px;
  }
}

.notice .title {
  background: url("../images/index/title-notice.png");
  background-size: auto 100%;
  background-position: center top;
  background-repeat: no-repeat;
  margin: 0 auto;
  text-indent: -9999px;
  margin-bottom: 25px;
}

.notice ol {
  padding-left: 1.5em;
}

.notice ol.inside {
  list-style: none;
  padding-top: 0;
  padding-left: 0;
}

.notice ol.inside li {
  text-indent: -3em;
  padding-left: 2.5em;
}

.notice ul {
  list-style: none;
}

.notice ul li {
  padding-left: 1em;
}

.notice ul li::before {
  content: "★";
  display: inline-block;
  text-indent: -1em;
}

.notice__subtitle {
  font-size: 1.5em;
  font-weight: 700;
  text-align: center;
  color: #ea5a5a;
  margin-top: 35px;
  margin-bottom: 20px;
}

.winning {
  width: 1174px;
  margin: 0 auto;
}

@media (max-width: 1399px) {
  .winning {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .winning {
    width: 100%;
  }
}

.winning__wrap {
  border-top: 2px solid #602b2b;
  position: relative;
  padding-top: 30px;
  padding-bottom: 30px;
}

.winning__wrap--sm {
  width: 722px;
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 767px) {
  .winning__wrap--sm {
    width: 100%;
  }
}

.winning__wrap:first-child {
  border-top: none;
  padding-top: 0;
}

.winning__wrap:last-child {
  padding-bottom: 0;
}

.winning__wrap-line {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='13px' height='13px'%3e%3cpath fill-rule='evenodd' stroke='rgb(96, 43, 43)' stroke-width='2px' stroke-linecap='butt' stroke-linejoin='miter' fill='rgb(255, 255, 255)' d='M0.999,10.999 L0.999,0.999 L10.999,0.999 L10.999,10.999 L0.999,10.999 Z'/%3e%3c/svg%3e");
  background-size: 13px auto;
  background-repeat: no-repeat;
  background-position: center center;
  width: 100%;
  height: 13px;
  position: absolute;
  top: -6.5px;
  left: 0;
  z-index: 2;
}

.winning__wrap-line::before {
  content: "";
  display: block;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='13px' height='13px'%3e%3cpath fill-rule='evenodd' stroke='rgb(96, 43, 43)' stroke-width='2px' stroke-linecap='butt' stroke-linejoin='miter' fill='rgb(255, 255, 255)' d='M0.999,10.999 L0.999,0.999 L10.999,0.999 L10.999,10.999 L0.999,10.999 Z'/%3e%3c/svg%3e");
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  width: 13px;
  height: 13px;
  position: absolute;
  top: 0;
  left: -6.5px;
  z-index: 2;
}

.winning__wrap-line::after {
  content: "";
  display: block;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='13px' height='13px'%3e%3cpath fill-rule='evenodd' stroke='rgb(96, 43, 43)' stroke-width='2px' stroke-linecap='butt' stroke-linejoin='miter' fill='rgb(255, 255, 255)' d='M0.999,10.999 L0.999,0.999 L10.999,0.999 L10.999,10.999 L0.999,10.999 Z'/%3e%3c/svg%3e");
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  width: 13px;
  height: 13px;
  position: absolute;
  top: 0;
  right: -6.5px;
  z-index: 2;
}

.winning__awards {
  margin-top: 30px;
}

@media (max-width: 991px) {
  .winning__awards {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 767px) {
  .winning__awards {
    width: 420px;
  }
}

@media (max-width: 480px) {
  .winning__awards {
    width: 100%;
  }
}

.winning__awards-block {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: calc(100% + 8px);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: -4px;
  margin-right: -4px;
  margin-top: 25px;
}

@media (max-width: 991px) {
  .winning__awards-block {
    margin-top: 8px;
  }
}

.winning__awards-block:first-child {
  margin-top: 0;
}

.winning__awards-item {
  text-align: center;
  margin-left: 4px;
  margin-right: 4px;
}

@media (max-width: 991px) {
  .winning__awards-item {
    margin-top: 25px;
  }
  .winning__awards-item:nth-child(1) {
    margin-top: 0;
  }
  .winning__awards-item:nth-child(2) {
    margin-top: 0;
  }
  .winning__awards-item:nth-child(3) {
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .winning__awards-item {
    margin-top: 15px;
  }
  .winning__awards-item:nth-child(3) {
    margin-top: 15px;
  }
}

.winning__awards-pic {
  width: 160px;
  height: 160px;
  border: 2px solid #602b2b;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media (max-width: 1399px) {
  .winning__awards-pic {
    width: 150px;
    height: 150px;
  }
}

@media (max-width: 1199px) {
  .winning__awards-pic {
    width: 128px;
    height: 128px;
  }
}

@media (max-width: 991px) {
  .winning__awards-pic {
    width: 160px;
    height: 160px;
  }
}

@media (max-width: 374px) {
  .winning__awards-pic {
    width: 140px;
    height: 140px;
  }
}

.winning__awards-name {
  font-size: 1.875em;
  font-weight: 700;
  color: #4d4d4d;
  margin-top: 10px;
}

@media (max-width: 767px) {
  .winning__awards-name {
    font-size: 1.625em;
  }
}

.winning__title {
  font-size: 1.125em;
  font-weight: 700;
  color: #602b2b;
  text-align: center;
  line-height: 1.6;
}

@media (max-width: 767px) {
  .winning__title {
    font-size: 1em;
  }
}

.winning__title-main {
  font-size: 1.33em;
}

.winning__title--pink {
  color: #ea5a5a;
}

.winning__table {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: center;
  margin-top: 30px;
}

@media (max-width: 767px) {
  .winning__table {
    margin-top: 15px;
  }
}

.winning__table-td {
  width: 20%;
  font-size: 1.5em;
  font-weight: 700;
  color: #4d4d4d;
  border-left: 1px solid #ea5a5a;
  margin-top: 10px;
}

@media (max-width: 767px) {
  .winning__table-td {
    font-size: 1.25em;
  }
}

@media (max-width: 480px) {
  .winning__table-td {
    font-size: 1em;
  }
}

@media (max-width: 374px) {
  .winning__table-td {
    font-size: 0.9375em;
  }
}

.winning__table-td:first-child, .winning__table-td:nth-child(5n+1) {
  border-left: none;
}

.winning__table-td:nth-child(1) {
  margin-top: 0;
}

.winning__table-td:nth-child(2) {
  margin-top: 0;
}

.winning__table-td:nth-child(3) {
  margin-top: 0;
}

.winning__table-td:nth-child(4) {
  margin-top: 0;
}

.winning__table-td:nth-child(5) {
  margin-top: 0;
}

.winning__text {
  font-size: 1.125em;
  font-weight: 500;
  color: #a2a2a2;
  text-align: center;
  margin-top: 35px;
}

@media (max-width: 767px) {
  .winning__text {
    font-size: 0.875em;
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .hide--mobile {
    display: none;
  }
}

.show--tb {
  display: none;
}

@media (max-width: 991px) {
  .show--tb {
    display: block;
  }
}

.show--mobile {
  display: none;
}

@media (max-width: 767px) {
  .show--mobile {
    display: block;
  }
}

.center {
  text-align: center;
}

.orange {
  color: #ff8b47;
}

.blue {
  color: #005bab;
}

.green {
  color: #a9d67e;
}

.mt0 {
  margin-top: 0;
}

.mt10 {
  margin-top: 10px;
}

.mt15 {
  margin-top: 15px;
}

.title {
  text-align: center;
}

.title__main {
  font-size: 9.375em;
  font-weight: 900;
  color: white;
  font-style: italic;
  letter-spacing: 0.2em;
  line-height: 1em;
  margin-top: -25px;
}

@media (max-width: 1199px) {
  .title__main {
    font-size: 6.25em;
    margin-top: -17px;
  }
}

@media (max-width: 767px) {
  .title__main {
    font-size: 5em;
  }
}

@media (max-width: 575px) {
  .title__main {
    font-size: 4.0625em;
    margin-top: -10px;
  }
}

@media (max-width: 480px) {
  .title__main {
    font-size: 3em;
    margin-top: -8px;
  }
}

@media (max-width: 374px) {
  .title__main {
    font-size: 2.5em;
  }
}

.title__main.blue {
  color: #e4f2ff;
}

.title__main.opacity {
  color: rgba(255, 255, 255, 0.5);
  letter-spacing: 0.04em;
  font-size: 2.125em;
}

@media (min-width: 375px) {
  .title__main.opacity {
    font-size: 2.25em;
  }
}

@media (min-width: 414px) {
  .title__main.opacity {
    font-size: 2.75em;
  }
}

@media (min-width: 481px) {
  .title__main.opacity {
    font-size: 3.25em;
  }
}

@media (min-width: 576px) {
  .title__main.opacity {
    font-size: 4.0625em;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .title__main.opacity {
    font-size: 5em;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .title__main.opacity {
    font-size: 6.25em;
  }
}

@media (min-width: 1200px) and (max-width: 1399px) {
  .title__main.opacity {
    margin-top: -27px;
    letter-spacing: 0em;
    font-size: 130px;
  }
}

@media (min-width: 1400px) {
  .title__main.opacity {
    font-size: 9.375em;
  }
}

.title__sub {
  font-size: 2.25em;
  font-weight: 300;
  color: black;
  margin-top: 20px;
}

@media (max-width: 1199px) {
  .title__sub {
    font-size: 1.875em;
  }
}

@media (max-width: 767px) {
  .title__sub {
    font-size: 1.5em;
  }
}

@media (max-width: 480px) {
  .title__sub {
    font-size: 1.25em;
    margin-top: 10px;
  }
}

@media (max-width: 374px) {
  .title__sub {
    font-size: 1.125em;
  }
}

.title__sub::after {
  content: "";
  display: block;
  width: 30px;
  height: 4px;
  background: #ed151b;
  margin: 15px auto 0;
}

@media (max-width: 767px) {
  .title__sub::after {
    width: 20px;
    height: 2px;
    margin-top: 10px;
  }
}

.title__sub.white {
  color: white;
}

.gotop {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 999;
  cursor: pointer;
  display: none;
  width: 66px;
  height: 34px;
  line-height: 34px;
  background: #602b2b;
  font-size: 1em;
  font-weight: 300;
  color: white;
  text-align: center;
  border: 1px solid rgba(96, 43, 43, 0.3);
}

@media (max-width: 1399px) {
  .gotop {
    right: 15px;
  }
}

@media (max-width: 767px) {
  .gotop {
    bottom: 15px;
  }
}

@media (min-width: 768px) {
  .gotop:hover {
    -webkit-animation: ani-t2b 0.5s ease infinite;
            animation: ani-t2b 0.5s ease infinite;
  }
}

.loading {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #fff;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
  -webkit-transition-property: background,opacity;
  transition-property: background,opacity;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.loading__item {
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background: #005bab;
  margin-left: 10px;
  -webkit-animation: ani-loading 1s ease infinite;
          animation: ani-loading 1s ease infinite;
}

.loading__item:first-child {
  margin-left: 0;
}

.loading__item:nth-child(2) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.loading__item:nth-child(3) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

.title {
  width: 290px;
  height: 48px;
}

@media (max-width: 767px) {
  .title {
    height: 40px;
  }
}

.page {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 40px;
}

@media (max-width: 767px) {
  .page {
    margin-top: 25px;
  }
}

.page__list {
  font-family: 'Arial', 'Noto Sans TC', '微軟正黑體', sans-serif;
  font-size: 1.0625em;
  font-weight: 400;
  color: white;
  border-radius: 4px;
  margin: 0 2px;
  padding: 0 4px;
  min-width: 42px;
  height: 42px;
  line-height: 42px;
  text-align: center;
}

@media (max-width: 767px) {
  .page__list {
    margin: 0 1px 0px;
    font-size: 0.9375em;
    min-width: 32px;
    height: 32px;
    line-height: 32px;
  }
}

@media (max-width: 480px) {
  .page__list {
    min-width: 30px;
    height: 28px;
    line-height: 28px;
  }
}

@media (max-width: 374px) {
  .page__list {
    min-width: 20px;
  }
}

.page__list:hover, .page__list.active {
  background-color: #005bab;
}

.page__list-text {
  display: inline-block;
}

.page__list--dot {
  line-height: 32px;
}

@media (max-width: 767px) {
  .page__list--dot {
    line-height: 24px;
  }
}

.page__list--prev, .page__list--next {
  width: auto;
  padding: 1px 12px;
  background-color: #005bab;
  cursor: pointer;
}

@media (max-width: 767px) {
  .page__list--prev, .page__list--next {
    padding: 1px 5px;
  }
}

@media (max-width: 374px) {
  .page__list--prev, .page__list--next {
    padding: 1px 4px;
  }
}

.page__list--prev:before {
  content: '';
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 9px 6px 0;
  border-color: transparent #ffffff transparent transparent;
  margin-right: 8px;
}

@media (max-width: 767px) {
  .page__list--prev:before {
    margin-right: 1px;
    border-width: 4px 7px 4px 0;
    top: -1px;
    position: relative;
  }
}

@media (max-width: 374px) {
  .page__list--prev:before {
    margin-right: 0;
  }
}

.page__list--next:after {
  content: '';
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 9px;
  border-color: transparent transparent transparent #ffffff;
  margin-left: 8px;
}

@media (max-width: 767px) {
  .page__list--next:after {
    margin-right: 1px;
    border-width: 4px 0 4px 7px;
    top: -1px;
    position: relative;
  }
}

@media (max-width: 374px) {
  .page__list--next:after {
    margin-left: 0;
  }
}

.gopage {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 10px;
  color: #fff;
  display: none;
}

.gopage.active {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.gopage .form__selectitem {
  height: 42px;
  width: 5em;
  margin-right: 5px;
}

@media (max-width: 767px) {
  .gopage .form__selectitem {
    height: 32px;
  }
}

@media (max-width: 480px) {
  .gopage .form__selectitem {
    height: 28px;
  }
}

.gopage .form__select {
  height: 42px;
  margin-right: 10px;
}

@media (max-width: 767px) {
  .gopage .form__select {
    font-size: 1em;
    height: 32px;
    line-height: 32px;
    padding: 0 8px;
  }
}

@media (max-width: 480px) {
  .gopage .form__select {
    height: 28px;
    line-height: 28px;
  }
}

.gopage .form__input {
  width: 2.8em;
  height: 42px;
  margin-right: 10px;
}

@media (max-width: 767px) {
  .gopage .form__input {
    font-size: 1em;
    height: 32px;
    margin-top: 5px;
    padding: 5px 8px;
  }
}

@media (max-width: 480px) {
  .gopage .form__input {
    height: 28px;
  }
}
