@charset "UTF-8";
html {
  width: 100%;
  /*height: 100%;*/
  /*max-height: 100%;*/
  overflow-x: hidden;
}

body {
  height: 100%;
  /*min-height: 100%;*/
  width: 100%;
  /*overflow: auto;*/
  overflow-x: hidden;
}

* { font-size: 0px; }
*:focus { outline:none; }

a {
  color: #000;
  text-decoration: none;
}

html {
  background-color: #000000;
}

body {
  background-color: #36123b;
}

.banner,
.banner * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -ms-user-drag: none;
  user-drag: none;
}

/* Body */
.container_body {
  height: 100%;
  width: 100%;
}
.container_body .container {
  position: relative;
  height: 100%;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  overflow-y: auto;
  overflow-x: hidden;
}

header {
  position: fixed;
  z-index: 101;
  height: 80px;
  width: 100%;
}
header > div {
  display: flex;
  flex-direction: row;
  height: 100%;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}
header > div > div {
  flex: 1;
  position: relative;
  height: 100%;
}
header > div > div > img, header > div > div > a {
  position: absolute;
  top: 50%;
}
header .menu_btn > img {
  left: 20px;
  transform: translate(0%, -50%);
  cursor: pointer;
  max-height: 32px;
}
header .menu_logo > a {
  left: 50%;
  transform: translate(-50%, -50%);
}
header .menu_logo > a img {
  display: block;
  height: 38px;
}
header .menu_goShop > a {
  right: 20px;
  transform: translate(0%, -50%);
}
header .menu_goShop > a img {
  display: block;
  max-height: 45px;
}

@media screen and (max-width: 350px) {
  header .menu_logo > a {
    left: 30%;
  }
  header .menu_goShop > a {
    right: 10px;
  }
}

body.openMenu .menu {
  left: 0;
}
.menu {
  position: fixed;
  top: 50px;
  left: -100%;
  border: 1px solid #ffffff;
  border-left: none;
  transition: left 0.5s;
  max-width: 100%;
  z-index: 999;
}
.menu::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0.75;
  z-index: 0;
  background-color: #fff;
}
.menu::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0.75;
  z-index: 1;
  background-image: linear-gradient(to top right, #000000, #c46a93);
}
.menu .menuitem {
  position: relative;
  display: block;
  padding: 38px 32px;
  z-index: 2;
  cursor: pointer;
}
.menu .menuitem .txt {
  display: block;
  font-size: 30px;
  width: 100%;
  text-align: center;
  color: #ffffff;
}
.menu .menuitem:not(:last-child)::before {
  content: "";
  position: absolute;
  height: 2px;
  bottom: 0;
  left: 5%;
  right: 5%;
  z-index: -1;
  background: radial-gradient(#ffffff, rgba(0, 0, 0, 0));
}
.menu .menuitem::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  background: linear-gradient(to right, rgba(0, 0, 0, 0) 5%, rgba(255, 235, 125, 0) 15%, rgba(255, 235, 125, 0) 50%, rgba(255, 235, 125, 0) 85%, rgba(0, 0, 0, 0) 95%);
  transition: 1s;
}
.menu .menuitem:hover::after {
  background: linear-gradient(to right, rgba(0, 0, 0, 0) 5%, rgba(255, 235, 125, 0.15) 15%, rgba(255, 235, 125, 0.3) 50%, rgba(255, 235, 125, 0.15) 85%, rgba(0, 0, 0, 0) 95%);
}
@media screen and (max-width: 480px) {
  .menu .menuitem { padding: 19px 22px; }
  .menu .menuitem .txt { font-size: 16px; }
}

.spotlight {
  position: absolute;
  top: 50px;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  overflow: hidden;
}
.spotlight > div {
  -webkit-transition: all 0.55s ease-out;
  -moz-transition: all 0.55s ease-out;
  -o-transition: all 0.55s ease-out;
  transition: all 0.55s ease-out;
}
.spotlight .curtain_shadow {
  position: absolute;
  opacity: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #000000;
  -webkit-transition: all 0.35s ease-out;
  -moz-transition: all 0.35s ease-out;
  -o-transition: all 0.35s ease-out;
  transition: all 0.35s ease-out;
}
.spotlight .curtain_left, .spotlight .curtain_right {
  position: absolute;
  width: 50%;
  opacity: 0.75;
  top: -10%;
  bottom: -10%;
}
.spotlight .curtain_left {
  left: 0;
  transform-origin: left top;
  transform: rotate(0deg);
  background: linear-gradient(to right, #000000 0%, rgba(0, 0, 0, 0.75) 50%, rgba(0, 0, 0, 0.35) 70%, rgba(0, 0, 0, 0.05) 75%, rgba(0, 0, 0, 0.01) 95%);
}
.spotlight .curtain_right {
  right: 0;
  transform-origin: right top;
  transform: rotate(0deg);
  background: linear-gradient(to left, #000000 0%, rgba(0, 0, 0, 0.75) 50%, rgba(0, 0, 0, 0.35) 70%, rgba(0, 0, 0, 0.05) 75%, rgba(0, 0, 0, 0.01) 95%);
}
.spotlight.sp_level_1 .curtain_shadow {
  opacity: 0;
}
.spotlight.sp_level_1 .curtain_left {
  left: -36%;
  transform: rotate(25deg);
}
.spotlight.sp_level_1 .curtain_right {
  right: -36%;
  transform: rotate(-25deg);
}
.spotlight.sp_level_2 > div {
  -webkit-transition: all 1s ease-out;
  -moz-transition: all 1s ease-out;
  -o-transition: all 1s ease-out;
  transition: all 1s ease-out;
}
.spotlight.sp_level_2 .curtain_left {
  opacity: 0;
  left: -65%;
}
.spotlight.sp_level_2 .curtain_right {
  opacity: 0;
  right: -65%;
}
.spotlight.sp_remove {
  z-index: -1;
}
.spotlight.sp_remove > div {
  -webkit-transition: all 0.1s ease-out;
  -moz-transition: all 0.1s ease-out;
  -o-transition: all 0.1s ease-out;
  transition: all 0.1s ease-ou;
}
.spotlight.sp_reset {
  z-index: 4;
}

.main {
  height: 100%;
  width: 100%;
  margin-top: 50px;
  /*padding-bottom: 160px;*/
}
.main > div {
  /*background-color: #2f1033;*/
}
.main .banner {
  position: relative;
  height: auto;
  width: 100%;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -ms-user-drag: none;
  user-drag: none;
  max-height: 100%;
}
.main .banner > * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -ms-user-drag: none;
  user-drag: none;
}
@media screen and (max-width: 1080px) {
  .main .banner { max-height: 100%; }
}
.main .background_parallax {
  position: relative;
  height: auto;
  min-height: 1px;
  max-height: 100%;
}
.main .background_parallax img {
  left: 50%;
  transform: translateX(-50%);
  height: auto;
  /*max-height: 100%;*/
}
.main .background_parallax img.parallax {
  position: absolute;
  min-height: 1px;
  top: 0;
}
.main .background_parallax img.parallax_bg {
  position: relative;
  opacity: 0;
}
.main .product_slick {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 0;
  transform: translateX(-50%);
  height: calc(100% - 80px );
  width: 100%;
}
.main .product_slick .product {
  position: absolute;
  /*top: 55%;*/
  /*top: 422px;*/
  /* top: 442px 是未含 上放圖層的高度  */
  top: 442.5px;
  /*top: 490px;*/
  left: 50%;
  transform: scale(1) translateX(-50%);
  max-width: 80vw;
  z-index: 0;
}
.main .product_slick .product img {
  min-height: 1px;
  /*max-width: 55vw;*/
}
.main .product_slick .product_area {
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: 1;
  cursor: pointer;
  cursor: e-resize;
}
.main .controler {
  position: absolute;
  left: 50%;
  bottom: 12.5%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 1200px;
  background: none;
  z-index: 5;
}
.main .controler .controler_slick { margin: 0 80px; }
@media screen and (max-width: 479px) {
  .main .controler .controler_slick { margin: 0 30px; }
}

.main .controler .controler_slick .grids span.grid_author {
  color: #ffffff;
  font-size: 16px;
  line-height: 23.5px;
  display: block;
  margin-bottom: 6px;
}
.main .controler .controler_slick .grids span.grid_title {
  color: #ffffff;
  font-size: 28px;
  line-height: 36px;
  display: block;
  margin-bottom: 20px;
  font-weight: bold;
}

.main .controler .controler_slick .grids > div {
  position: relative;
  padding: 30px;
  font-size: 16px;
  line-height: 35px;
  color: #ffffff;
  text-align: center;
  box-sizing: border-box;
}
.main .controler .controler_slick .grids > div * { font-size: 24px; }
@media screen and (max-width: 767px) {
  .main .controler .controler_slick .grids > div,
  .main .controler .controler_slick .grids > div *  { font-size: 16px; }
  .main .controler .controler_slick .grids > div { padding: 20px 10px 30px 10px; line-height: 26px; }
}
/* iPhone 5/SE */
/*@media screen and (max-width: 360px) {
  .main .controler .controler_slick .grids > div { font-size: 12px; }
}*/

.main .controler .controler_slick .grids br {
  font-size: 1px;
}
.main .controler .controler_slick .grids > div::before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; right: 0; left: 0; width: 100%; height: 100%; background-color: #000000; opacity: 0.37; border-radius: 15px; }
.main .controler .controler_slick .grids:nth-child(n+2) { display: none; }
.main .controler .cLeft, .main .controler .cRight { position: absolute; top: 50%; transform: translateY(calc(0% - 30px - 100px)); cursor: pointer; }
.main .controler .cLeft { left: 10px; }
.main .controler .cRight { right: 10px; }
@media screen and (max-width: 479px) {
  .main .controler .cLeft, .main .controler .cRight { top: 60px; transform: translateY(0); }
}

.slick-slide .cBtn.links img {
  display: block;
  margin: 0 auto;
}
.main .controler .cBtn {
  display: block;
  position: relative;
}
.main .controler .cBtn span {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  font-size: 30px;
  color: #36113b;
  text-align: center;
}

.morebox {
  cursor: pointer;
  opacity: 1;
  transition: all 0.5s;
}




header {
  top: 0;
  left: 0;
  background: -webkit-linear-gradient(90deg, #681d72, #681d72);
  background: linear-gradient(90deg, #681d72, #681d72);
  z-index: 999;
}
.spotlight { top: -20px; }
.spotlight .curtain_left {
  background: -webkit-linear-gradient(to right, #000000 0%, rgba(0, 0, 0, 0.5) 70%, rgba(0, 0, 0, 0.25) 90%, rgba(0, 0, 0, 0.05) 95%);
  background: linear-gradient(to right, #000000 0%, rgba(0, 0, 0, 0.5) 70%, rgba(0, 0, 0, 0.25) 90%, rgba(0, 0, 0, 0.05) 95%);
}
.spotlight .curtain_right {
  background: -webkit-linear-gradient(to left, #000000 0%, rgba(0, 0, 0, 0.5) 70%, rgba(0, 0, 0, 0.25) 90%, rgba(0, 0, 0, 0.05) 95%);
  background: linear-gradient(to left, #000000 0%, rgba(0, 0, 0, 0.5) 70%, rgba(0, 0, 0, 0.25) 90%, rgba(0, 0, 0, 0.05) 95%);
}
.spotlight > div {
  -webkit-transition: all 0.75s ease-out;
  -moz-transition: all 0.75s ease-out;
  -o-transition: all 0.75s ease-out;
  transition: all 0.75s ease-out;
}
.spotlight.sp_level_2 > div {
  -webkit-transition: all 1s ease-out;
  -moz-transition: all 1s ease-out;
  -o-transition: all 1s ease-out;
  transition: all 1s ease-out;
}
.productSpotlight {
  position: absolute;
  top: -20px;
  left: 50%;
  opacity: 0;
  transition: opacity 0.25s;
  transform: translateX(-50%);
}

.main .controler .controler_slick .grids { position: relative; margin-bottom: 70px; overflow: hidden; }
.main .controler .controler_slick .grids > span {
  position: relative;
  display: none;
  text-align: center;
  font-size: 36px;
  color: #ffffff;
  margin-bottom: 10px;
}

.link_player { display: none; background: rgba(0, 0, 0, 0.5);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.2) 75%, rgba(0, 0, 0, 0) 90%, rgba(0, 0, 0, 0) 100%);
  position: absolute; top: 0; bottom: 0; left: 0; right: 0; }
/*.link_player > div { width: 100px; height: 100px; border-radius: 50%; background: rgba(255, 255, 255, 0.25); position: absolute; top: 30%; left: 50%; transform: translate(-50%,-50%); }
.link_player > div > svg { position: absolute; top: 50%; left: 50%; transform: translate(-40%,-50%); }*/
.link_player .container { position: relative; width: 100%; height: 0; padding-bottom: 56.25%; max-width: 80vw; top: calc(50% - 80px); left: 50%; transform: translate(-50%,-50%); }
.link_player .video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/*.link_player > iframe { max-width: 90vw; background: rgba(255, 255, 255, 0.25);position: absolute;top: 30%;left: 50%;transform: translate(-50%,-50%); }*/

.moveDown { opacity: 0; transition: opacity 1s; position: relative;/* margin-top: -80px;*/ cursor: pointer; color: #ffffff; font-size: 24px; line-height: 32px; text-align: center; }
/*.moveDown br:first-child { display: none; }*/
.moveDown img { padding: 25px 0; }

/* 進場功能 */
.openingTop { z-index: 100; position: fixed; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(0,0,0,1); opacity: 1; transition: opacity 0.5s; }
.opening { z-index: 99; /*position: fixed;*/ position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(0,0,0,0); opacity: 1; transition: opacity 0.5s; }
.opening .openBox { position: absolute;
  /*top: 590px;*/
  top: calc( 590px + 183px );
  left: 0; right: 0; transform: translateY(-50%); width: 100%; text-align: center;
  /*background: -webkit-linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.15) 15%, rgba(0, 0, 0, 0.5) 35%, rgba(0, 0, 0, 0.75) 50%, rgba(0, 0, 0, 0.5) 65%, rgba(0, 0, 0, 0.15) 85%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.15) 15%, rgba(0, 0, 0, 0.5) 35%, rgba(0, 0, 0, 0.75) 50%, rgba(0, 0, 0, 0.5) 65%, rgba(0, 0, 0, 0.15) 85%, rgba(0, 0, 0, 0) 100%);*/
}
.opening .openBox .openTitle { margin-bottom: 15px; font-size: 36px; color: #ffffff; opacity: 0; transition: opacity 0.50s; }
.opening .openBox .openTitle img { width: 250px; }
.opening .openBox .openString { font-size: 26px; line-height: 34px; color: #ffffff; opacity: 0; transition: opacity 0.75s; }
.opening .openBox .openString br { font-size: 1; }
body.showOP .openingTop,
body.showOP .opening { opacity: 0; }
body.showOPTitle .opening .openBox .openTitle { opacity: 1; }
body.showOPString .opening .openBox .openString { opacity: 1; }
/*body.showOP.openParallax_3.showProduct .opening { opacity: 0; }*/
body.showOP.openParallax_2.showProduct .opening { opacity: 0; }

/*.main .background_parallax img { max-height: 65%; }*/
/*.main .product_slick { height: calc(60% - 80px ); }*/
/*.main .controler { top: calc(45%); bottom: auto; opacity: 0; transition: all .5s; }*/
.main .controler {
  /*top: calc(73%);*/
  top: calc(55%);
  bottom: auto; opacity: 0; transition: all .5s; }
body.showControler .main .controler,
body.showControler .moveDown { opacity: 1; }

body.showProductSpotlight .productSpotlight { opacity: 0; }

.product_area { position: absolute; top: 0; height: 100%; width: 100%; max-height: 85vh; z-index: 1; cursor: pointer; cursor: e-resize; }
/*@media screen and (max-width: 767px) { .product_area_pc { display: none; } }*/

.cBtn { text-align: center;/* padding: 0px 0px 110px;*/ }
.cBtn .links { display: inline-block; font-size: 0px; position: relative; transition: all 0.5s ease 0s; }
.cBtn .finger { position: absolute; top: 23px; right: calc( 50% - 130px ); width: 36px; height: 43px; background-size:36px; background-image: url(https://klim.nestle.com.tw/sites/default/frontend/goodnight/event_01/images/page/point.svg); background-repeat:no-repeat; animation: 1s ease 0s infinite normal none running ffa; }
.cBtn .links:hover { box-shadow: rgba(255, 255, 255, 0.8) 0px 0px 15px; filter: contrast(120%); }

.btnblock_mobile { display: none; }

.main .background_parallax img.parallax { position: relative; max-height: none; height: 100%; transform: translateX(calc(-50% + -0px)); /*top: 80px;*/ }
.main .background_parallax .imgBox { height: calc(100vh - 80px); min-height: 1px; top: 0; bottom: 0; left: 0; right: 0;/* overflow: hidden;*/ max-height: 65%; }
/*.main .background_parallax .imgBox::before{ content: ""; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-image: url(https://klim.nestle.com.tw/sites/default/frontend/goodnight/event_01/images/background_main.png); background-repeat: repeat-x; background-position: bottom; z-index: 99; }*/
.main .background_parallax .imgBox img { position: relative; }

/*.banner_box::before{ height: 200px; content: ""; position: absolute; top: unset; bottom: 0; left: 0; right: 0; background-image: url(https://klim.nestle.com.tw/sites/default/frontend/goodnight/event_01/images/background_main.png); background-repeat: repeat-x; background-position: bottom; z-index: 4; background-size: contain; }*/
.banner_box .background_parallax::before{ content: ""; position: absolute; top: 0; bottom: 0; left: -20%; right: -20%; background-image: url(https://klim.nestle.com.tw/sites/default/frontend/goodnight/event_01/images/background_main.png); background-repeat: repeat-x; background-position: bottom; z-index: 1; background-size: 1px 200px; }

.banner_box { position: relative; min-height: 720px;/* height: calc(100vh - 80px);*/ margin-bottom: 160px; }
.box_3 .gridbox .grids:nth-child(n+6) { transition: opacity 1s; opacity: 0; display: none; }


/* Main 文字框 & 文字框iPad */
.pc_show { color: #ffffff; }
@media screen and (min-width: 769px) {
  .pc_none { display: none; }
}
@media screen and (max-width: 768px) {
  .pc_show { display: none; }
}

/* 產品區 奶粉罐&牛奶一杯 */
.box_1 .imgs::after {
  content: none !important;
  z-index: 3 !important;
  height: 188px !important;
  width: 201px !important;
  background-size: cover;
  background-image: url(https://klim.nestle.com.tw/sites/default/frontend/goodnight/event_01/images/page/afterMilk.png) !important;
  background-repeat: no-repeat;
}

/* ==============================================
* Light Effect
==============================================*/
.light { position: relative; border-radius: 35px 35px 50px 50px; border: 0; cursor: pointer; overflow: hidden; outline: none; transition: all 0.2s ease; }
.light:after { animation: shine 2.5s ease infinite; content: ''; position: absolute; top: 0; left: -200%; width: 100%; height: 100%; max-height: 57px; transform: skewX(-20deg); background-image: linear-gradient(to right, transparent, rgba(255,255,255,.8), transparent); }
.light:nth-child(2):after { animation-delay: 0.25s; }
.light:hover:after { animation: shine 1.6s ease infinite; }
.light:active { transform: translateY(1px); box-shadow: 0 4px 16px rgba(0,0,0,0.2); }
@-moz-keyframes shine {
  100% { left: 200%; }
}
@-webkit-keyframes shine {
  100% { left: 200%; }
}
@-o-keyframes shine {
  100% { left: 200%; }
}
@keyframes shine {
  100% { left: 200%; }
}



.main { max-width: 1920px; margin: 50px auto 0; }
.main .background_parallax,
.main .background_parallax img.parallax { height: 873px; max-height: 873px; }

.productEffect {/* left: 0% !important;*/ }

.main .background_parallax { transform: scale(0.9); transform-origin: top; transition: all 1s; }
/*.main .product_slick .product { transform: scale(0.8) translate(-55%, -120%); transition: all 4.5s; }*/
body.zoomIn .main .background_parallax { transform: scale(1.0) translateY(-60px); }
/*body.zoomIn .main .product_slick .product { transform: scale(0.9) translate(-48%, -110%); }*/

.main .product_slick .product { transform: scale(1) translate(-50%, -50%); }

/* 鉅作切換補間 */
/*body.changeStep_1 .parallax { transition: all 0.25s; transform: translateX(-50%) !important; }
body.changeStep_1 .productEffect { transition: all 0.15s; transform: translateX(0%); }
body.changeStep_2 .parallax { transform: translateX(-55%) !important; }
body.changeStep_2 .productEffect { transform: translateX(-10%); }
body.changeStep_3 .parallax { transform: translateX(-45%) !important; }
body.changeStep_3 .productEffect { transform: translateX(10%); }
body.changeStep_4 .parallax { transition: all 0.5s; }
body.changeStep_4 .productEffect { transition: all 0.5s; }
body.changeStep_5 .parallax { transform: translateX(-50%) !important; }
body.changeStep_5 .productEffect { transform: translateX(0%); }*/
body.changeStep_1 .parallax {  }
body.changeStep_1 .productEffect {  }
body.changeStep_2 .parallax {  }
body.changeStep_2 .productEffect {  }
body.changeStep_3 .parallax {  }
body.changeStep_3 .productEffect {  }
body.changeStep_4 .parallax {  }
body.changeStep_4 .productEffect {  }
body.changeStep_5 .parallax {  }
body.changeStep_5 .productEffect {  }

/* 進場動畫補充,輪廓與閃光 */
.main .background_parallax div.parallax_screen { z-index: 4; opacity: 1; transition: opacity 0.25s; position: absolute; height: calc(100%); top: 0; left: -20%; right: -20%; background: linear-gradient( rgba(0,0,0,.85), rgba(0,0,0,0) ); }
.main .background_parallax img.parallax_contour { z-index: 3; opacity: 1; transition: opacity 0.85s; position: absolute; top: 0px; left: 50%; transform: translateX(-50%); }
.main .background_parallax img.parallax_flash { display: none; z-index: 2; opacity: 1; transition: opacity 0.60s; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }

body.openParallax_1 .main .background_parallax div.parallax_screen,
body.openParallax_2 .main .background_parallax img.parallax_contour,
body.openParallax_3 .main .background_parallax img.parallax_flash { opacity: 0; }
body.showOP.openParallaxEnd .opening { opacity: 1; }

body.openParallax_hide .main .background_parallax div.parallax_screen,
body.openParallax_hide .main .background_parallax img.parallax_contour,
body.openParallax_hide .main .background_parallax img.parallax_flash { display: none; z-index: -99; }

/* 操作提示文字 */
.product_prompt { z-index: 1; position: absolute; top: 90px; left: 10px; font-size: 16px; color: #dcdcdc; padding: 3px 5px; background: rgba(0, 0, 0, .5); border: 0; border-radius: 15px; opacity: 0; transition: opacity 1s; }
.openParallax_hide .product_prompt { opacity: 1; }
.openParallax_hide .product_prompt.hidePP,
.shopOpenEnd.openParallax_2 .product_prompt.hidePP { opacity: 0 !important; }

/* 她們的深夜鉅作 */
.main .product_slick .mainTitleWhite { position: absolute !important; top: 74px; left: 50%; transform: translateX( calc( -50% + 5px ) ); transition: opacity 1s; opacity: 0; }
.main .product_slick .mainTitleWhite img { width: 230px; }
.openParallax_hide .main .product_slick .mainTitleWhite { opacity: 1; }
.shopOpenEnd .main .product_slick .mainTitleWhite { opacity: 0 !important; transition: opacity 0.25s; }
.shopOpenEnd.openParallax_2 .main .product_slick .mainTitleWhite { opacity: 1 !important; transition: opacity 1s; }

/* ********************************
最後一次開場調整,增加Class給開場時間調整
******************************** */
body.webSiteOpening .main .background_parallax img.parallax_contour { transition: opacity 0.425s; }
body.showOP.webSiteOpening .openingTop { opacity: 0 !important; }
body.showOP.webSiteOpening .opening { opacity: 1 !important; }
body.showOP.webSiteOpening.zoomIn .opening { opacity: 0 !important; }
/*body.showOP.webSiteOpening .spotlight .curtain_shadow { background-color: rgba(0,0,0,0.25); }
body.showOP.webSiteOpening .spotlight .curtain_left { transform: rotate(10deg); }
body.showOP.webSiteOpening .spotlight .curtain_right { transform: rotate(-10deg); }
body.showOP.webSiteOpening .spotlight.sp_level_1 .curtain_left { left: -25%; transform: rotate(35deg); }
body.showOP.webSiteOpening .spotlight.sp_level_1 .curtain_right { right: -25%; transform: rotate(-35deg); }*/
.main .background_parallax img.parallax_contour { transition: opacity 0.425s; }


@media screen and (max-width: 1280px) {
  /*.main .product_slick .product { transform: scale(0.8) translate(-55%, -45%); max-width: 212px; width: 80%; }
  .main .product_slick .product{ transform: scale(0.8) translateX(-55%); top:200px; }
  .main .product_slick .product img{ width:100%; min-height:auto; max-width:none; }*/
}

@media screen and (max-width: 1023px) {
  .box_1 .btnblock { display: none; }
 
  .light { border-radius: 35px 35px 55px 55px; }
  .light:after { max-height: 41.5px; }

  .btnblock_mobile { 
    display: block;
    position: fixed;
    margin: auto;
    text-align: center;
    bottom: -85px;
    left: 50%;
    width: 100%;
    transition: bottom 0.25s;
    transform: translateX(-50%); z-index: 99; }
  .btnblock_mobile .btns { width:46%; margin:0 1%; display: inline-block; vertical-align: middle; max-width: 200px; }
  .btnblock_mobile .btns img { width: 100%; }
  .btnblock_mobile.showBtnMobile { display: block; margin: 0; padding: 87px 0 15px 0; bottom: 0; }

  .btnblock_mobile::before{ content: ""; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-image: url(https://klim.nestle.com.tw/sites/default/frontend/goodnight/event_01/images/page/share_bg.png); background-repeat: repeat-x; background-position: bottom; background-size: contain; z-index: -1; }
}

@media screen and (max-width: 767px) {
  /*.main .product_slick .product { transform: scale(0.8) translate(-55%, -45%); }*/
  /*.main .product_slick .product{ transform: scale(0.8) translateX(-55%); top:70px; max-width: 180px; }*/
  /* top:78px 是未含 上放圖層的高度  */
  .main .product_slick .product { transform: scale(1) translateX(-50%);
    top:78px;
    /*top: 105px;*/
    width: 100%; max-width: 336px; min-width: 336px; }
  .main .product_slick .product img { width: 100%; max-width: unset; }
}

.r_txt img { max-height: 57px; }
.gstart { position: relative; padding: 10px 0 0 0; }
.gstart .gstart_pic { display: inline-block; height: 30px; width: 30px;  }


.opening .openBox .openBoxCenter { display: inline-block; }
@media screen and (max-width: 767px) {
  .banner_box{ margin-bottom:0;}
  .opening .openBox { top: 360px; margin: 0 auto; }
  .opening .openBox .openTitle { display: block; text-align: center; /*min-width: 60vw;/* margin-left: -26px;*/ margin-bottom: 0px; }
  .opening .openBox .openTitle img { display: inline-block; text-align: left; width: 137.5px; max-width: 100%; }
  .opening .openBox .openString { display: block; text-align: center; font-size: 16px; /*min-width: 60vw;*/ }

  header{ height:40px;}
  header .menu_btn > img { height: 15px; padding: 0px; }
  header .menu_logo > a img{ height:24.5px;}
  header .menu_goShop > a img {height: 22px; }
  
  .menu{ top:40px;}

  /*.main { padding-bottom: 100px; }*/
  .main { margin-top: 40px; /*margin-bottom: 50px;*/ }
  .main .controler{ top:234px; }
  .main .controler .controler_slick .grids > span.grid_author { font-size:12.5px; line-height: 18.405px; display: block; margin-bottom: 6px; }
  .main .controler .controler_slick .grids > span.grid_title { font-size:24px; line-height: 30.655px; display: block; }
  .main .controler .cLeft { left: -10px; }
  .main .controler .cLeft > img { height: 60px; }
  .main .controler .cRight { right: -10px; }
  .main .controler .cRight > img { height: 60px; }
  .main .controler .controler_slick .grids > div,
  .main .controler .controler_slick .grids > div * { font-size: 14.5px; line-height: 31.25px; }

  .main .controler .cBtn { top: 0; transform: translateY(-50%); }
  .cBtn img { max-width: 150px;  }
  .cBtn .finger { top: 0px; right: calc( 50% - 65px ); width: 20px; height: 20px; background-size:19px; animation: 1s ease 0s infinite normal none running ffc; }
  @keyframes ffc{ 
    0%{ top:6px; }
    50%{ top:9px;}
    100%{ top:6px; }
  }
  
  /*.main .background_parallax, .main .background_parallax img.parallax{ height:514px; max-height:none; }*/
  .main .background_parallax, .main .background_parallax img.parallax,
  .main .background_parallax img.parallax_contour,
  .main .background_parallax img.parallax_flash { height:325px; max-height:none; }

  .moveDown { font-size: 24px; line-height: 30px; }
  .moveDown br:first-child { display: block; }
  .moveDown img { padding: 0 0 5px 0; width: 48.5px; }

  .box_1 .imgs::after { height: 110px !important; width: 100px !important; background-size: 142px !important; }
  .link_player, .productSpotlight { top: -60px; }
  .mar .box_2 { padding-top: 80px; padding-bottom: 80px; }

  .r_txt img { max-height: 34px; }

  .gstart .gstart_pic { display: inline-block; height: 25px; width: 25px;  }

  .product_prompt { top: 45px; left: 5px; font-size: 12px; }

  /* 她們的深夜鉅作 */
  .main .product_slick .mainTitleWhite { position: absolute !important;
    /*top: 44px;*/
    top: 0px;
    left: 50%; transform: translateX(-50%); transition: opacity 1s; opacity: 0; }
  .main .product_slick .mainTitleWhite img { width: 150px; }
  .openParallax_hide .main .product_slick .mainTitleWhite { opacity: 1; }

  /* 行動版本ZoomIn */
  body.zoomIn .main .background_parallax { transform: scale(1.0) translateY(0px); }
}
@media screen and (min-width:768px) and (max-width:1440px){
  .menu .menuitem{ padding:25px 30px;}
}

/********* 優質工程師的建議,我很感謝! *********/

header {
  position: fixed;
  z-index: 101;
  height: 50px;
  width: 100%;
}

.openParallax_hide .product_prompt {
  opacity: 1;
  font-size: 18px;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  top: 38%;
  padding-right: 15px;
  padding-left: 15px;
  letter-spacing: 2px;
  background-color: rgba(0, 0, 0, .5) !important;
}

/* 黑色框內容部分 */
.main .controler .controler_slick .grids span.grid_author {
  color: #ffffff;
  font-size: 16px;
  line-height: 23.5px;
  display: block;
  margin-bottom: 4px;
}

.main .controler .controler_slick .grids span.grid_title {
  color: #ffffff;
  font-size: 28px;
  line-height: 36px;
  display: block;
  margin-bottom: 20px;
  font-weight: bold;
}

.main .controler .controler_slick .grids > div {
  position: relative;
  padding: 30px;
  color: #ffffff;
  text-align: center;
  box-sizing: border-box;
  font-size: 16px;
  line-height: 39px;
  font-weight: 100;
  letter-spacing: 2px;
}
.main .controler .controler_slick .grids > div .pc_show { font-size: 16px; }

/*分享按鈕縮小 上提越過黑色方框下*/
.main .controler .cBtn {
  display: block;
  position: relative;
  transform: scale(0.75);
  top: -30px;
}

/**********************************************/

@media screen and (max-width: 767px) {
  header {
    height: 40px;
  }

  .openParallax_hide .product_prompt {
      font-size: 12px;
      left: 50%;
      transform: translateX(-50%);
      position: absolute;
      top: 242px;
      padding-right: 15px;
      padding-left: 15px;
      letter-spacing: 2px;
      background-color: rgba(0, 0, 0, .5) !important;
  }

  /**********************************************/

  .grid_author {
    margin-bottom: 4px;
  }

  .main .controler .controler_slick .grids span.grid_title {
      color: #ffffff;
      font-size: 26px;
      line-height: 36px;
      display: block;
      margin-bottom: 16px;
      font-weight: bold;
  }

  .main .controler .controler_slick .grids > div,
  .main .controler .controler_slick .grids > div * {
      font-size: 16px;
      line-height: 42px;
      font-weight: 100;
      letter-spacing: 2px;
  }

  .main .controler .cBtn {
    top: 0;
    transform: translateY(-50%);
  }
}

/**************************************/


@media screen and (max-width: 767px) {
  .moveDown {
    font-size: 18px;
    line-height: 30px;
    top: -40px;
  }
}