@charset "UTF-8";
/******************************************************************************
Default CSS Reset
******************************************************************************/
*, *:before, *:after {
box-sizing: border-box;
}

html {
font-size: 62.5%;
}

html, body {
position: relative;
box-sizing: border-box;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, figure {
margin: 0;
padding: 0;
}

body {
overflow-x: hidden;
}

table {
border-collapse: collapse;
table-layout: fixed;
}

fieldset, img {
border: 0;
}

address, caption, cite, code, dfn, th, var {
font-style: normal;
font-weight: normal;
}

em, i {
font-style: normal;
}

ol, ul {
list-style: none;
}

caption {
text-align: left;
}

h1, h2, h3, h4, h5, h6 {
font-size: 100%;
font-weight: 400;
}

img {
vertical-align: bottom;
/* chormeで画像のぼやけ回避 */
-webkit-backface-visibility: hidden;
}

/* iOSでのデフォルトスタイルをリセット */
input, button, select, textarea {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background: transparent;
border: none;
border-radius: 0;
font: inherit;
outline: none;
}

textarea {
resize: vertical;
}

input[type=checkbox], input[type=radio] {
display: none;
}

input[type=submit], input[type=button], label, button, select {
cursor: pointer;
}

select::-ms-expand {
display: none;
}

picture {
display: block;
}

/******************************************************************************
General Setting
******************************************************************************/
body {
margin: 0 auto;
padding: 0;
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
color: #fff;
word-wrap: break-word;
-webkit-font-smoothing: antialiased;
width: 100%;
font-size: 1.4em;
letter-spacing: 0;
line-height: 1.5;
font-weight: 400;
background-color: #141414;
}

a {
margin: 0;
padding: 0;
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
color: #fff;
outline: none;
text-decoration: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a:focus, *:focus {
outline: none;
}

/******************************************************************************
content
******************************************************************************/
.wrapper {
width: 100%;
}
.wrapper img {
width: 100%;
height: auto;
}
.inner {
margin: 0 auto;
max-width: 500px;
width: 89.333%;
}
.bg_fix {
z-index: -1;
display: block;
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100vh;
background-image: url(https://file.mysquadbeyond.com/uploads/article_photo/photo/5596723/0dbcba42-af89-44f1-a5bc-1dec99234eac.jpg);
background-size: cover;
background-position: top center;
background-repeat: no-repeat;
}
main {
max-width: 500px;
margin: auto;
background-image: url(https://file.mysquadbeyond.com/uploads/article_photo/photo/5740205/6af4feb2-d4ae-46b2-83cf-8017018f6570.jpg);
background-position: bottom center;
background-size: contain;
height: 100%;
position: relative;
}

.fv-wrapper {
position: relative;
width: 100%;
}
.fv-video {
width: 100%;
height: 100%;
object-fit: cover;
object-position: 100% 40%;
}

.content {
position: relative;
z-index: 10;
}

.floating-banner {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
background: linear-gradient(0deg,rgba(217, 171, 58, 0.7) 0%, rgba(241, 221, 119, 0.7) 100%);
backdrop-filter: blur(4px);
-webkit-backdrop-filter: blur(4px); /* Safari対応 */
text-align: center;
z-index: 9999;
}
.floating-banner02 {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
background: linear-gradient(0deg,rgba(217, 171, 58, 0.7) 0%, rgba(241, 221, 119, 0.7) 100%);
backdrop-filter: blur(4px);
-webkit-backdrop-filter: blur(4px); /* Safari対応 */
text-align: center;
z-index: 9999;
overflow: hidden;
}
.store_content {
width: 89.333%;
margin: 0 auto;
padding: 1.5rem 0;
display: flex;
align-items: center;
justify-content: space-between;
}
.store_text {
width: 44%;
position: relative;
}
.store_text::after {
content: "";
display: block;
position: absolute;
top: 50%;
right: -28%;
transform: translateY(-50%);
width: 32px;
height: 32px;
background: url(https://file.mysquadbeyond.com/uploads/article_photo/photo/5740219/d5ce0efb-11c7-4f8f-adcd-06bc3157df06.png) no-repeat center / contain;
animation: arrow-move 0.5s infinite linear;
pointer-events: none;
}
@keyframes arrow-move {
0%   { transform: translateY(-50%) translateX(0); }
30%  { transform: translateY(-50%) translateX(8px); }
60%  { transform: translateY(-50%) translateX(-5px); }
100% { transform: translateY(-50%) translateX(0); }
}

.app_store_cta {
display: block;
width: 38.8%;
}

.floating-inner {
max-width: 500px;
margin: 0 auto;
position: relative;
width: 100%;
}

.floating-banner a {
display: block;
max-width: 500px;
margin: 0 auto;
animation: cta_animation 1.5s infinite;
}

.fv_cta {
position: absolute;
bottom: 9%;
width: 100%;
z-index: 2;
display: flex;
justify-content: center;
}

.cta_animation {
display: block;
animation: cta_animation 1.5s infinite;
}

@keyframes cta_animation {
0% {
transform: scale(1.2)
}
5% {
transform: scale(1)
}
95% {
transform: scale(1)
}
100% {
-webkit-transform: scale(1.2)
}
}

.cta {
width: 84%;
display: block;
margin: 0 auto;
}

@media screen and (max-width: 499px) {
.fv-wrapper {
position: relative;
width: 100%;
}
.fv-video {
width: 100%;
height: 100%;
object-fit: cover;
object-position: 100% 40%;
}
}

.slider-wrapper {
position: relative;
max-width: 800px;
margin: 0 auto;
width: 80%;
}

.fixed-frame {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%; /* スライド画像に追従させる */
pointer-events: none;
z-index: 10;
}

.fixed-frame img,
.slide img {
display: block;
width: 100%;
height: auto;
}

.slick-slide {
backface-visibility: hidden;
-webkit-backface-visibility: hidden;
transform: translate3d(0, 0, 0);
-webkit-transform: translate3d(0, 0, 0);
will-change: transform;
}
.slide,
.slide a {
display: block;
width: 100%;
}
.slider img,
.fixed-frame img {
display: block; /* インライン要素としての隙間を消す */
width: 100%;
height: auto;
}
.slide img.main {
width: 100%;
display: block;
position: relative;
z-index: 1;
}

.slide img.frame {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: auto;
z-index: 2;
pointer-events: none; /* クリックを通す */
}

.slick-prev,
.slick-next {
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
background: none;
border: none;
}

.slick-prev {
left: -12% !important;
}
.slick-next {
right: -12% !important;
}
.slick-prev, .slick-next {
width: 40px;
height: auto;
}
.slick-prev img,
.slick-next img {
width: 40px;
height: auto;
}

.slick-dotted.slick-slider {
margin-bottom: 60px!important;
}

.slick-dots {
text-align: center;
margin-top: 10px;
bottom: -40px!important;
}

.slick-dots li {
display: inline-block;
margin: 0 5px;
}

.slick-dots li button {
display: none;
}

.slick-dots li img {
opacity: 0.4;
transition: opacity 0.3s ease;
}

/* アクティブなドット画像 */
.slick-dots li.slick-active img {
opacity: 1;
}

.slick-prev::before,
.slick-next::before {
display: none !important;
content: none !important;
}

/* ① カウンター非表示 */
.pswp__counter {
display: none !important;
}


.pswp__icn {
display: none !important;
}

.pswp__button--close {
background: url('https://file.mysquadbeyond.com/uploads/article_photo/photo/5596722/85bb836e-3a04-45d6-9a30-27e3726cfd46.png') no-repeat center center !important;
background-size: contain !important;
width: 32px !important;
height: 32px !important;
opacity: 1 !important;
margin: 10px 10px 0 0;
}

.pswp__button--arrow--prev {
background: url('https://file.mysquadbeyond.com/uploads/article_photo/photo/5596721/a545ab1d-34a7-4b55-9eee-0005d78450f8.png') no-repeat center center !important;
background-size: contain !important;
width: 48px !important;
height: 48px !important;
opacity: 1 !important;
border: none !important;
z-index: 10000;
}

.pswp__button--arrow--next {
background: url('https://file.mysquadbeyond.com/uploads/article_photo/photo/5596719/fd5e6665-05bf-40e2-b03f-0f593401f1e4.png') no-repeat center center !important;
background-size: contain !important;
width: 48px !important;
height: 48px !important;
opacity: 1 !important;
border: none !important;
z-index: 10000;
}

.pswp--touch .pswp__button--arrow {
visibility: visible !important;
opacity: 1 !important;
pointer-events: auto !important;
}

.pswp__bg {
pointer-events: auto !important;
}

.pre_reward {
padding: 0rem 0 4rem;
}

.title_img {
width: 64.5%;
margin: 0 auto;
}

.pre_reward .title_img {
margin: 0 auto 1rem;
}

.game_features .title_img {
margin: 0 auto 2rem;
}

.text01 {
padding: 2rem 0 0;
}

.text01.text01ver2 {
padding: 2rem 0 5rem;
}

.bottom_cta {
margin-bottom: 4rem;
}

footer {
padding: 2rem 1rem;
background-color: #000;
}
.footer_ver2 {
padding: 2rem 1rem 15rem 1rem;
}
footer .copyright {
font-size: 0.8rem;
vertical-align: middle;
color: #ddd;
}

@media screen and (max-width: 499px) {
.slick-prev, .slick-next {
width: 30px;
}
.slick-prev img, .slick-next img {
width: 30px;
}
.lightbox .lb-outerContainer {
margin-top: 2vh !important; /* 上に寄りすぎを防止 */
}

.pswp__button--arrow {
top: 96%!important;
}
.pswp__img {
margin-top: -8vw; /* 調整値はお好みで */
}
.footer_ver2 {
padding: 2rem 1rem 12rem 1rem;
}

}
