@charset "UTF-8";
/********************************
*
* SP/PCの共通CSS
* PCのみのCSSは「style_pc.css」で対応
* 相対値は780px（または390px）を基準
*
*********************************/
/* common
------------------------------*/
html, body {
  position: relative;
  height: unset; /* common.cssの打ち消し */
  scroll-padding-top: min(15.3846vw, 72px);
  scroll-behavior: smooth;
}
body {
  background: #fe8d1d;
  color: #333;
  font-family: メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size: 1em;
  font-weight: normal;
  line-height: 1.5!important;
  text-align: left;
}
ul, li {
  list-style: none;
}
a:hover {
  text-decoration: none;
}
a:hover img {
  opacity: 1;
}
.bgWrapper {
  position: relative;
  width: 100%;
  height: 100%;
  background: #fe8d1d;
}
.bgWrapper * {
  box-sizing: border-box;
}
.bgWrapper img {
  width: 100%;
  max-width: 780px;
  height: auto;
  /* vertical-align: bottom; */
  object-fit: contain;
}
.bgWrapper a {
  backface-visibility: hidden;
  transition: all .2s;
}
.bgWrapper a:hover {
  opacity: .7;
}
.bgWrapper .underline {
  text-decoration: underline;
  text-underline-position: under;
  text-decoration-line: underline;
  text-decoration-skip-ink: none;
}
.bgWrapper .indent {
  padding-left: 1em;
  text-indent: -1em;
}
.bgWrapper .small {
  font-size: 12px;
}
.bgWrapper .bold {
  font-weight: bold;
}
.bgWrapper .center {
  text-align: center;
}
.bgWrapper .left {
  text-align: left;
}
.bgWrapper .red {
  color: #d00;
}
.bgWrapper .pc_hidden {
  display: none;
}
.bgWrapper .sp_hidden {
  display: none;
}
/* layout
------------------------------*/
.centerWrapper {
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding-top: min(15.3846vw, 72px);
  overflow-x: hidden;
  overflow-y: auto;
  background: #fe8d1d;
  color: #333;
  font-size: 15px;
}
.container {
  width: 100%;
  max-width: 780px;
  margin: min(calc(48 / 780 * 100%), 28px) auto 0;
}
/* 横スクロール区切り線
------------------------------*/
.slash_line {
  display: flex;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  overflow: hidden;
}
.slash_line .is-animate-slash {
  display: flex;
  animation: scroll-x 15s linear infinite;
}
.slash_line .is-animate-slash img {
  width: 50vw;
  max-width: 385px;
}
@keyframes scroll-x {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
/* header
------------------------------*/
#header_common {
  display: flex;
  position: fixed;
  z-index: 1000;
  top: 0;
  box-sizing: border-box;
  width: 100%;
  height: 15.3846vw;
  max-height: 72px;
  background: #fff;
}
.header_area {
  position: relative;
}
.header_area .logo_bktk {
  flex: 1;
  min-width: 0;
  padding: 8px 0;
}
.header_area .logo_bktk a {
  display: block;
  height: 100%;
  text-align: left;
}
.header_area .logo_bktk img {
  width: auto;
  height: 100%;
}
.header_area .cmoatop {
  flex: 1;
  min-width: 0;
  padding: min(calc(12 / 390 * 100%), 12px);
}
.header_area .cmoatop a {
  display: block;
  height: 100%;
  text-align: right;
}
.header_area .cmoatop img {
  width: auto;
  height: 100%;
}
.menu_toggle {
  display: block;
  position: relative;
  flex: 0 0 auto;
  width: 15.3846vw;
  max-width: 60px;
  height: 15.3846vw;
  max-height: 72px;
  cursor: pointer;
}
.menu_toggle span {
  display: block;
  position: absolute;
  left: 50%;
  width: 50%;
  height: 3px;
  transform: translate(-50%, -1px);
  transition: 0.3s ease;
  border-radius: 20px;
  background: #e85504;
}
.menu_toggle span:first-child {
  top: 36%;
}
.menu_toggle span:nth-child(2) {
  top: 50%;
}
.menu_toggle span:nth-child(3) {
  top: 64%;
}
.hiddenServiceMenu .menu_toggle span:first-child {
  top: 50%;
  transform: translate(-50%, -1px) rotate(40deg);
}
.hiddenServiceMenu .menu_toggle span:nth-child(2),
.hiddenServiceMenu .menu_toggle span:nth-child(3) {
  top: 50%;
  transform: translate(-50%, -1px) rotate(-40deg);
}
.hiddenServiceMenu .menu_block {
  display: block!important;
}
/* サービスメニュー用 */
.sideMenu2402 {
  position: fixed;
  z-index: 10000;
  top: min(15.3846vw, 72px);
  left: 0;
  width: 100%;
}
.otherMenu .menuServiceSubtitle.sns a img {
  width: auto;
  height: 25px;
}
.menu_block .sideLeftMenu {
  max-width: 480px;
}
/* アニメーション（fadein）
--------------------------------*/
.is-fadein {
  opacity: 0;
}
.is-fadein.animate_kv_inner,
.is-fadein.bktk1,
.is-fadein.is-shown,
.is-fadein.is-animate {
  animation: fadeIn .8s ease-in forwards;
}
.bktk1_wrapper.is-shown .is-fadein {
  animation: fadeIn .8s ease-in forwards;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* アニメーション（fluffy）
--------------------------------*/
.is-shown .is-fluffy,
.is-animate .is-fluffy {
  animation: fluffy 1.5s infinite;
}
.is-animate .is-fluffy-small {
  animation: fluffy-small 1.5s infinite;
}
@keyframes fluffy {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8%);
  }
}
@keyframes fluffy-small {
  50% {
    transform: translateY(2%);
  }
}
/* アニメーション（poyoyon）
--------------------------------*/
.is-animate {
  .is-poyoyon2 {
    animation: poyoyon2 1s ease forwards;
  }
  .is-poyoyon3 {
    animation: poyoyon3 2.5s infinite;
  }
}
@keyframes poyoyon2 {
  0% {
    transform: scale(1.0, 1.0) translate(0, 0);
  }
  15% {
    transform: scale(0.98, 0.9) translate(0, 5px);
  }
  30% {
    transform: scale(1.02, 1.0) translate(0, 8px);
  }
  50% {
    transform: scale(0.98, 1.05) translate(0, -8px);
  }
  70% {
    transform: scale(1.0, 0.9) translate(0, 5px);
  }
  100% {
    transform: scale(1.0, 1.0) translate(0, 0);
  }
  0%, 100% {
    opacity: 1;
  }
}
@keyframes poyoyon3 {
  0%, 40% {
    transform: skew(0deg, 0deg);
  }
  5% {
    transform: skew(4deg, 4deg);
  }
  10% {
    transform: skew(-4deg, -4deg);
  }
  15% {
    transform: skew(3deg, 3deg);
  }
  20% {
    transform: skew(-2deg, -2deg);
  }
  25% {
    transform: skew(1deg, 1deg);
  }
  30% {
    transform: skew(-0.6deg, -0.6deg);
  }
  35% {
    transform: skew(0.3deg, 0.3deg);
  }
}
/* kv
--------------------------------*/
.kv_wrapper {
  position: relative;
  z-index: 1;
  padding-bottom: 20px;
  overflow: hidden;
}
.kv_inner {
  filter: drop-shadow(0 10px 10px rgb(202 55 10 / 40%));
}
.animate_kv {
  position: relative;
  height: 88vh;
  clip-path: polygon(
    0 0,
    100% 0,
    100% calc(100% - min(180 / 780 * 100vw, 180px)),
    50% 100%,
    0 calc(100% - min(180 / 780 * 100vw, 180px))
  );
  background: #fe8d1d;
}
.animate_kv_inner {
  position: relative;
  width: 100%;
  max-width: 780px;
  height: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 376px) {
  .animate_kv {
    height: 82vh;
  }
}
@media screen and (min-width: 481px) {
  .animate_kv {
    height: auto;
    aspect-ratio: 1 / 1.379;
  }
}
@media screen and (min-width: 771px) {
  .animate_kv {
    height: 1100px;
    aspect-ratio: unset;
  }
}
/* KVロゴ */
.animate_kv .kv_logo_wrap {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: calc(576 / 780 * 100%);
  max-width: 576px;
  max-height: 445px;
  padding-top: calc(445 / 780 * 100%);
  transform: translate(15.104%, 37.3033%);
}
.animate_kv .kv_logo_wrap_inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.animate_kv .kv_logo {
  position: absolute;
}
.animate_kv .kv_logo_1 {
  z-index: 2;
  top: 0;
  right: 0;
  width: calc(259 / 576 * 100%);
  max-width: 259px;
  transform: translate(0, 6.708%);
  transform-origin: bottom;
  animation: kv-logo1 .4s ease-out forwards;
}
.animate_kv .kv_logo_3 {
  z-index: 1;
  top: 0;
  right: 0;
  width: calc(210 / 576 * 100%);
  max-width: 210px;
  transform: translate(-11.4296%,147.1317%);
  animation: kv-logo3 .4s ease-out .1s forwards;
}
.animate_kv .kv_logo_2 {
  z-index: 3;
  bottom: 0;
  left: 0;
  width: calc(466 / 576 * 100%);
  max-width: 466px;
  transform: translate(18.4557%, 0);
  animation: kv-logo2 .4s ease-out .2s forwards;
}
.animate_kv .kv_logo_4 {
  z-index: 0;
  top: 0;
  left: 0;
  width: calc(367 / 576 * 100%);
  max-width: 367px;
  transform: translate(0, 0);
  transform-origin: right;
  animation: kv-logo4 .46s ease-out .3s forwards;
}
/* アニメーション（KVロゴ） */
@keyframes kv-logo1 {
  0%, 100% {
    scale: 1;
  }
  60% {
    scale: 1.2;
  }
}
@keyframes kv-logo3 {
  0%, 100% {
    scale: 1;
  }
  60% {
    scale: 1.1;
  }
}
@keyframes kv-logo2 {
  0%, 100% {
    scale: 1;
  }
  60% {
    scale: 1.1;
  }
}
@keyframes kv-logo4 {
  0%, 100% {
    scale: 1;
  }
  60% {
    scale: 1.2;
  }
}
/* KVその他 */
.animate_kv .kv_parts {
  position: absolute;
}
.animate_kv .kv_parts img {
  max-width: inherit;
}
.animate_kv .kv_parts-bg {
  z-index: 0;
  top: 0;
  left: -50%;
  width: 100%;
  width: calc(1547 / 780 * 100%);
  max-width: 1547px;
  transform: translate(0, -23.8596%);
  animation: kv-bg .8s ease forwards;
}
.animate_kv .kv_parts-talent {
  position: relative;
  z-index: 3;
  top: 0;
  left: 50%;
  width: calc(908 / 780 * 100%);
  max-width: 908px;
  transform: translate(-50%, 80.471%);
  transition: all .4s;
  animation: kv-talent .5s ease-in .5s forwards;
  opacity: 0;
}
.animate_kv .kv_parts-talent::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -90%;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, #fe8d1d 90%, transparent);
}
.animate_kv .kv_parts-text {
  z-index: 2;
  top: 0;
  left: 50%;
  width: calc(680 / 780 * 100%);
  max-width: 680px;
  transform: translate(-50%, 117.4603%);
}
.animate_kv .kv_parts-text img {
  width: calc(680 / 780 * 100vw);
  max-width: 680px;
}
.animate_kv .kv_text_wrap {
  width: 100%;
  overflow: hidden;
  animation: kv-textWrap .8s ease-out forwards;
}
@keyframes kv-bg {
  0% {
    scale: 0.8;
  }
  82% {
    scale: 1.1;
  }
  100% {
    scale: 1;
  }
}
@keyframes kv-talent {
  0% {
    top: 8%;
    opacity: 0;
  }
  60% {
    top: -2%;
    opacity: 100%;
  }
  100% {
    top: 0;
    opacity: 100%;
  }
}
@keyframes kv-textWrap {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@keyframes kv-logo {
  0%, 100% {
    scale: 1;
  }
  60% {
    scale: 1.2;
  }
}
/* bktk_area 共通
--------------------------------*/
.bktk_area {
  position: relative;
  z-index: 0;
}
.bktk_area .bktk_bg {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: 100%;
}
.is-animate .bktk_bg {
  animation: bktk-bg .8s ease-in forwards;
}
@keyframes bktk-bg {
  70% {
    background-size: 180%;
  }
  100% {
    background-size: 160%;
  }
}
/* bktk1_area
--------------------------------*/
.bktk_area.bktk1 {
  margin-top: calc(min(180 / 780 * 100vw + 20px, 200px) * -1);
  overflow: hidden;
}
.bktk_area.bktk1 .bktk_bg {
  background: linear-gradient(90deg, #232121, #564d4d, #232121);
}
.bktk1_wrapper {
  position: relative;
  max-width: 780px;
  height: 100%;
  /* margin: 2vw auto 0; */
  margin: 0 auto;
}
.bktk1_inner {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  /* aspect-ratio: 1 / 1.53846; */
  aspect-ratio: 1 / 1.55846;
}
/* bktk1_kyojin_wrap（重なり順1） */
.bktk1_kyojin_wrap {
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.bktk1_kyojin_wrap > * {
  opacity: 0;
}
.bktk_parts.bktk1_bookwall {
  position: absolute;
  z-index: 2;
  bottom: 0;
  width: 100%;
  max-width: 780px;
  transform: translateY(0.5%);
}
.bktk_parts.bktk1_kyojin {
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 100%;
  max-width: 780px;
}
.bktk_parts.bktk1_bg_hibi {
  position: absolute;
  z-index: 0;
  left: 0;
  width: calc(386 / 780 * 110%);
  max-width: 386px;
}
.bktk_parts.bktk1_text_tate_right {
  position: absolute;
  z-index: 4;
  right: 0;
  width: calc(116 / 780 * 110%);
  max-width: 116px;
  transform: translateY(27%);
}
.bktk_parts.bktk1_text_tate_left {
  position: absolute;
  z-index: 5;
  width: calc(202 / 780 * 110%); /* 実際に見える範囲での値 */
  max-width: 224px;
  transform: translate(-9%, 29.5%);
}
/* bktk1_bottom（重なり順2） */
.bktk1_bottom {
  position: absolute;
  z-index: 2;
  bottom: 0;
  width: 100%;
}
.bktk1_bottom > * {
  opacity: 0;
}
.bktk1_bottom .bktk1_kyojin_logo {
  position: relative;
  left: calc(-24 / 780 * 100%);
  width: calc(556 / 780 * 100%);
  max-width: 556px;
  margin: auto;
}
.bktk1_bottom .bktk1_text_free {
  position: relative;
  left: calc(-52 / 780 * 100%);
  width: calc(574 / 780 * 100%);
  max-width: 574px;
  margin: -3% auto 0;
}
.bktk1_bottom .bktk1_cpn {
  position: absolute;
  z-index: -1;
  right: calc(-18 / 780 * 100%);
  bottom: calc(156 / 780 * 100%);
  width: calc(179 / 780 * 100%);
  max-width: 179px
}
.bktk1_bottom .copyright {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: calc(20 / 780 * 100%);
  color: #fff;
  font-size: 11px;
  text-align: center;
}
.bktk1_bottom .btn_check {
  width: calc(470 / 780 * 40%);
  max-width: 470px;
  margin: 0 0 0 auto;
}
/* bktk1_kemuri_wrap（重なり順3） */
.bktk1_kemuri_wrap {
  position: absolute;
  z-index: 3;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.bktk_parts.bktk1_kemuri1 {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 780px;
  height: 100%;
  background: url("/sol/auto/images/fix/bakutokusale/bktk1/260808/bktk1_kemuri1.png") no-repeat center;
  background-size: 100%;
}
.bktk_parts.bktk1_kemuri2 {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 780px;
  height: 100%;
  background: url("/sol/auto/images/fix/bakutokusale/bktk1/260808/bktk1_kemuri2.png") no-repeat center;
  background-size: 100%;
}
.bktk_parts.bktk1_kemuri3 {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 780px;
  height: 100%;
  background: url("/sol/auto/images/fix/bakutokusale/bktk1/260808/bktk1_kemuri3.png") no-repeat center;
  background-size: 100%;
}
/* bktk1_title（重なり順4） */
.bktk1_title {
  position: absolute;
  z-index: 4;
  top: 8%;
  width: 100%;
  height: 100%;
}
.bktk1_title .bktk1_logo {
  position: absolute;
  top: 0;
  left: 2%;
  width: calc(171 / 780 * 100%);
  max-width: 171px;
}
.bktk1_title .bktk1_date {
  position: absolute;
  top: -2%;
  right: 2%;
  width: calc(124 / 780 * 110%);
  max-width: 124px;
  opacity: 0;
}
/* 爆トク①アニメーション設定
--------------------------------*/
/* けむり */
.is-shown {
  .bktk1_kemuri_wrap {
    .bktk1_kemuri1 {
      animation: bktk1-kemuri1 2.5s forwards;
    }
    .bktk1_kemuri2 {
      animation: bktk1-kemuri2 2.5s forwards;
    }
    .bktk1_kemuri3 {
      animation: bktk1-kemuri3 2.5s forwards;
    }
  }
}
@keyframes bktk1-kemuri1 {
  100% {
    opacity: 0;
    scale: 200%;
  }
}
@keyframes bktk1-kemuri2 {
  100% {
    opacity: 0;
    scale: 180%;
  }
}
@keyframes bktk1-kemuri3 {
  100% {
    opacity: 0;
    scale: 160%;
  }
}
/* 巨人パート */
.is-shown {
  .bktk1_kyojin_wrap {
    .bktk1_kyojin {
      transform-origin: bottom;
      animation: bktk1-kyojin 2s ease .5s forwards;
      scale: .98;
    }
    .bktk1_bookwall {
      transform: translateY(20%);
      animation: bktk1-bookwall 1.5s ease .5s forwards;
    }
    .bktk1_bg_hibi {
      animation: bktk1-bg_hibi 1.5s 1s forwards;
    }
    .bktk1_text_tate_right {
      transform: translateY(37%);
      animation: bktk1-text_tate_right 2s ease 1.25s forwards;
    }
    .bktk1_text_tate_left {
      transform: translate(-9%, 39.5%);
      animation: bktk1-text_tate_left 2s ease 1.75s forwards;
    }
  }
}
@keyframes bktk1-kyojin {
  100% {
    bottom: 0;
    opacity: 1;
    scale: 1;
  }
}
@keyframes bktk1-bookwall {
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes bktk1-bg_hibi {
  100% {
    opacity: 1;
  }
}
@keyframes bktk1-text_tate_right {
  100% {
    transform: translateY(27%);
    opacity: 1;
  }
}
@keyframes bktk1-text_tate_left {
  100% {
    transform: translate(-9%, 29.5%);
    opacity: 1;
  }
}
/* 下部文字パート */
.is-shown {
  .bktk1_bottom {
    .bktk1_kyojin_logo {
      transform: translateY(30%);
      animation: bktk1-kyojin_logo 2s ease 2.5s forwards;
    }
    .bktk1_kyojin_logo_shake {
      animation: bktk1-kyojin_logo_shake 2.5s ease 2.5s forwards;
    }
    .bktk1_text_free {
      transform: translateY(30%);
      animation: bktk1-text_free 1s ease 3.5s forwards;
    }
    .bktk1_cpn {
      animation: bktk1-cpn 1.5s ease 4s forwards;
    }
    .copyright {
      animation: bktk1-copyright 1s .5s forwards;
    }
    .btn_check {
      animation: bktk1-copyright 1s 4s forwards;
    }
  }
}
@keyframes bktk1-kyojin_logo {
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes bktk1-kyojin_logo_shake {
  0% { transform: translate(0, 0); }
  3% { transform: translate(-4px, 1px); }
  6% { transform: translate(4px, -1px); }
  9% { transform: translate(-4px, 0); }
  12% { transform: translate(4px, 1px); }
  15% { transform: translate(-4px, -1px); }
  18% { transform: translate(4px, 1px); }
  21% { transform: translate(-3px, 0); }
  24% { transform: translate(4px, -1px); }
  27% { transform: translate(-4px, 1px); }
  30% { transform: translate(4px, 0); }
  33% { transform: translate(-4px, 1px); }
  36% { transform: translate(4px, -1px); }
  39% { transform: translate(-3px, 0); }
  42% { transform: translate(3px, 1px); }
  45% { transform: translate(-3px, -1px); }
  48% { transform: translate(3px, 1px); }
  51% { transform: translate(-3px, 0); }
  54% { transform: translate(3px, -1px); }
  57% { transform: translate(-3px, 1px); }
  /* --- 60%から減衰フェーズ --- */
  60% { transform: translate(3px, 0); }
  63% { transform: translate(-3px, 1px); }
  66% { transform: translate(2px, -1px); }
  69% { transform: translate(-2px, 0); }
  72% { transform: translate(2px, .5px); }
  75% { transform: translate(-2px, -0.5px); }
  78% { transform: translate(1px, 0); }
  81% { transform: translate(-1px, .5px); }
  84% { transform: translate(1px, -0.5px); }
  87% { transform: translate(-1px, 0); }
  /* --- 90%で揺れ停止 --- */
  90% { transform: translate(0.8px, 0); }
  93% { transform: translate(-0.5px, 0); }
  96% { transform: translate(0.5px, 0); }
  100% { transform: translate(0, 0); }
}
@keyframes bktk1-text_free {
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes bktk1-cpn {
  100% {
    opacity: 1;
  }
}
@keyframes bktk1-copyright {
  100% {
    opacity: 1;
  }
}
.is-shown {
  .bktk1_title {
    .bktk1_date {
      animation: bktk1-date 1s .5s forwards;
    }
  }
}
@keyframes bktk1-date {
  100% {
    opacity: 1;
  }
}
/* bktk2_area
--------------------------------*/
.bktk_area.bktk2 {
  position: relative;
  padding: min(calc(40 / 780 * 100%), 40px) 0 min(calc(72 / 780 * 100%), 72px);
  overflow: hidden;
}
.bktk_area.bktk2 .bktk_bg {
  background: #fe8d1d url("/sol/auto/images/fix/bakutokusale/bktk2/bktk2_bg.png") no-repeat center center / 100%;
}
.bktk2_wrapper {
  max-width: 780px;
  height: 100%;
  margin: 0 auto;
}
.bktk2_wrapper .bktk2_inner {
  display: block;
  position: relative;
}
.bktk2_wrapper .bktk_parts {
  position: relative;
}
.bktk2_wrapper .bktk2_logo {
  width: calc(193 / 780 * 100%);
  max-width: 193px;
  transform: translate(10.7526%, 0);
}
.bktk2_wrapper .bktk_parts_bomb_wrap {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
  width: calc(745 / 780 * 100%);
  max-width: 745px;
  transform: translate(-50%, calc(98 / 681 * 100%));
}
.bktk2_wrapper .bktk_parts_shake_wrap {
  position: relative;
  z-index: 2;
}
.bktk2_wrapper .bktk_parts_shake_wrap .bktk2_off {
  z-index: 1;
}
.bktk2_wrapper .bktk_parts_shake_wrap .bktk2_date_wrap {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: space-between;
  margin-top: calc(20 / 780 * 100%);
}
.bktk2_wrapper .bktk2_time {
  left: calc(75 / 780 * 100%);
  width: calc(163 / 780 * 100%);
  max-width: 163px;
}
.bktk2_wrapper .bktk2_time img {
  position: relative;
}
.bktk2_wrapper .bktk2_time::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: -42%;
  left: 8%;
  width: calc(170 / 163 * 100%);
  border-radius: 50%;
  background: yellow;
  aspect-ratio: 1 / 1;
}
.bktk2_wrapper .bktk2_date {
  right: calc(118 / 780 * 100%);
  width: calc(413 / 780 * 100%);
  max-width: 413px;
}
.bktk2_wrapper .btn_check {
  width: calc(470 / 780 * 40%);
  max-width: 470px;
  margin: 0 4% 0 auto;
  transform: translateY(calc(48 / 74 * 100%));
}
/* エリアのフェードイン時にアニメーション実行 */
.bktk2.is-animate {
  .bktk2_bomb {
    animation: bktk2-bomb 1s ease-out forwards;
  }
  .is-poyoyon3 {
    animation: poyoyon3 2.5s 1.5s infinite;
  }
  .bktk2_time,
  .bktk2_date {
    transform: translateY(20px);
    animation: delay-fadeIn .5s ease .5s forwards;
    opacity: 0;
  }
  .bktk2_date_wrap {
    animation: bktk2-zoomInout 1.8s 1.3s infinite;
  }
}
@keyframes bktk2-bomb {
  0% {
    scale: .9;
  }
  66% {
    scale: 1.2;
  }
  72% {
    scale: 1;
  }
  88% {
    scale: 1.1;
  }
  100% {
    scale: 1;
  }
}
@keyframes bktk2-zoomInout {
  0%, 100% {
    scale: 1;
  }
  50% {
    scale: 1.06;
  }
}
@keyframes delay-fadeIn {
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
/* bktk3_area
--------------------------------*/
.bktk_area.bktk3 {
  position: relative;
  padding: calc(64 / 780 * 100%) 0 min(calc(160 / 780 * 100%), 160px);
  overflow: hidden;
}
.bktk_area.bktk3 .bktk_bg {
  background: #ffbc3b url("/sol/auto/images/fix/bakutokusale/bktk1/bktk1_bg.png") no-repeat center center / 100%;
}
.bktk_area.bktk3::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: min(calc(100 / 780 * 120%), 100px);
  background: linear-gradient(to top, #fe8d1d, transparent);
}
.bktk3_wrapper {
  max-width: 780px;
  height: 100%;
  margin: 0 auto;
}
.bktk3_wrapper .bktk3_inner {
  display: block;
  position: relative;
}
.bktk3_wrapper .bktk_parts {
  display: inline-block;
  position: relative;
}
.bktk3_wrapper .bktk3_logo {
  width: calc(193 / 780 * 100%);
  max-width: 193px;
  transform: translate(10.7526%, 0);
}
.bktk3_wrapper .bktk3_off {
  margin-top: calc(8 / 780 * 100%);
}
.bktk3_wrapper .bktk3_date {
  margin-top: 3%;
}
.bktk3_wrapper .btn_check {
  width: calc(470 / 780 * 40%);
  max-width: 470px;
  margin: calc(12 / 780 * 100%) 4% 0 auto;
}
.bktk3.is-animate {
  .bktk3_inner {
    transform: translateY(20px);
    animation: delay-fadeIn .5s ease .25s forwards;
    opacity: 0;
  }
}
/* bnr_area
--------------------------------*/
.bnr_area {
  position: relative;
  max-width: 780px;
  margin: calc(76 / 780 * -100%) auto 0;
}
.bnr_area_wrapper {
  position: relative;
  z-index: 0;
  padding-top: calc(300 / 780 * 100%);
}
.bnr_area_talent {
  position: absolute;
  z-index: -1;
  top: 0;
}
.bnr_area_talent img {
  width: calc(779 / 780 * 100%);
  max-width: 779px;
}
.bnr_area_inner {
  margin: 0 calc(28 / 780 * 100%) 0;
  padding: min(calc(32 / 780 * 100vw), 32px) min(calc(24 / 780 * 100vw), 24px) min(calc(48 / 780 * 100vw), 48px);
  border: 2px solid #ea5505;
  border-radius: min(calc(40 / 780 * 100vw), 40px);
  background: #ffdb9d;
  box-shadow: 4px 6px #ea5505;
  text-align: center;
}
.bnr_area_inner .bnr_links > li {
  padding-top: min(calc(8 / 320 * 100vw), 16px);
}
.bnr_area_inner .bnr_links > li a {
  display: block;
}
.bnr_area_inner .bnr_links > li a img {
  box-shadow: 0 0 6px rgba(0, 0, 0, .12), 0 0 4px rgba(0, 0, 0, .06);
}
.btn_poikatsu {
  display: block;
  margin: calc(40 / 780 * 100%) calc(28 / 780 * 100%) 0;
  text-align: center;
}
.btn_poikatsu img {
  max-width: 600px;
}
/* アニメーション */
.is-animate {
  .bnr_area_talent {
    animation: bnr-talent .4s ease forwards
  }
}
@keyframes bnr-talent {
  0% {
    top: min(calc(40 / 780 * 100vw), 40px);
  }
  100% {
    top: 0;
  }
}
/* 終了後 */
.bnr_area_wrapper.end_flg {
  padding-top: calc(100 / 780 * 100%);
}
/* term_area
--------------------------------*/
.term_text {
  margin: 0 calc(28 / 780 * 100%) 0;
  padding: 8px;
  background: #fff;
  font-size: 14px;
}
/* Youtube
--------------------------------*/
.cm_wrapper {
  display: block;
  margin: calc(28 / 780 * 100%);
  border: solid #ddd 1px;
}
/* footer
--------------------------------*/
.footer_area {
  position: relative;
  width: 100vw;
  margin: min(calc(88 / 780 * 100%), 88px) auto 0;
  padding-bottom: calc(48 / 780 * 100%);
  background: #feaf61;
  text-align: center;
}
.footer_area.no_login::after {
  content: "";
  display: block;
  width: 100%;
  padding-top: min(calc(72 / 320 * 100vw), 72px);
  background: #feaf61;
}
.footer_wrapper {
  background: url("/auto/images/fix/bakutokusale/common/footer_bg.png") repeat-x center bottom / auto 100%;
}
.footer_inner {
  max-width: 780px;
  margin: 0 auto;
  padding: 0 calc(28 / 780 * 100%);
}
.footer_area .copyright {
  display: block;
  margin: 2em auto 0;
  font-size: 12px;
}
.footer_logo {
  display: block;
  width: calc(268 / 780 * 100%);
  max-width: 268px;
  margin: auto;
  cursor: pointer;
}
.footer_area .br_crumb {
  margin: 2em auto 0;
  font-size: 12px;
  text-align: left;
}
.footer_area .br_crumb a {
  text-decoration: underline;
}
.footer_area .br_crumb span:not(:last-child)::after {
  content: ">";
  display: inline-block;
  padding: 0 0 0 4px;
}
/* 追従ボタン
------------------------------*/
.btn_more_cp {
  position: fixed;
  z-index: 999;
  top: 80vh;
  right: 2%;
  width: calc(100 / 390 * 100%);
  max-width: 218px;
  transform: translateY(-50%);
  transition: all .5s;
  opacity: 1;
  cursor: pointer;
}
.btn_more_cp a {
  display: block;
}
.btn_more_cp.is-hidden {
  visibility: hidden;
  opacity: 0;
}
/* 非会員追従バナー
------------------------------*/
.floatingRegistBnr {
  position: fixed;
  z-index: 999;
  bottom: 0;
  left: 0;
  width: 100%;
  padding-bottom: env(safe-area-inset-bottom);
  background: rgba(255, 255, 255, .8);
  box-shadow: 0 -1px 10px -4px rgb(153 153 153 / 60%);
}
.floatingRegistBtn {
  max-width: 480px;
  margin: auto;
  padding: 0 8px 8px;
  text-align: center;
}
.floatingRegistBtn a {
  display: block;
  margin-top: -3.333%;
}
.floatingRegistBtn img {
  width: 100%;
  max-width: 358px;
  height: auto;
}
