@charset "utf-8";
/****** Start Global Setting (Non Mobile View) ******/
@media screen and (min-width:768px) {
  .logo {
    margin: 100px auto 0;
  }
  .introduction {
    padding: 60px 0;
  }
  div.formDiv, div.thanksDiv, div.redmptionDiv {
    width: 94%;
  }
  .top-visual {
    position: unset;
  }
  .top-visual {
    margin-bottom: -100px;
  }
  .logo {
    padding-bottom: 0
  }
  .kv_margin {
    padding-top: 0;
    padding-left: 0;
    padding-bottom: 20%;
    -webkit-animation-name: none !important;
    animation-name: none !important;
  }
  .kv_base {
    width: calc(100vw - 50vw);
    -webkit-animation-name: none !important;
    animation-name: none !important;
  }
  .kv {
    padding-left: 20px;
    margin-left: unset;
    animation-delay: 0.8s;
    -webkit-animation-name: fadeIn !important;
    animation-name: fadeIn !important;
  }
  .kv img {
    max-width: 320px;
  }
  .title_wrapper {
    animation-delay: 0.4s;
  }
  .title-group {
    animation-delay: 0.6s;
  }
  .introduction p:not(.end-day) {
    margin: unset;
  }
  .product-2 {
    background: url("../_img/shadow_product2.png") no-repeat top left;
    background-size: contain;
    background-color: #f2e6d8;
  }
  .thanks-intro h1 {
    font-size: 24px;
  }
  main {
    background: url(../_img/shadow_B-R.png) no-repeat bottom right;
    background-size: 100% 100%;
  }
  .no-padding-xs {
    padding: 0 3% 5%;
  }
  .container-fluid {
    max-width: 1920px
  }
  .redeemContent {
    margin: -2% auto 5%;
  }
  div.formDiv {
    position: relative;
    top: -30px;
  }
}
@media screen and (min-width:992px) {
  .redeemContent {
    margin: 5% auto 5%;
    padding: 0 15px;
  }
}
@media screen and (min-width: 1024px) {
  /*================== Start Common Setting ==================*/
  div.formDiv {
    max-width: 1100px;
  }
  div.thanksDiv, div.redmptionDiv {
    max-width: 1100px;
  }
  .checkbox-input-field {
    width: 300px;
    display: inline-block;
  }
  /*================== End Common Setting ==================*/
  /*main {
  		background: url("../_img/shadow_B-R.png") no-repeat right bottom;
		background-size:859px 554px;
	}*/
  .redeem-form-section {
    margin-bottom: 80px !important;
    position: relative;
    top: 100px;
  }
  .top-visual {
    margin-bottom: -90px;
  }
  .introduction {
    background: url("../_img/shadow_M-R.png") no-repeat bottom right;
    background-size: contain;
    background-color: #fefbf7;
  }
  .logo {
    margin: 160px auto 55px;
  }
  .kv img {
    max-width: 640px;
  }
  .title_wrapper {
    max-width: 360px;
  }
  .title_wrapper div {
    font-size: 20px;
    line-height: 44px
  }
  .title_wrapper p {
    font-size: 22px;
  }
  .introduction p:first-child {
    font-size: 18px;
    margin: 0 auto;
  }
  .lead-in p, .product_title {
    font-size: 24px !important
  }
  .product_details {
    overflow: hidden
  }
  .product-1 .carousel {
    padding-left: 0;
    margin-left: 15px
  }
  .product-2 .carousel_margin {
    padding: 0;
    padding-right: 40px;
  }
  .carousel_margin {
    right: unset;
    left: 0;
    bottom: 0;
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%;
  }
  .product-2 .carousel {
    padding-top: 30px;
    padding-bottom: 40px;
    margin-left: 40px;
    margin-bottom: 0;
  }
  .product-2 .product_shot {
    position: relative;
    top: -50px
  }
  .product-txt {
    margin: 6% auto;
  }
  .product_desc ul {
    font-size: 16px;
    padding-left: 0;
    padding-right: 0;
  }
  .ribbon_L img, .ribbon_R img {
    max-width: 133px;
  }
  div.formDiv, div.thanksDiv, div.redmptionDiv {
    position: relative;
    top: -115px;
  }
  #form-section {
    margin-bottom: -80px;
  }
  #webForm {
    padding: 0 75px 20px;
  }
  div.thanksDiv .ribbon_L img, div.thanksDiv .ribbon_R img, div.redmptionDiv .ribbon_L img, div.redmptionDiv .ribbon_R img {
    max-width: 120px;
  }
  h4 p {
    padding-bottom: 60px
  }
  .separation {
    margin: 30px auto;
  }
  .carousel-control {
    background-size: 30px 30px;
    width: 30px;
    height: 30px;
  }
  .tc_link, .tc_link:focus, .tc_link:hover {
    color: #000000;
  }
  .product-2 .container-fluid {
    padding-right: 0;
  }
}
@media screen and (min-width:1280px) {
  .product-txt {
    margin: 6% auto;
  }
  .small-screen-move {
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(0px);
  }
  .top-visual h1 {
    font-size: 36px !important;
    color: rgb(11, 13, 38);
    line-height: 1.286;
    letter-spacing: 0.1em;
    font-weight: 900;
  }
}
@media screen and (min-width:1367px) {
  .small-screen-move {
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(90px);
  }
}
@media screen and (min-width:1440px) {
  .small-screen-move {
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(120px);
  }
  div.formDiv {
    position: relative;
    top: -65px;
    margin-bottom: 40px
  }
}
@media screen and (min-width: 1680px) {
  .small-screen-move {
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(150px);
  }
}
@media screen and (min-width:1920px) {
  .small-screen-move {
    transform: translateY(180px);
  }
  .redeemContent {
    margin: 2% auto 5%;
  }
}
@media screen and (min-width: 2560px) {
  .introduction {
    background: url("../_img/shadow_M-R.png") no-repeat center right;
    background-size: contain;
    background-color: #fefbf7;
  }
  .product-2 .container-fluid {
    padding-right: 15px;
  }
  div.formDiv, div.thanksDiv, div.redmptionDiv {
    max-width: 1250px;
  }
}
/****** End Global Setting (Non Mobile View) ******/