@charset "UTF-8";

/* Noto Sans TC (Chinese_traditional) http://www.google.com/fonts/earlyaccess */

/* @font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/NotoSansTC-Light.otf") format('opentype'),
       url("../fonts/NotoSansTC-Light.otf") format('embedded-opentype');
  font-display: fallback;
}
@font-face {
   font-family: 'Noto Sans TC';
   font-style: normal;
   font-weight: normal;
   src: url("../fonts/NotoSansTC-Regular.otf") format('opentype'),
        url("../fonts/NotoSansTC-Regular.otf") format('embedded-opentype');
  font-display: fallback;
 }
@font-face {
   font-family: 'Noto Sans TC';
   font-style: normal;
   font-weight: 600;
   src: url("../fonts/NotoSansTC-Medium.otf") format('opentype'),
        url("../fonts/NotoSansTC-Medium.otf") format('embedded-opentype');
  font-display: fallback;
 }
@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSansTC-Bold.otf") format('opentype'),
       url("../fonts/NotoSansTC-Bold.otf") format('embedded-opentype');
  font-display: fallback;
 } */

body {
  font-family: "Segoe UI", "Open Sans", "Meiryo", "微軟正黑體", "MS UI Gothic", "MS PGothic", Arial, Helvetica, sans-serif;
  font-size: 17px;
  line-height: 1.42857;
  color: #212529;
  margin: 0;
}
a {
  color: #0066bd;
}

/* p {
  font-family: "Segoe UI", "Microsoft JhengHei", "Meiryo", sans-serif;
  font-size: 16px;
  line-height: 22px;
  color: #181818;
} */

p.note {
  color: #333;
  font-size: 15px;
  font-weight: bold;
}
p.note > span:nth-child(2){
  width: calc(100% - 10px);
  display: inline-block;
  vertical-align: top;
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  *zoom: 1; /*For IE 6&7 only*/
}

.color_remark {
  color: red;
  display: inline-block;
  font-weight: bold;
  margin-right: 3px;
}
.color_grand {
  color: #e39e03;
}
.color_2nd {
  color: #868893;
}
.color_merit {
  color: #4e3884;
}
.color_region {
  color: #2c5999;
}
.color_3rd {
  color: #c64613;
}
.color_aud {
  color: #f13d2a;
}
.color_vote {
  color: #942263;
}
.color_still {
  color: #1b448b;
}
.color_best {
  color: #1a52b5;
}
.color_special {
  color: #2c87b4;
}
.color_animated {
  color: #0e73a6;
}
.color_step {
  color: #0062a9;
}
.color_submit {
  color: #b81a35;
}
.color_gold {
  color: #b6800a;
}
.color_blue {
  color: #2184cb;
}
.bg_color_still {
  background-color: #1b448b;
  color: #fff;
}
.bg_color_animated {
  background-color: #0e73a6;
  color: #fff;
}

.responsive_img {
  max-width: 100%;
  height: auto;
}

.btn {
  border-width: 1px;
  border-style: solid;
  border-radius: 50px;
  font-size: 18px;
  padding: 5px 30px 6px 30px;
  transition: background-color ease .2s, color ease .2s, border-color ease .2s;
  white-space: normal;
}
.btn svg, .btn_area a svg {
  display: inline-block;
  width: 15px;
  height: 15px;
}
.btn.focus, .btn:focus, .btn:hover {
  color: inherit;
  outline: none !important;
  text-decoration: none;
}
.btn_txt_link {
  word-break: break-all;
}
.btn_download {
  padding-left: 25px;
}
.btn_download svg {
  width: 20px;
  height: 20px;
}
.btn.color_submit {
  background-color: transparent;
  border-color: #b81a35;
  color: #b81a35;
}
.btn.color_white {
  background-color: rgba(0, 0, 0, .3);
  border-color: #fff;
  color: #fff;
}
.btn.color_white:hover {
  background-color: #fff;
  color: #212529
}
.btn.color_submit:hover {
  border-color: #b81a35;
	background-color: #b81a35;
  color: #fff;
}
.btn.color_still {
  border-color: #1b448b;
  color: #1b448b;
}
.btn.color_still:hover {
  background-color: #1b448b;
  color: #fff;
}
.btn.color_animated {
  border-color: #0e73a6;
  color: #0e73a6;
}
.btn.color_animated:hover {
  background-color: #0e73a6;
  color: #fff;
}

.btn_area.center {
  text-align: center;
}
.btn_area.right {
  text-align: right;
}

.break_line {
  width: 100%;
  height: 1px;
  background-color: #ccc;
  margin: 30px 0;
  position: relative;
}

.new_line {
  display: block;
}
@media screen and (max-width:991px) {
  .new_line {
    display: inline;
  }
}

.banner_sales {
  margin-bottom: 70px;
  text-align: center;
}
.banner_sales a {
  display: inline-block;
}
.banner_sales img {
  margin: 0 auto;
}
.banner_sales img.mobile {
  display: none;
}
@media screen and (max-width:600px) {
  .banner_sales img.pc {
    display: none;
  }
  .banner_sales img.mobile {
    display: block;
  }
}

.link_more_tutorial {
  font-size: 20px;
  font-weight: 600;
  padding: 30px 15px;
  padding-bottom: 0;
  text-decoration: underline;
}
.link_more_tutorial a:hover {
  color: #e2400e;
  transition: color ease .2s;
}
.link_video {
  width: 100%;
  max-width: 480px;
  height: auto;
  /* background-color: #333; */
  display: block;
  overflow: hidden;
  margin: 15px auto;
  position: relative;
}
.link_video img {
  position: relative;
}
.link_video::after {
  content: "";
  background-color: rgba(255,255,255,.2);
  background-repeat: no-repeat;
  background-position: center;
  color: #fff;
  display: block;
  opacity: 0;
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
  transition: opacity ease .25s;
}
.link_video:hover::after {
  background-image: url(../images/icon_play.svg);
  background-size: 25% 25%;
  opacity: 1;
}
@media screen and (max-width:768px) {
  .link_video::after {
    background-color: transparent;
    background-image: url(../images/icon_play.svg);
    background-position: 102% 95%;
    background-size: 24% 24%;
    opacity: 1;
  }
  .link_video.square::after {
    background-position: 97% 97%;
    background-size: 15% 15%;
  }
}
.flex_block {
  height: auto;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
  -ms-justify-content: flex-start;
  align-items: stretch;
  -webkit-align-items: stretch;
  -ms-align-items: stretch;
}
.flex_3_columns, .flex_2_columns {
  text-align: center;
  padding: 10px;
}
.flex_4_columns {
  width: 25%;
  height: auto;
}
.flex_3_columns {
  width: 33.3%;
  height: auto;
}
.flex_2_columns {
  width: 50%;
  height: auto;
}
@media screen and (max-width:991px) {
  .flex_3_columns, .flex_2_columns {
    width: 100%;
    padding: 10px;
  }
  .flex_4_columns {
    width: 50%;
    padding: 10px;
  }
}
@media screen and (max-width:480px) {
  .flex_4_columns, .flex_3_columns, .flex_2_columns {
    padding: 10px 0;
  }
}
.table_block {
  width: 100%;
  display: table;
}
.table_block .table_cell {
  display: table-cell;
  vertical-align: middle;
}
.video_wrapper {
  height: 100%;
  position: relative;
	padding-bottom: 52%;
	padding-top: 25px;
}
.video_wrapper iframe {
  border-top-width: 0px;
  border-right-width: 0px;
  border-bottom-width: 0px;
  border-left-width: 0px;
  position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.inline_block {
  display: inline-block;
  vertical-align: middle;
}

/* header */
header {
  width: 100%;
  box-shadow: 0px 0px 6px 3px rgba(0,0,0,.3);
  background-color: rgba(19, 19, 19, .9);
  padding: 8px 20px;
  position: fixed;
  z-index: 999;
}
header.unfixed {
  position: absolute;
}
header .custom_nav {
  width: calc(100% - 120px);
  float: left;
  position: relative;
  z-index: 1;
}
header .custom_nav .nav_ul {
  width: calc( 100% - 130px);
  float: left;
  list-style: none;
  margin: 0;
  padding: 0;
  padding-top: 4px;
  padding-bottom: 3px;
  text-align: center;
  position: relative;
}
/* @media screen and (max-width:820px) {
  header .custom_nav .nav_ul {
    width: calc( 100% - 114px);
  }
} */
header .custom_nav .nav_ul li {
  display: inline-block;
  margin: 0 5px;
  text-align: center;
  vertical-align: middle
}
header .custom_nav .nav_ul li.promo a {
  background-color: #9f7515;
}
header .custom_nav .nav_ul li.active a {
  /*border: 2px solid #be9740;*/
  color: #d5a53c;
  position: relative;
}
header .custom_nav .nav_ul li.active a:before,
header .custom_nav .nav_ul li.active a:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  display: inline-block;
  position: absolute;
}
header .custom_nav .nav_ul li.active a:before {
  border-width: 0 7px 7px 0;
  border-color: transparent #be9740 transparent transparent;
  top: 0;
  right: 0;
}
header .custom_nav .nav_ul li.active a:after {
  border-width: 7px 0 0 7px;
  border-color: transparent transparent transparent #be9740;
  bottom: 0;
  left: 0;
}
header .custom_nav .nav_ul li a {
  border-radius: 2px;
  color: #eee;
  display: block;
  font-size: 18px;
  padding: 0 1.3em;
  position: relative;
  text-decoration: none;
}
header .custom_nav .nav_ul li a {
  font-size: 17px;
}
@media screen and (max-width:820px) {
  header .custom_nav .nav_ul li a {
    font-size: 16px;
  }
}
header .custom_nav .nav_ul li a .corner {
  position: absolute;
}
header .custom_nav .nav_ul li a .corner:before,
header .custom_nav .nav_ul li a .corner:after  {
  content: "";
  background-color: #ddd;
  display: block;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  transition: all .25s ease-out;
  -moz-transition: all .25s ease-out; /* Firefox 4 */
  -webkit-transition: all .25s ease-out; /* Safari 和 Chrome */
  -o-transition: all .25s ease-out; /* Opera */
}
header .custom_nav .nav_ul li a .corner:before {
  width: 15px;
  height: 1px;
}
header .custom_nav .nav_ul li a .corner:after {
  width: 1px;
  height: 6px;
}
header .custom_nav .nav_ul li a .corner.tl {
  top: 0;
  left: 0;
}
header .custom_nav .nav_ul li a .corner.tr {
  top: 0;
  right: 0;
}
header .custom_nav .nav_ul li a .corner.bl {
  bottom: 0;
  left: 0;
}
header .custom_nav .nav_ul li a .corner.br {
  bottom: 0;
  right: 0;
}

header .custom_nav .nav_ul li a .corner.tl:before,
header .custom_nav .nav_ul li a .corner.tr:before {
  top: 0;
  transition-delay: .1s;
}
header .custom_nav .nav_ul li a .corner.bl:before,
header .custom_nav .nav_ul li a .corner.br:before {
  bottom: 0;
  transition-delay: .2s;
}
header .custom_nav .nav_ul li a .corner.tl:after,
header .custom_nav .nav_ul li a .corner.bl:after {
  left: 0;
  transition-delay: .3s;
}
header .custom_nav .nav_ul li a .corner.tr:after,
header .custom_nav .nav_ul li a .corner.br:after {
  right: 0;
  transition-delay: .4s;
}

header .custom_nav .nav_ul li a .corner.tl:before,
header .custom_nav .nav_ul li a .corner.bl:before {
  left: 30px;
}
header .custom_nav .nav_ul li a .corner.tr:before,
header .custom_nav .nav_ul li a .corner.br:before {
  right: 30px;
}
header .custom_nav .nav_ul li a .corner.tl:after,
header .custom_nav .nav_ul li a .corner.tr:after {
  top: 10px;
}
header .custom_nav .nav_ul li a .corner.bl:after,
header .custom_nav .nav_ul li a .corner.br:after {
  bottom: 10px;
}

header .custom_nav .nav_ul li a:hover .corner:before,
header .custom_nav .nav_ul li a:hover .corner:after  {
  background-color: #be9740;
  opacity: 1;
  visibility: visible;
}
header .custom_nav .nav_ul li a:hover .corner:before {
  width: 6px;
}
header .custom_nav .nav_ul li a:hover .corner:after {
  height: 6px;
}

header .custom_nav .nav_ul li a:hover .corner.tl:before,
header .custom_nav .nav_ul li a:hover .corner.bl:before {
  left: 0;
}
header .custom_nav .nav_ul li a:hover .corner.tr:before,
header .custom_nav .nav_ul li a:hover .corner.br:before {
  right: 0;
}
header .custom_nav .nav_ul li a:hover .corner.tl:after,
header .custom_nav .nav_ul li a:hover .corner.tr:after {
  top: 0;
}
header .custom_nav .nav_ul li a:hover .corner.bl:after,
header .custom_nav .nav_ul li a:hover .corner.br:after {
  bottom: 0;
}
header .hamburger {
  background-color: transparent;
  border: 0;
  border-radius: 4px;
  display: none;
  float: right;
  margin-top: 8px;
  margin-bottom: 8px;
  /* margin-right: 9px; */
  outline: none;
  padding: 9px 11px;
  position: relative;
  z-index: 2;
}
header .hamburger .icon-bar {
  width: 22px;
  height: 2px;
  background-color: #fff;
  border-radius: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  transition: transform .5s ease;
  -moz-transition: transform .5s ease; /* Firefox 4 */
  -webkit-transition: transform .5s ease; /* Safari 和 Chrome */
  -o-transition: transform .5s ease; /* Opera */
}
header .hamburger .icon-bar:nth-child(2) {
  top: 8px;
}
header .hamburger .icon-bar:nth-child(3) {
  top: 16px;
}
.dropdown_language {
  right: 0 !important;
  left: auto;
}

@media screen and (max-width:768px) {
  header .custom_nav .nav_ul {
    width: auto;
    float: none;
    position: relative;
    z-index: 2;
  }
  /*mobile_active*/
  header .custom_nav {
    width: auto;
    background-color: rgba(0,0,0,0);
    display: none;
    float: none;
    line-height: normal;
    overflow-y: scroll;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    /*overflow-y: scroll;*/
    transition: background-color .25s ease, opacity .25s ease;
    -moz-transition: background-color .25s ease, opacity .25s ease; /* Firefox 4 */
    -webkit-transition: background-color .25s ease, opacity .25s ease; /* Safari 和 Chrome */
    -o-transition: background-color .25s ease, opacity .25s ease; /* Opera */
  }
  header.mobile_active .custom_nav {
    background-color: rgba(0,0,0,1);
  }
  header .custom_nav ul {
    margin-top: 10px;
    top: auto;
    -ms-transform: none;	/* IE 9 */
    -webkit-transform: none;	/* Safari 和 Chrome */
    -o-transform: none;	/* Opera */
    -moz-transform: none;	/* Firefox */
    transform: none;
  }
  header .custom_nav .ggg {
    width: 100%;
    padding-top: 4vh;
    padding-bottom: 12px;
    position: fixed;
    top: 50%;
    -ms-transform: translateY(-50%);	/* IE 9 */
    -webkit-transform: translateY(-50%);	/* Safari 和 Chrome */
    -o-transform: translateY(-50%);	/* Opera */
    -moz-transform: translateY(-50%);	/* Firefox */
    transform: translateY(-50%);
    z-index: 2
  }
  header .custom_nav .nav_ul li {
    width: 100%;
    max-width: none;
    margin: 2vh auto;
  }
  header .custom_nav .nav_ul li.active a:before {
    border-width: 0 15px 15px 0;
  }
  header .custom_nav .nav_ul li.active a:after {
    border-width:  15px 0 0 15px;
  }
  header .custom_nav .nav_ul li a, header .custom_nav .nav_ul li a {
    /* color: #ffffff; */
    display: inline-block;
    font-size: 28px;
    padding: 0 0.5em;
  }
  header .custom_nav .nav_ul li a .corner:before {
    height: 3px;
  }
  header .custom_nav .nav_ul li a .corner:after {
    width: 3px;
  }
  header .custom_nav .nav_ul li a:hover .corner:before {
    width: 12px;
  }
  header .custom_nav .nav_ul li a:hover .corner:after {
    height: 12px;
  }
  header .hamburger {
    display: block;
  }
  /*mobile_active*/
  header.mobile_active .hamburger .icon-bar:nth-child(1) {
    transform: translateY(8px) rotateZ(-45deg);
  }
  header.mobile_active .hamburger .icon-bar:nth-child(2) {
    visibility: hidden;
    opacity: 0;
  }
  header.mobile_active .hamburger .icon-bar:nth-child(3) {
    transform: translateY(-8px) rotateZ(45deg);
  }
  /*mobile_active*/
  .dropdown_custom {
    width: 100%;
    background-color: #131313;
    border: 0;
    border-radius: 0;
    float: none;
    padding: 0;
    position: relative;
  }
  .dropdown_custom > li > a {
    color: #ddd;
    font-size: 20px;
    padding: 5px 0;
    text-align: center;
  }
  .dropdown_custom > li > a:focus, .dropdown_custom > li > a:hover {
    color: #fff;
    text-decoration: none;
    background-color: #af8a38;
  }
}
@media screen and (max-width:480px) {
  header .custom_nav .nav_ul li {
    margin: 2.5% auto;
  }
}
@media screen and (max-width:380px) {
  header {
    padding: 8px 15px;
  }
}
@media screen and (max-width:320px) {
  header .custom_nav .nav_ul li {
    /*width: 100%;*/
    margin: 2% auto;
  }
  header .custom_nav .nav_ul li a {
    font-size: 28px;
  }
}
.back_top {
  cursor: pointer;
  display: none;
  position: fixed;
  bottom: 45px;
  right: 10px;
  z-index: 9999;
}
.back_top > img {
  width: 50px;
  height: 50px;
  display: block;
}
@media screen and (max-width:600px) {
  .back_top > img {
    width: 40px;
    height: 40px;
  }
}
#cl-logo {
  width: 120px;
  float: left;
  padding-top: 3px;
}
#cl-logo a  {
  display: block;
}
#back_home {
  width: 40px;
  height: 24px;
  text-align: left;
}
#back_home a {
  width: 30px;
  display: inline-block;
  padding: 0;
  position: relative;
}
#back_home a img.gold {
  display: none;
}
#back_home a:hover img.white {
  display: none;
}
#back_home a:hover img.gold {
  display: block;
}
#back_home a .inner {
  width: 16px;
  height: 16px;
  margin: 5px auto;
  margin-bottom: 0;
}
#back_home object {
  width: 16px;
  height: 16px;
  display: block;
}
#home_language {
  float: right;
  padding-top: 4px;
  padding-bottom: 3px;
}
#home_language:focus {
  outline: none;
}
#home_language img {
  width: 24px;
  height: 24px;
  display: inline-block;
}
#home_language span {
  line-height: 28px;
  vertical-align: middle;
}
#home_language button {
  background-color: transparent;
  border-color: transparent;
  border: 0;
  color: white;
  padding: 0;
  position: relative;
}
#home_language button:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
}
@media screen and (max-width:768px) {
  header #cl-logo {
    position: relative;
    z-index: 2;
  }
  #home_language span {
    line-height: 36px;
  }
  #home_language {
    position: absolute;
    top: 8px;
    right: 0;
    z-index: 2;
  }
  header #home_language {
    width: 100%;
    border-top: 1px solid #be9740;
    display: block;
    font-size: 26px;
    padding-top: 10px;
    position: relative;
    text-align: center;
  }
  header #back_home {
    width: auto;
    height: auto;
    float: none;
    text-align: center;
  }
  header #back_home a {
    width: auto;
    height: auto;
  }
  header #back_home a .inner {
    width: 40px;
    height: 40px;
    margin: 0;
  }
  .logo_ilc {
    max-width: 392px;
  }
}

/* top banner */
.free_intro {
	font-size:15px;
	font-weight: 400;
	line-height: 20px;
}

.top_main, .top_main1, .top_main2 {
  width: 100%;
  min-height: 400px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-top: 0px;
  position: relative;
}
.top_des {
  color: #fff;
  font-weight: 600;
  padding: 20px 30px;
  position: absolute;
  text-shadow: none;
  top: calc(50% + 25px);
  transform: translateY(-50%);
}
.top_des .inner {
  color: #fff;
}
.top_main1 .top_des, .top_main1 .top_des {
  width: 70%;
  background-image: linear-gradient(to right, transparent, rgba(10, 10, 10, 0.7) 50% , transparent);
  text-align: center;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
.top_main1.portrait {
  min-height: 540px;
  background-position: center bottom;
}
.top_main1.portrait .top_des {
  width: 50%;
  background-image: none
}
.top_main1.portrait .top_des .inner {
  color: #212529;
  padding-left: 0;
}
.top_main1.portrait .top_title.mobile {
  display: none;
}
.top_main2 .top_des, .top_main2.animal .top_des {
  width: 55%;
  background-image: linear-gradient(to right, rgba(10, 10, 10, 0.7) 60% , transparent);
  position: absolute;
  text-align: left;
  transform: translateX(80%) translateY(-50%);
}
.top_main .top_des {/*dynamic photo contest*/
  width: 100%;
  position: absolute;
  top: 65%;
  text-align: center;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.65);
  /* transform: translateY(-65%); */
}
.top_main2 .top_logo {
  display: none;
}
.top_main2 .top_logo img {
  width: 140px;
}
/* .top_main2 .top_des .btn.color_submit {
  background-color: rgba(255, 255, 255, .3);
  border-color: #17355a;
  border-width: 2px;
  color: #17355a;
  font-weight: 600;
} */
.top_des .btn.color_submit {
  background-color: transparent;
  border-width: 1px;
  border-color: #fff;
  color: #fff;
}
.top_des .btn.color_submit:hover {
  border-color: #b81a35;
  background-color: #b81a35;
  color: #fff;
}
.top_main1.portrait .top_des .btn.color_submit {
  background-color: rgba(255,255,255,.5);
  border-color: #b81a35;
  color: #b81a35;
  box-shadow: 1px 1px 5px 0px rgba(0, 0, 0, 0.4);
}
.top_main1.portrait .top_des .btn.color_submit:hover {
  border-color: #b81a35;
  background-color: #b81a35;
  color: #fff;
}
.top_title {
  display: block;
  font-size: 50px;
  line-height: 1.1;
}
.top_title2, .top_title4 {
  font-size: 24px;
  margin-bottom: 15px;
  margin-top: 10px;
}
.top_title2 a {
  box-shadow: 1px 1px 4px 1px rgba(0, 0, 0, 0.4);
  text-shadow: none;
}
.top_title3 {
  font-size: 38px;
  line-height: 1.1;
  padding-top: 10px;
}
.top_main1.portrait .top_title {
  font-size: 60px;
}
@media screen and (max-width:1400px) {
  .top_title {
    font-size: 48px;
  }
  .top_title2 {
    font-size: 22px;
  }
  .top_main1.portrait {
    min-height: 420px;
  }
  .top_main1.portrait .top_title {
    font-size: 42px;
  }
  .top_main1.portrait .top_title2 {
    font-size: 20px;
  }
}
@media screen and (max-width:991px) {
  .top_title {
    font-size: 40px;
  }
  .top_title2 {
    font-size: 22px;
  }
}
@media screen and (max-width:768px) {
  .top_main {
    min-height: 360px;
  }
  .top_des {
    padding: 20px;
  }
  .top_title, .top_main1.portrait .top_title {
    font-size: 36px;
  }
  .top_title2, .top_title4, .top_main1.portrait .top_title2 {
    font-size: 18px;
  }
  .top_title3 {
    font-size: 34px;
  }
  .top_main2 .top_logo {
    display: inline-block;
  }
  .top_main2 .top_des {
    width: 100%;
    background-image: linear-gradient(to right,transparent, rgba(10, 10, 10, 0.7) 50% , transparent);
    color: #fff;
    left: 0;
    text-align: center;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.75);
    transform: translateX(0) translateY(-50%);
  }
  .top_main2.animal .top_des, .top_main1.portrait .top_des {
    width: 100%;
    background-image: linear-gradient(to right, transparent, rgba(10, 10, 10, .7), transparent);
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
  }
  .top_main2.animal .top_des .inner {
    text-align: center;
  }
  .top_main2 .top_des .btn.color_submit {
    background-color: rgba(0, 0, 0, .2);
    border-color: #fff;
    border-width: 1px;
    color: #fff;
    font-weight: 600;
  }
  .top_main1.portrait .top_des {
    background-image: linear-gradient(to top, rgba(10, 10, 10, .6) 70%, transparent);
  }
  .top_main1.portrait .top_des {
    top: 100%;
    transform: translateX(-50%) translateY(-100%);
  }
  .top_main1.portrait .top_des .inner {
    color: #fff;
  }
  .top_main1.portrait .top_des .btn.color_submit {
    background-color: transparent;
    border-color: #fff;
    color: #fff;
    font-size: 16px;
  }
  .top_main1.portrait .top_title.pc {
    display: none;
  }
  .top_main1.portrait .top_title.mobile {
    display: block;
  }
}
@media screen and (max-width:600px) {
  .top_title3 {
    font-size: 28px;
  }
  .top_title4 {
    font-size: 18px;
  }
  .top_main2.animal .top_des {
    position: absolute;
    bottom: 0;
  }
  .top_main1.portrait .top_des {
    padding-top: 30px;
  }
  .top_main1.portrait .top_title {
    font-size: 30px;
  }
  .top_main1.portrait .top_title2 {
    font-size: 17px;
  }
}
@media screen and (max-width:360px) {
  .top_main1.portrait .top_title {
    font-size: 26px;
  }
  .top_main1.portrait .top_title2 {
    font-size: 16px;
  }
}

/* photo_animation */
.top_main2.photo_animation {
  min-height: auto;
  height: 440px;
  overflow: hidden;
}
.top_main2.photo_animation > video {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: -1000;
  overflow: hidden;
}
.top_main2.photo_animation .top_des {
  background-image: none;
  z-index: 2;
}
.photo_animation .top_des .btn.color_submit {
  background-color: rgba(0, 0, 0, .25);
}
.photo_animation .top_des .btn.color_submit:hover {
  background-color: #b81a35;
  border-color: #b81a35;
  color: #fff;
}
.video_bg {
  height: 100%;
}
.video_bg > div {
  height: 100%;
  overflow: hidden;
  position: relative;
}
.video_bg > div:first-child {
  width: 22%;
  -webkit-clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
  clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
  z-index: 3;
}
.video_bg > div:first-child video {
  top: -70px;
  left: 40%;
  transform: translateX(-50%);
}
.video_bg > div:nth-child(2) {
  width: 28%;
  -webkit-clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
  clip-path: polygon(0 0, 100% 0%, 75% 130%, 0% 100%);
  left: -7%;
  z-index: 2;
}
.video_bg > div:nth-child(2) video {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.video_bg > div:last-child {
  width: 64%;
  right: 0;
  position: absolute;
}
.video_bg > div:last-child video {
  top: 45%;
  left: 50%;
  z-index: -100;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 0;
}
.video_bg video {
  width: auto;
  height: 120%;
  display: block;
  position: absolute;
}
@media screen and (min-width:1921px) {
  .video_bg video {
    height: 155%;
  }
  .video_bg > div:first-child video {
    top: -150px;
  }
  .video_bg > div:nth-child(2) video {
    top: -55px
  }
}
@media screen and (max-width:991px) {
  .video_bg > div:first-child {
    width: 46%;
  }
  .video_bg > div:nth-child(2) {
    display: none;
  }
  .video_bg > div:last-child {
    width: 70%;
  }
}
@media screen and (max-width:768px) {
  .top_main2.photo_animation {
    height: auto;
    min-height: 320px;
  }
  .video_bg > div:first-child {
    display: none;
  }
  .video_bg > div:last-child {
    width: 100%;
  }
  .video_bg > div:last-child video {
    top: 58%;
    left: 40%;
  }
  .contest_block .each.photo_animation .video_bg > div:last-child video {
    top: 50%;
  }
}
@media screen and (max-width:600px) {
  .contest_block .each.photo_animation .video_bg > div:last-child video {
    top: 40%;
    left: 30%;
  }
}
/*for ie10, ie11*/
@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none) {
  .video_bg > div:nth-child(2) video {
    left: 65%;
  }
}
/*for ie11*/
@media only screen and (max-width: 991px) {
  _:-ms-fullscreen, :root .video_bg > div:first-child {
    width: 40%;
  }
}

/* sub_nav sticky */
.sub_nav.sticky {
  width: 100%;
  box-shadow: 0px 0px 4px 2px rgba(0,0,0,.3);
  background-color: #f6f6f6;
  padding: 7px 20px;
  position: fixed;
  top: -100px;
  z-index: 998;
  transition: top ease.2s;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
  -ms-align-items: center;
}
.sub_nav.sticky.active {
  top: 0;
}
.sub_nav.sticky.active.mobile {
  top: 51px;
}
.sub_nav.sticky #icon_p_c {
  color: inherit;
  display: block;
}
.sub_nav.sticky #icon_p_c:hover, .sub_nav.sticky #icon_p_c:active, .sub_nav.sticky #icon_p_c:focus {
  text-decoration: none;
}
.sub_nav.sticky #icon_p_c > .icon, .sub_nav.sticky #icon_p_c h1 {
  display: inline-block;
  vertical-align: middle;
}
.sub_nav.sticky #icon_p_c > .icon {
  width: 37px;
  height: auto;
}
.sub_nav.sticky #icon_p_c h1 {
  font-size: 16px;
  font-weight: 600;
  line-height: 20px;
  margin: 0;
  text-align: left;
}
.sub_nav.sticky ul {
  align-items: center;
  -webkit-align-items: center;
  -ms-align-items: center;
}
.sub_nav.sticky ul > li, .sub_nav.sticky ul > li.active {
  border: none;
}
.sub_nav.sticky ul > li > a {
  padding: 9px 30px;
  transition: color ease .2s;
}
.sub_nav.sticky ul > li.active > a {
  color: #a77703;
  font-size: 17px;
  font-weight: bold;
}
.sub_nav.sticky ul > li:hover > a {
  color: #a77703;
}
.sub_nav.sticky .btn.color_submit {
  font-size: 15px;
  padding: 4px 20px;
}
@media screen and (max-width:1200px) {
  .sub_nav.sticky ul {
    display: none;
  }
}
@media screen and (max-width:991px) {
  .sub_nav.sticky ul > li > a, .sub_nav.sticky ul > li.active > a {
    font-size: 15px;
  }
  .sub_nav.sticky .btn.color_submit {
    font-size: 15px;
  }
  .sub_nav.sticky ul > li > a {
    padding: 9px 15px;
  }
}
@media screen and (max-width:768px) {
  .sub_nav.sticky ul > li > a, .sub_nav.sticky ul > li.active > a {
    font-size: 15px;
    /* padding: 6px; */
  }
  .sub_nav.sticky .btn.color_submit {
    padding: 4px 15px;
  }
}
@media screen and (max-width:380px) {
  .sub_nav.sticky {
    padding: 6px 15px;
  }
  .sub_nav.sticky #icon_p_c h1, .sub_nav.sticky .btn.color_submit {
    font-size: 14px;
    line-height: 18px;
  }
  .sub_nav.sticky #icon_p_c > .icon {
    width: 32px;
  }
}
@media screen and (max-width:340px) {
  .sub_nav.sticky {
    padding: 6px 10px;
  }
  .sub_nav.sticky #icon_p_c h1, .sub_nav.sticky .btn.color_submit {
    font-size: 13px;
    line-height: 16px;
  }
}

/* sub_nav */
.sub_nav {
  text-align: center;
  padding: 0;
  padding-top: 30px;
  position: relative;
}
.sub_nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
}
.sub_nav ul > li {
  border-bottom: 3px solid #c5c5c5;
  display: inline-block;
  position: relative;
}
.sub_nav ul > li > a {
  color: #666;
  display: block;
  font-size: 17px;
  font-weight: 600;
  line-height: 17px;
  margin: 0;
  padding: 12px 30px;
  text-decoration: none;
}
.sub_nav ul > li:hover > a {
  text-decoration: none;
}
.sub_nav ul > li.active > a {
  color: #a77703;
  font-size: 18px;
  font-weight: bold;
}
.sub_nav .highline {
  height: 3px;
  background-color: #a77703;
  position: absolute;
  bottom: 0;
  transition: left ease .25s, width ease .25s;
}
@media screen and (max-width:992px) {
  .sub_nav ul > li > a {
    font-size: 16px;
  }
}
@media screen and (max-width:768px) {
  .sub_nav {
    padding-top: 0;
  }
  .sub_nav ul {
    width: 100%;
  }
  .sub_nav ul > li {
    background-color: #f5f5f5;
    border-bottom: 2px solid #c5c5c5;
    flex: 0 0 100%;
  }
  .sub_nav ul > li.active {
    background-color: #a77703;
    border-bottom: 2px solid #a77703;
  }
  .sub_nav ul > li.active > a {
    color: #fff;
  }
  .sub_nav ul > li > a {
    width: calc(100% - 6px);
    display: inline-block;
    line-height: normal;
    padding: 15px 5px;
    vertical-align: middle;
  }
  .sub_nav .highline {
    display: none;
  }
}

/* mid_content */
.mid_content {
  padding: 50px 15px;
  padding-bottom: 70px;
}
.mid_content.with_banner {
  padding-top: 0;
  margin-top: -30px;
  position: relative;
}
.section_part {
  margin-bottom: 70px;
  text-align: center;
}
.section_part:last-child {
  margin-bottom: 0;
}
.section_part h3 {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.28;
  margin: 0;
  margin-top: 10px;
  margin-bottom: 30px;
  text-align: center;
}
.section_part h4 {
  font-size: 24px;
  line-height: 1.28;
  text-align: center;
}
.section_part > p.brief, .section_part > p.date {
  font-weight: 600;
  margin-bottom: 30px;
}
.section_part .part_icon {
  text-align: center;
}
.section_part .part_icon img {
  width: 60px;
  height: 60px;
  display: block;
  margin: 0 auto;
}
.section_part.end_submission > p {
  font-size: 16px;
  font-weight: 400;
}

@media screen and (max-width:991px) {
  .section_part > p.brief.animal_tutorial {
    display: none;
  }
}
@media screen and (max-width:600px) {
  .mid_content {
    padding: 40px 15px;
  }
}
@media screen and (max-width:480px) {
  .section_part h3 {
    font-size: 28px;
  }
  .section_part h4 {
    font-size: 22px;
  }
}

/* footer */
footer {
  width: 100%;
  background-color: #131313;
  color: #ddd;
  font-size: 14px;
  padding: 5px 0;
  text-align: center;
}
footer .copyright {
  display: inline-block;
  margin: 5px 15px;
  vertical-align: middle;
}
footer ul.sponsor {
  display: inline-block;
  list-style: none;
  margin: 0;
  padding: 0;
  vertical-align: middle;
}
footer ul.sponsor li {
  display: inline-block;
  margin: 5px 0;
  margin-right: 10px;
  vertical-align: middle;
}
footer ul.sponsor li.txt {
  margin: 5px 10px;
}
footer ul.sponsor li a {
  display: block;
}
footer ul.sponsor li a img {
  width: auto;
  height: 30px;
}

.lightbox-fixed {
  width: 100vw;
  min-height: 100%;
  height: auto;
  z-index: 10000;
  position: fixed;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, .95);
  overflow: scroll;
  overflow-x: hidden;
}
.lightbox-target {
  width: 100%;
  min-height: 100vh;
  height: auto;
  overflow: hidden;
  position: absolute;
  z-index: 10001;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.lightbox-target .lightbox-content {
  width: 60%;
  margin: 40px auto;
  padding: 0 5%;
  height: auto;
  float: none;
  position: relative;
  z-index: 10;
}
.lightbox-target .lightbox-content > img {
  width: 100%;
  height: auto;
}
.lightbox-target .lightbox-content ul {
  display: inline-block;
  padding-left: 5%;
}
.lightbox-target .lightbox-content ul li {
  text-align: left;
}
.lightbox-target .lightbox-content a.txt_link {
  color: #dea600;
  line-height: normal;
  text-decoration: underline;
}
.lightbox-target.mobile .row > div.col-md-12 {
  padding-left: 0;
}
.lightbox-target.mobile p {
  margin: 10px;
}
@media screen and (max-width: 1599px) and (min-width: 1350px) {
  .lightbox-target .lightbox-content {
    padding: 0;
  }
}
@media screen and (max-width: 1349px) and (min-width: 768px) {
  .lightbox-target .lightbox-content {
    width: 80%;
    padding: 0;
  }
}
@media screen and (max-width: 768px) {
  .lightbox-target .lightbox-content {
    width: 90%;
    padding: 0;
  }
  .lightbox-target .lightbox-content ul {
    padding-left: 10%;
  }
}
.lightbox-target .close {
  font-size: 50px;
  color: white;
  top: 2%;
  right: 5%;
  position: absolute;
  opacity: 0.5;
}
.lightbox-target .lightbox-content .inner {
  margin-top: 30px;
}
.lightbox-target .lightbox-content .separate_line {
  width: 100%;
  height: 1px;
  background-color: #666;
  margin: 0 auto;
}

/*content via photodirector lightbox*/
.lightbox-target {
  color: white;
}
@media (max-width: 991px) {
  .lightbox-target {
    text-align: center;
  }
}
.lightbox-target .download {
  width: 100%;
  color: #ffd200;
  padding: 15px;
  padding-bottom: 30px;
  text-align: center;
}
.lightbox-target .download > div {
  display: inline-block;
  vertical-align: middle;
}
.lightbox-target .download > .icon {
  width: 60px;
}
.lightbox-target .download > .download_button > span {
  display: inline-block;
  font-size: 20px;
  margin: 10px;
}
@media screen and (max-width:991px) {
  .lightbox-target .download > div {
    display: block;
    margin: 0 auto;
  }
}
@media screen and (max-width:480px) {
  .lightbox-target .download > .download_button > span {
    font-size: 17px;
  }
}
.lightbox-target .btn-white, .lightbox-target .btn-back {
  background-color: #e87000;
}
.lightbox-target .btn-white:hover {
  background-color: #ff8200;
}
.lightbox-target .btn-white span {
  color: #fff;
}
.lightbox-target .download_button a.btn-white {
  display: inline-block;
  font-size: 17px;
  vertical-align: middle;
}
.lightbox-target .download_button a.btn-white span {
  width: 18px;
  height: 23px;
  display: inline-block;
  vertical-align: middle;
}
@media (max-width: 991px) {
  .lightbox-target .btn-white {
    margin: 15px auto;
    clear: both;
    float: none;
    display: inline-block;
  }
}
.lightbox-target .back_btn {
  text-align: center;
  margin: 30px auto;
}
.lightbox-target h3.title_main, .lightbox-target h4.sub_title {
  color: #fff;
  line-height: normal;
  margin: 0;
  padding: 15px;
}
.lightbox-target h3.title_main {
  font-size: 30px;
  font-weight: normal;
  text-align: center;
}
.lightbox-target h4.sub_title {
  color: #2b9bff;
  font-size: 24px;
  text-align: center;
}
.lightbox-target .row {
  margin: 0;
  margin-bottom: 30px;
}
.lightbox-target .row > div:first-child {
  padding: 0;
  padding-left: 30px;
}
.lightbox-target .green {
  color: #56c4a7;
}
.lightbox-target .circle, .lightbox-target .circle_green {
  width: 40px;
  height: 40px;
  background-color: #0055c8;
  border-radius: 40px;
  color: #fff;
  line-height: 40px;
  vertical-align: middle;
  font-size: 26px;
  text-align: center;
  float: left;
  margin-right: 1%;
}
@media (max-width: 991px) {
  .lightbox-target .row > div:first-child {
    padding-left: 0;
  }
  .lightbox-target .circle, .lightbox-target .circle_green {
    float: none;
    clear: both;
    margin: 30px auto 10px auto;
  }
}
@media (max-width: 480px) {
  .lightbox-target .row > div {
    padding: 0;
  }
  .lightbox-target h3.title_main, .lightbox-target h4.sub_title {
    padding: 15px 0;
  }
  .lightbox-target h3.title_main {
    font-size: 24px;
  }
  .lightbox-target h4.sub_title {
    font-size: 20px;
  }
}
.lightbox-target .circle_green {
  background-color: #28856c;
}
  .lightbox-target p {
    color: #fff;
    font-size: 18px;
    margin-top: 10px;
  }
  .lightbox-target p.with_btn {
    margin-top: 7px;
  }
  .lightbox-target span {
    color: #dea600;
    display: inline-block;
    vertical-align: middle;
  }
  .lightbox-target span > a {
      color: #ffd200;
      text-decoration: underline; }
  .lightbox-target .img {
    margin: 1.5% auto;
    width: 97%; }
  .lightbox-target .img2 {
    width: 48%;
    display: block;
    margin: 1%;
    float: left; }
  .lightbox-target .btn svg {
    width: 20px;
    height: 20px;
    vertical-align: text-bottom;
  }
  .back_btn .btn.color_white {
    padding-right: 23px;
  }
@media screen and (max-width:991px) {
  .lightbox-target p {
    margin-top: 0;
  }
}
@media screen and (max-width:600px) {
  .lightbox-target p, .lightbox-target .btn {
    font-size: 16px;
  }
  .lightbox-target .btn {
    padding: 5px 20px 6px 20px;
  }
  .lightbox-target .img2 {
    width: 100%;
    float: none;
    margin: 15px auto;
  }
}

.fancy {
  /* Point 1: animation 0.3秒 */
  transition: all 0.5s ease-in-out;
  /* Point 2: 出現之前的長相 */
  border-color: transparent;
  top: -100%; }

.fancy:target {
  /* Point 3: 出現之後的長相 */
  border-color: #CCC;
  top: 0; }

.dismiss {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 1;
}
.dismiss_area {
  position: absolute;
  left: 0;
  right: 0;
  top: -40px;
  text-align: right;
  z-index: 3;
}
.dismiss_area .btn_dismiss, .dismiss_area .btn_dismiss:hover {
  width: 50px;
  height: 50px;
  display: inline-block;
  color: #fff;
  font-size: 50px;
  line-height: 50px;
  text-align: center;
  text-decoration: none;
}
.dismiss_area .btn_dismiss:hover {
  color: #aaa;
}
.fancy .dismiss_area {
  display: none;
}
.fancy:target .dismiss_area {
  display: block;
}
@media screen and (max-width: 480px) {
  .dismiss_area .btn_dismiss, .dismiss_area .btn_dismiss:hover {
    width: 40px;
    height: 40px;
    display: inline-block;
    color: #fff;
    font-size: 40px;
    line-height: 40px;
    text-align: center;
    text-decoration: none;
  }
}

/* bootstrap customs */
.form-horizontal .form-group {
  margin-left: 0;
  margin-right: 0;
}
.form-group {
  margin-bottom: 20px;
}
.form-group:last-child {
  margin-bottom: 0;
}
.form-group.sort {
  text-align: right;
  margin: 0;
  padding: 0 6px;
}
.form-group.sort label {
  margin-right: 5px;
}
.form-group.sort .form-control {
  width: auto;
  display: inline-block;
}
.help-block {
  margin-bottom: 5px;
}
.help-block i, .help-block span {
  display: inline-block;
  vertical-align: top;
}
.help-block i {
  margin-top: 5px;
}
/* .help-block span.note {
  width: calc(100% - 25px);
}
.help-block .icon {
  width: 17px;
} */
.help-block a:hover i {
  text-decoration: none;
}
.help-block a:hover span {
  text-decoration: underline;
}
.radio input[type=radio] {
  margin-top: 6px;
}
.modal-body {
  padding: 20px 15px;
}
.form-horizontal .radio {
  padding-top: 3px;
}
@media screen and (max-width:768px) {
  .form-horizontal .radio, .form-horizontal .checkbox-inline {
    padding-top: 0;
  }
}
@media screen and (max-width:640px) {
  .form-group.sort {
    text-align: center;
  }
}
@media screen and (max-width:360px) {
  .form-group {
    font-size: 15px;
  }
}

/* swiper */
.swiper_outside {
  position: relative;
}
.swiper_navi .btn_next, .swiper_navi .btn_prev {
  width: 40px;
  height: 40px;
  color: #666;
  display: inline-block;
  font-size: 40px;
  line-height: 40px;
  outline: none;
  position: absolute;
  top: 45%;
  text-align: center;
  transform: translateY(-45%);
  transition: color ease .2s;
  z-index: 2;
}
.swiper_navi .btn_next svg, .swiper_navi .btn_prev svg {
  width: 100%;
  height: 100%;
  display: block;
}
.swiper_navi .btn_next {
  right: -5%;
}
.swiper_navi .btn_prev {
  left: -5%;
}
.swiper_navi .btn_next:hover, .swiper_navi .btn_prev:hover {
  color: #333;
}
.swiper_pagi {
  color: #666;
  font-family: "Myriad Pro", Arial;
  font-size: 32px;
  line-height: 32px;
  padding-top: 10px;
  text-align: center;
}
.swiper_pagi > .swiper-pagination-current {
  color: #444;
  font-weight: 600;
}
@media screen and (max-width:992px) {
  .swiper-container {
    padding-bottom: 50px;
  }
  .swiper_navi .btn_next, .swiper_navi .btn_prev {
    top: auto;
    bottom: 0;
    transform: none;
  }
  .swiper_navi .btn_prev {
    left: 0;
  }
  .swiper_navi .btn_next {
    right: 0;
  }
}
@media screen and (max-width:600px) {
  .swiper_navi .btn_next, .swiper_navi .btn_prev {
    width: 30px;
    height: 30px;
    font-size: 30px;
    line-height: 30px;
  }
}

/* B/A Slider */
.skew-mode .ba-slider__after, .skew-mode .ba-slider__fake {
  -webkit-transform: skew(0deg);
  -ms-transform: skew(0deg);
  transform: skew(0deg);
}
.single-feature .skew-mode .ba-slider__after span, .single-feature .skew-mode .ba-slider__fake span {
  -webkit-transform: skew(0deg);
  -ms-transform: skew(0deg);
  transform: skew(0deg);
}
.skew-mode .ba-slider__after img {
  -webkit-transform: skew(0deg);
  -ms-transform: skew(0deg);
  transform: skew(0deg);
}

/* ig banner */
.ig2 {
  background: linear-gradient(225deg, #515bd4, #8134af, #dd2a7b, #f58529, #feda77);
  background-size: 150% 150%;
  -webkit-animation: ig_anime 8s ease infinite;
  -moz-animation: ig_anime 8s ease infinite;
  -o-animation: ig_anime 8s ease infinite;
  animation: ig_anime 8s ease infinite;
}
@-webkit-keyframes ig_anime {
    0%{background-position:2% 0%}
    50%{background-position:99% 100%}
    100%{background-position:2% 0%}
}
@-moz-keyframes ig_anime {
    0%{background-position:2% 0%}
    50%{background-position:99% 100%}
    100%{background-position:2% 0%}
}
@-o-keyframes ig_anime {
    0%{background-position:2% 0%}
    50%{background-position:99% 100%}
    100%{background-position:2% 0%}
}
@keyframes ig_anime {
    0%{background-position:2% 0%}
    50%{background-position:99% 100%}
    100%{background-position:2% 0%}
}
.section_part .ig2 {
  max-width: 960px;
}
.ig2 {
  color: rgba(255,255,255,1);
  margin: 0 auto;
  padding: 40px 20px;
  text-align: center;
}
.ig2 .info {
  display: inline-block;
  text-align: left;
  margin-bottom: 30px;
}
.ig2 .collapse {
  display: block;
}
.ig2 .btn_collapse {
  min-width: 100px;
  display: none;
  border-radius: 20px;
  border: 2px solid #fff;
  color: #fff;
  cursor: pointer;
  font-size: 20px;
  line-height: 20px;
  margin-bottom: 20px;
  padding: 3px 20px 8px 20px;
}
.ig2 .btn_collapse i, .ig2 .btn_collapse span {
  display: inline-block;
  vertical-align: middle;
  transition: transform ease .2s;
}
.ig2 .btn_collapse.active i {
  transform: rotateZ(180deg);
}
.ig2 .btn_collapse_cancel {
  cursor: pointer;
  display: none;
  font-size: 30px;
  line-height: 30px;
}
.ig2 .part_icon img {
  width: 60px;
  height: 60px;
  display: block;
  margin: 0 auto;
}
.section_part .ig2 h3 {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.28;
  margin: 0;
  margin-top: 10px;
  margin-bottom: 30px;
  text-align: center;
}
.ig2 h4 {
  font-size: 24px;
  font-weight: normal;
  line-height: 1.28;
  margin: 20px 0;
  text-align: center;
}
.ig2 h4:first-child {
  margin-top: 0;
}
.ig2 h4 strong {
  background-color: rgba(255,255,255,.25);
  display: inline-block;
  font-weight: 600;
  padding: 0 10px 5px 10px;
  word-break: break-word;
}
.ig2 a {
  color: #fff;
  text-decoration: underline;
}
.ig2 a:hover {
  color: #ddd;
}
.ig2 .gift_app {
  justify-content: center;
  -ms-justify-content: center;
  -webkit-justify-content: center;
  padding-bottom: 15px;
}
.ig2 .gift_app .icon_app {
  width: 60px;
  display: inline-block;
  vertical-align: middle;
}
.ig2 .gift_app span {
  display: inline-block;
  vertical-align: middle;
  padding-left: 3px;
  text-align: left;
}
.ig2 .title {
  margin-bottom: 20px;
  text-align: center;
}
.ig2 .title h3 {
  display: inline-block;
  font-size: 36px;
  font-weight: 600;
  line-height: 40px;
  margin: 10px;
  vertical-align: middle;
}
.ig2 .title i {
  font-size: 52px;
  display: inline-block;
  vertical-align: middle;
}
.ig2 .form-group {
  margin: 0 10px;
  margin-top: 20px;
  text-align: left;
}
.ig2 p.note {
  color: #f1f1f1;
  text-align: left;
}
.ig2.submit {
  margin: 0 -30px;
}

.ig2.gallery {
  color: rgba(255,255,255,1);
  margin-bottom: 40px;
  padding: 30px 60px;
  text-align: center;
}
.ig2.gallery .info {
  display: block;
  text-align: center;
}
.ig2.gallery a {
  color: #eee;
  text-decoration: underline;
}
.ig2.gallery a:hover {
  color: #fff;
}

@media screen and (max-width:991px) {
  .ig2 .title i {
    font-size: 44px;
  }
  .ig2 .title h3 {
    font-size: 28px;
    line-height: 36px;
  }
  .ig2 .collapse {
    display: none;
  }
  .ig2 .btn_collapse, .ig2 .btn_collapse_cancel {
    display: inline-block;
  }
}
@media screen and (max-width:768px) {
  .ig2.submit {
    margin: 0 -10px;
    padding: 20px 15px;
  }
  .ig2 .form-group > div, .ig2 .form-group > label {
    padding: 0;
  }
  .ig2.gallery {
    margin: 0 -15px;
    padding: 20px 15px;
  }
  .ig2 .title i, .ig2 .title h3 {
    display: inline;
  }
  .ig2.gallery .info {
    margin-bottom: 15px;
  }
}
@media screen and (max-width:480px) {
  .ig2 .title h3 {
    font-size: 24px;
    line-height: 30px;
  }
  .ig2 h4 {
    font-size: 20px;
  }
  .ig2.submit {
    margin: 0;
  }
}
