/*e-amusementサイトテンプレート*/
header,footer,header#id_nav_menu_1{position:relative !important;}
header#id_nav_menu_1{background-color:#fff;}
#wrapper{position:relative !important;}
#container{background:#fff;}

/*z-index*/
#main,#main::before,#main::after {z-index:1;}
#page-title                      {z-index:3;}

header#id_nav_menu_1              {z-index:9999 !important;}
footer                            {z-index:2 !important;}
#page-top,#page-top a             {z-index:10 !important;}

/*
================================================================================================================
COMMON
================================================================================================================
*/
*{padding:0; margin:0; border:0;}
*, *:before, *:after{
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
-o-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;}

html{width:100%; height:100%; overflow-wrap:break-word}
body{
max-width:2000px !important;
min-width:320px !important;
color:#000;
background:#fff !important;
margin:0 auto;
font-family:"メイリオ", "Meiryo", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
overflow-x:hidden;}
a{outline:none;}
a:link,a:visited,a:hover,a:active{text-decoration:none;}
a img{transition:opacity .3s ease;}
img{padding:0; margin:0; border:0; vertical-align:bottom;}
ul{margin:0; padding:0; border:0;}
li{list-style:none;}
strong,em,b{font-weight:700; font-style:normal;}
table{width:100%; color:#000; border-collapse:collapse; border-spacing:0; margin:0 auto;}
button{background:transparent;}
select{
color:#090033;
background:#fff;
font-family:inherit;
font-size:100%;
line-height:1.15;
text-transform:none;
border-radius:0;
border:none;
margin:0;}

.no-show{display:none;}

/*
================================================================================================================
メイン
================================================================================================================
*/
#main{
display:block;
position:relative;
width:100%;
height:100%;
background-color:#bcfffe;
background-size:/*100% auto ,*/ 90% auto , 90% auto;
background-repeat:/*no-repeat ,*/ repeat-y , repeat-y;
background-position:/*top center ,*/ top right , top left;
background-image:/*url(../img/common/bg03.webp) ,*/ url(../img/common/bg02_right.webp) , url(../img/common/bg02_left.webp);
font-family:'Noto Sans JP', sans-serif;
font-size:15px;}

@media screen and (max-width:900px){
#main{
background-size:/*100% auto ,*/ 90% auto , 90% auto;
background-repeat:/*no-repeat ,*/ repeat-y , repeat-y;
background-position:/*top center ,*/ top right , top left;
background-image:/*url(../img/common/bg03_sp.webp) ,*/ url(../img/common/bg02_right.webp) , url(../img/common/bg02_left.webp);}
}
@media screen and (max-width:800px){#main{font-size:14px;}}
@media screen and (max-width:640px){#main{font-size:13px;}}
@media screen and (max-width:480px){#main{font-size:12px;}}
#main img{width:100%;}
#main .visial{}

/*
=========================
ボックス
=========================
*/
.main-inner{width:calc(100% - 40px); max-width:1200px; margin:0 auto;}
.main-inner > .box{position:relative; color:#0e4a73; background:rgba(255,255,255,.8); border-radius:10px; padding:5px;}
.main-inner > .box + .box{margin-top:80px;}
.main-inner > .box > .box-inner{border:5px solid #fbb7cf; border-radius:7px; padding:20px;}
.main-inner > .box > .box-inner > .inner{width:100%; max-width:980px; margin:0 auto;}
@media screen and (max-width:800px){.main-inner{width:calc(100% - 20px);}}
@media screen and (max-width:640px){
.main-inner > .box{padding:3px;}
.main-inner > .box + .box{margin-top:50px;}
.main-inner > .box > .box-inner{border:3px solid #fbb7cf; padding:10px;}}
@media screen and (max-width:480px){
.main-inner > .box{padding:2px;}
.main-inner > .box + .box{margin-top:40px;}
.main-inner > .box > .box-inner{border:2px solid #fbb7cf;}}

/*見出し画像*/
.box > .box-title{position:absolute; top:-32px;}
.box-title{width:100%; text-align:center;}
.box-title img{max-width:500px; filter:drop-shadow(1px 1px 0 #ffe2cf) drop-shadow(-1px -1px 0 #ffe2cf) drop-shadow(-1px 1px 0 #ffe2cf) drop-shadow(1px -1px 0 #ffe2cf) drop-shadow(3px 3px 2px rgba(215,103,53,.5));}
.box-title + .box-inner{padding-top:40px !important;}
@media screen and (max-width:800px){
.box > .box-title{top:-25px;}
.box-title img{max-width:400px;}
.box-title + .box-inner{padding-top:35px !important;}}
@media screen and (max-width:500px){
.box > .box-title{top:-16px;}
.box-title img{max-width:250px;}
.box-title + .box-inner{padding-top:25px !important;}}
@media screen and (max-width:370px){
.box > .box-title{top:-12px;}
.box-title img{max-width:200px;}
.box-title + .box-inner{padding-top:20px !important;}}

/*濃いピンク*/
.main-inner > .box.violet > .box-inner{background:#fff; border:5px solid #fe5490;}
@media screen and (max-width:640px){.main-inner > .box.violet > .box-inner{border:3px solid #fe5490;}}
@media screen and (max-width:480px){.main-inner > .box.violet > .box-inner{border:2px solid #fe5490;}}

/*
=========================
見出し帯
=========================
*/
.line{
display:block; 
width:100%;
aspect-ratio:2252/600;
background-image:/*url(../img/top/h2_01.webp),*/url(../img/top/h2_title01.png) , url(../img/top/h2_01.webp);
background-position:top , top;
background-size:100% auto , 100% auto;
background-repeat:no-repeat , no-repeat;
padding:5px 0; 
}
.line.two{
background-image:url(../img/top/h2_title02_1.png), url(../img/top/h2_02.webp), url(../img/top/h2_title02.png);
background-position:top , top , top;
background-size:100% auto , 100% auto , 100% auto;
background-repeat:no-repeat , no-repeat , no-repeat;
}
.line.three{
background-image:url(../img/top/h2_title02_2.png), url(../img/top/h2_title03.png) , url(../img/top/h2_01.webp);
background-position:top , top , top;
background-size:100% auto , 100% auto , 100% auto;
background-repeat:no-repeat , no-repeat , no-repeat;
}
.line.four{
background-image:url(../img/top/line_text04_1.webp), url(../img/top/h2_01.webp);
background-position:top , top;
background-size:100% auto , 100% auto;
background-repeat:no-repeat , no-repeat;
}

.line > .line-inner{text-align:center; padding:0 10px;}
.event-date + .line{margin:20px auto;}

@media screen and (max-width:640px){
.line{padding:3px 0;}
/*.line > .line-inner{/*border-top:2px solid #fff; border-bottom:2px solid #fff; padding:10px 5px;}*/
}

.line > .line-inner ul{display:flex; max-width:1720px; margin:0 auto; justify-content:center; align-items:center;}
.line > .line-inner ul li{position:relative; text-align:center;}
.line > .line-inner ul li:first-child{width:55%}
.line > .line-inner ul li:nth-of-type(2){width:35%}
.line > .line-inner ul.three li{width:calc(100% / 3);}
.line > .line-inner ul.three li p{position:absolute; top:-4%; height:0;}
.line > .line-inner ul.two{max-width:1000px;}
.line > .line-inner ul.two li img{width:80% !important;}
.line > .line-inner ul.two li:first-child::after{
display:block;
content:"";
position:absolute;
top:0;
right:-47%;
width:100%;
height:100%;
background-image:url(../img/top/line_text02_3.png);
background-repeat:no-repeat;
background-size:auto 80%;
background-position:center;}
.line > .line-inner ul.one{max-width:700px;}
.line > .line-inner ul.one li{width:100%;}

.line > .line-inner ul.pc{display:flex;}
.line > .line-inner ul.sp{display:none;}
@media screen and (min-width:901px){
.line > .line-inner ul li{padding:20px 0;}
.line > .line-inner ul li.dot{background-image:url(../img/common/bg_line.png); background-repeat:no-repeat; background-size:auto 200%; background-position:center;}}
@media screen and (max-width:640px){
/*.line > .line-inner ul.pc{display:none;}*/
.line > .line-inner ul.sp{display:flex;}
.line > .line-inner ul.one li img{width:70% !important;}}

a.line img{transition:all .2s ease;}
a.line:hover ul img{opacity:.7;}
a.line:hover ul.pc li:nth-child(1) p img,
a.line:hover ul.pc li:nth-child(2) img{filter:brightness(120%); opacity:1;}

/*
=========================
汎用クラス
=========================
*/
.width1200,.width980,.width800{width:calc(100% - 40px); margin:0 auto;}
.width1200{max-width:1200px;}
.width980{max-width:980px;}
.width800{max-width:800px;}
.shadow{filter: drop-shadow(0 0 5px rgba(252, 194, 214, .5));}
.padding50{padding:50px 0;}
.padding20{padding:20px 0;}
@media screen and (max-width:800px){.width1200,.width980,.width800{width:calc(100% - 20px);}}
@media screen and (max-width:640px){.padding50{padding:30px 0;} .padding20{padding:15px 0;}}
@media screen and (max-width:480px){.padding50{padding:20px 0;} .padding20{padding:10px 0;}}

b.title-sub{display:block;}
ul + b.title-sub{margin-top:20px;}

/*
=========================
リスト
=========================
*/
.red{color:#f53a83;}
.small{font-size:11px;}
@media screen and (max-width:480px){.small{font-size:10px;}}

ul.dot,ul.ast,ul.num{line-height:180%;}
ul.dot > li,ul.ast > li,ul.num > li,span.ast{display:block; position:relative; padding-left:18px;}
ul.dot > li::before,
ul.ast > li::before,
ul.num > li::before,
span.ast::before{display:block; position:absolute; top:0; left:0;}

ul.dot > li::before{content:""; top:10px; left:4px; width:5px; height:5px; background:#0e4a73; border-radius:50%;}
ul.ast > li::before,span.ast::before{content:"※";}

ul.num > li:first-child::before{content:"①";}
ul.num > li:nth-child(2)::before{content:"②";}
ul.num > li:nth-child(3)::before{content:"③";}
ul.num > li:nth-child(4)::before{content:"④";}
ul.num > li:nth-child(5)::before{content:"⑤";}
ul.num > li:nth-child(6)::before{content:"⑥";}

ul.ast.small > li,span.ast.small{padding-left:12px;}

ul.dot > li > a,ul.ast > li > a{color:#f00; text-decoration:underline;}
ul.dot > li > a:hover,ul.ast > li > a:hover{text-decoration:none;}
ul.dot > li.red::before{background:#f53a83;}

/*
================================================================================================================
ボタン
================================================================================================================
*/
.link-btn{
display:block;
width:100%;
position:relative;
color:#fff;
background:#fff;
font-size:22px;
font-weight:700;
text-align:center;
border:5px solid #bdefef;
border-radius:30px;
padding:3px;
margin:0 auto;}

.link-btn *{position:relative;}
.link-btn,.link-btn::before,.link-btn::after,
.link-btn *,.link-btn *::before,.link-btn *::after{transition:all .3s ease;}

.link-btn p{
width:100%;
height:100%;
padding:15px 0;
z-index:2;}
.link-btn:hover p{filter:drop-shadow(0 0 3px #ffff);}

.link-btn::before,
.link-btn::after{
display:block;
content:"";
position:absolute;
top:3px;
left:3px;
width:calc(100% - 6px);
height:calc(100% - 6px);
border-radius:24px;
z-index:1;}
.link-btn::before{background: linear-gradient(to bottom, #fd78a4 0%, #fe5490 100%);}
.link-btn::after{background:linear-gradient(to bottom, #fd6b6b 0%,#e31c76 100%); opacity:0;}
.link-btn:hover::after{opacity:1;}

.link-btn p::before{
display:block;
content:"";
position:absolute;
top:calc(50% - 14px);
right:20px;
width:40px;
height:28px;
background-image:url(../img/common/arrow.png);
background-size:100% auto;
background-repeat:no-repeat;
background-position:center;}
.link-btn:hover p::before{right:10px; background-image:url(../img/common/arrow_on.png);}

@media screen and (max-width:980px){.link-btn{font-size:18px;}}
@media screen and (max-width:640px){
.link-btn{font-size:16px; border:3px solid #bdefef; border-radius:30px; padding:2px;}
.link-btn p{padding:10px 0;}
.link-btn p::before{right:16px; top:calc(50% - 10px); width:30px; height:20px;}}
@media screen and (max-width:370px){
.link-btn{font-size:14px;}
.link-btn p::before{top:calc(50% - 7px); width:20px; height:14px;}}

/*非アクティブ*/
.link-btn.none{pointer-events:none; filter:grayscale(100%);}
.link-btn.none p::before{opacity:.4;}

/*配置用*/
.link-two{display:flex; flex-wrap:wrap; justify-content:space-between;}
.link-two a{width:calc(50% - 10px) !important; margin:0 !important;}
@media screen and (max-width:980px){.link-two a{width:calc(50% - 5px) !important;}}
@media screen and (min-width:981px){
.link-two a:nth-child(3),
.link-two a:nth-child(4){margin-top:20px !important;}}
@media screen and (min-width:801px) and (max-width:980px){
.link-two a:nth-child(3),
.link-two a:nth-child(4){margin-top:10px !important;}}
@media screen and (max-width:800px){
.link-two a{width:100% !important;}
.link-two a + a{margin-top:10px !important;}}

.link-one > *{max-width:500px; margin:10px auto !important;}
.link-one > .link-btn:not(.none):hover{cursor:pointer;}

/*
================================================================================================================
TOP
================================================================================================================
*/
/*メインビジュアル*/
#top{/*padding:2% 0 0;*/ text-align:center;}
/*#top > img{max-width:2252px;}*/

/*プレゼントページtop*/
#top.present_visial{padding:2% 0 0;}
@media screen and (max-width:1800px){#top.present_visial{padding:80px 0px 0;}}
@media screen and (max-width:1100px){#top.present_visial{padding:10% 0px 0;}}
@media screen and (max-width:800px){#top.present_visial{padding:70px 0px 0;}}
@media screen and (max-width:600px){#top.present_visial{padding:90px 0px 0;}}
@media screen and (max-width:480px){#top.present_visial{padding:50px 0px 0;}}
@media screen and (max-width:390px){#top.present_visial{padding:60px 0px 0;}}


/*#top.main + .event-date{margin-top:-4% !important;}*/
@media screen and (max-width:520px){#top.main + .event-date{margin-top:-1% !important;}}
@media screen and (max-width:480px){#top.main + .event-date{margin-top:0 !important;}}

/*日付*/
.event-date{
max-width:1140px !important;
margin:20px auto}

.event-date > p{width:100%; margin:0 auto;}
/*.event-date > p img{width:100%;}*/
.event-date > div{display:flex; width:calc(100% - 380px); align-items:center; justify-content:center; padding-top:5px;}

@media screen and (max-width:1300px){
.event-date{width:80%;}
}
@media screen and (max-width:900px){
.event-date{width:95%;}
}

/*対象機種_ロゴ*/
ul#logo{display:flex; flex-wrap:wrap; align-items:center;}
ul#logo li{width:calc(100% / 5);}

/*交換方法*/
ul#top-howto li{position:relative;}
ul#top-howto li:nth-child(1){z-index:2;}
ul#top-howto li:nth-child(2){z-index:1; margin-top:-2%;}

ul#prize-img{display:flex; flex-wrap:wrap; margin:20px auto;}
ul#prize-img li{width:50%; text-align:center; margin-bottom:30px;}
ul#prize-img li img{width:80%; max-width:400px;}
@media screen and (max-width:640px){
ul#prize-img{flex-wrap:wrap;}
ul#prize-img li{width:100%}
ul#prize-img li img{width:50%; max-width:250px;}
ul#prize-img li + li{margin-top:20px;}}

/*特典*/
#top-special{text-align:center;}
#top-special img{max-width:1200px;}

/*専用コントローラリンク*/
#top-link{background:#ffd4e3;}
#top-link > div > p{display:flex; width:100%; color:#0e4a73; font-weight:bold; justify-content:center; margin-bottom:10px;}
#top-link .bnr{display:flex;}
#top-link .bnr a{display:block; background:#fff;}
#top-link .bnr a img{transition:opacity .2s ease;}
#top-link .bnr a:hover img{opacity:.3;}
@media screen and (max-width:640px){
#top-link .bnr{flex-wrap:wrap;}
#top-link .bnr a{width:calc(100% / 3);}}

#howto{display:flex; justify-content:center; margin:30px auto 0;}
#howto li{margin:10px;}
#howto li img{width:100%; max-width:315px;}
@media screen and (max-width:640px){
#howto{margin:20px auto 0;}
#howto li{width:calc((100% / 3) - 5px);}}
@media screen and (max-width:420px){#howto li{width:calc((100% / 3) - 2px);}}

/*
================================================================================================================
楽曲パック半額
================================================================================================================
*/
#special-list{}
#special-list > p{
position:relative;
text-align:center;
background-size:auto auto;
background-color:rgb(252 149 193);
background-image:repeating-linear-gradient(-45deg, transparent, transparent 7px, rgba(255,255,255,.4) .5px, rgba(255,255,255,.4) 15px);
border:3px solid #fde4b2;
padding:15px;
cursor:pointer;}
#special-list > p img{width:70%; max-width:300px;}
#special-list > .toggle{display:none; margin:10px auto 0;}
#special-list > .toggle + p{margin-top:30px;}
#special-list > .toggle > strong{display:block; color:#fff; background:#fe5490; text-align:center; font-size:18px; font-weight:700; padding:8px; margin:10px auto 5px;}
@media screen and (max-width:640px){#special-list > .toggle > strong{font-size:15px;}}
@media screen and (max-width:480px){#special-list > .toggle > strong{font-size:14px; padding:5px;}}

/*トグル*/
#special-list > p.open + .toggle{display:block;}

/*トグル装飾*/
#special-list > p::before,
#special-list > p::after{
display:block;
content:"";
position:absolute;
transition:all .2s ease;}
#special-list > p::before{
top:calc(50% - 17px);
right:10px;
width:34px;
height:34px;
background:#fe5490;
border-radius:50%;}
#special-list > p:hover::before{background:#fe5490;}
#special-list > p::after{
top:calc(50% - 11px);
right:19px;
width:16px;
height:16px;
border-top:2px solid #fff;
border-right:2px solid #fff;
transform:rotate(135deg);}
#special-list > p.open::after{top:calc(50% - 4px); transform:rotate(-45deg);}
@media screen and (max-width:480px){
#special-list > p::before{top:calc(50% - 14px); width:28px; height:28px;}
#special-list > p::after{top:calc(50% - 8px); right:18px; width:12px; height:12px;}}

/*パックリスト*/
#special-list .item{color:#4caac8; background:#fff; font-size:14px; border-radius:10px; border:3px solid #fe5490; padding:10px;}
#special-list .item ul{padding:5px;}
#special-list .item ul + ul{border-top:1px solid;}
#special-list .item ul li{position:relative; padding:5px 5px 5px 100px;}
#special-list .item ul li + li{border-top:1px dotted #4caac8;}
#special-list .item ul li:nth-child(3){display:flex;}

#special-list .item ul li::before{
display;block;
position:absolute;
top:calc(50% - 12px);
left:0;
width:90px;
height:24px;
color:#fff;
background-color:#4caac8;
font-size:12px;
line-height:24px;
text-align:center;
letter-spacing:1px;
border-radius:5px;}
#special-list .item ul li:nth-child(1)::before{content:"パス名";}
#special-list .item ul li:nth-child(2)::before{content:"販売期間";}
#special-list .item.new ul li:nth-child(1)::before,
#special-list .item.discount ul li:nth-child(1)::before{content:"パック名";}
#special-list .item.discount ul li:nth-child(3)::before{content:"価格(税込)";}

/*半額価格*/
#special-list .item.discount ul li:nth-child(3) p:last-child{color:#f00; font-weight:900; font-size:15px;}
#special-list .item.discount ul li:nth-child(3) p:last-child::before{display:inline-block; content:"→"; margin:0 5px;}

#special-list .item.etc ul li:nth-child(1)::before{content:"アイテム名";}
#special-list .item.etc ul li:nth-child(3)::before{content:"価格(税込)";}

/*半額価格*/
#special-list .item.etc ul li:nth-child(3) p:last-child{color:#f00; font-weight:900; font-size:15px;}
#special-list .item.etc ul li:nth-child(3) p:last-child::before{display:inline-block; content:"→"; margin:0 5px;}

/*新規購買*/
#special-list .item.etc ul li:nth-child(3) p.new-item{color:#4caac8; font-weight:400;}
#special-list .item.etc ul li:nth-child(3) p.new-item::before{content:none;}

@media screen and (max-width:640px){
#special-list .item{border:2px solid #fe5490; font-size:11px; padding:5px;}
#special-list .item ul{padding:0 0 5px 0;}
#special-list .item ul:last-child{padding:0;}
#special-list .item ul + ul{padding-top:5px;}
#special-list .item ul li{padding:5px 5px 5px 80px;}
#special-list .item ul li::before{
top:calc(50% - 10px);
width:70px;
height:20px;
font-size:10px;
line-height:20px;}
#special-list .item.discount ul li:nth-child(3) p:last-child{font-size:13px;}}

/*
================================================================================================================
獲得BKSリスト
================================================================================================================
*/
/*トグル用ボタン*/
#point-title{position:relative; color:#fff; font-weight:700; font-size:24px; letter-spacing:1px; text-align:center; border:3px solid #ff91b8; border-radius:10px; margin:20px auto 0; cursor:pointer; transition:border .3s ease;}
#point-title p{background:#fe5490; border:3px solid #fff; border-radius:8px; padding:10px 0; transition:background .3s ease;}
#point-title:hover{border:3px solid #fd4787;}
#point-title:hover p{background:#fd4787;}
@media screen and (max-width:640px){
#point-title{border-width:2px}
#point-title p{border:2px solid #fff; padding:8px 0;}}
@media screen and (max-width:480px){#point-title p{border:1px solid #fff;}}

/*トグル装飾*/
#point-title::before,
#point-title::after{display:block; content:""; position:absolute; background:#7beeff; transition:all .2s ease;}
#point-title::before{width:20px; height:2px; top:calc(50% - 1px); right:20px;}
#point-title::after{width:2px; height:20px; top:calc(50% - 10px); right:29px;}
#point-title.open::before,#point-title.open::after{transform:rotate(225deg);}
@media screen and (max-width:640px){
#point-title{font-size:15px;}
#point-title::before{width:14px; top:calc(50% - 1px); right:15px;}
#point-title::after{height:14px; top:calc(50% - 7px); right:21px;}}

/*入れ子*/
#point-box{display:none;}

.box.blue{border:3px solid #ff91b8; border-radius:10px; margin:20px auto 0;}
.box.blue > .inner{background:#ff91b8; border:3px solid #fff; border-radius:8px;}
@media screen and (max-width:640px){
.box.blue{border:2px solid #fccadc; margin:10px auto 0;}
.box.blue > .inner{border:2px solid #fff;}}
@media screen and (max-width:480px){.box.blue > .inner{border:1px solid #fff;}}

/*リスト*/
#point-list > .cat > .point{display:flex; color:#fb2772; background:#fff; padding:20px 10px; align-items:center;}
#point-list > .cat > .point > p{width:250px; padding-right:20px; text-align:center;}
#point-list > .cat > .point > ul{position:relative; width:calc(100% - 250px);}
#point-list > .cat > .point > ul > li{display:flex; flex-wrap:wrap; align-items:center;}
#point-list > .cat > .point > ul > li + li{border-top:1px solid rgba(76,170,200,.5);}
#point-list > .cat > .point > ul > li > p{padding:10px 5px;}
#point-list > .cat > .point > ul > li > p:nth-child(1){width:calc(100% - 50px); /*margin-right:10px;*/ font-size:12px;}
#point-list > .cat > .point > ul > li > p:nth-child(2){width:50px; text-align:center; font-size:13px;}
#point-list > .cat > .point > ul::before{
display:block;
content:"";
position:absolute;
top:0;
left:-10px;
width:1px;
height:100%;
border-left:4px dotted #4caac8;}
@media screen and (max-width:800px){
#point-list > .cat > .point{flex-wrap:wrap; padding:10px 10px 0 10px;}
#point-list > .cat > .point > *{width:100% !important;}
#point-list > .cat > .point > p{padding-right:0; margin:0 auto 10px;}
#point-list > .cat > .point > p img{width:70%; max-width:300px;}
#point-list > .cat > .point > ul::before{display:none;}}
@media screen and (max-width:640px){
#point-list > .cat > .point{padding:10px 5px 0 5px;}
#point-list > .cat > .point > ul > li > p{padding:5px 3px;}
#point-list > .cat > .point > ul > li > p:nth-child(1){width:calc(100% - 45px); font-size:11px;}
#point-list > .cat > .point > ul > li > p:nth-child(2){width:45px; font-size:12px;}}

#point-list li.controller a{
display:block;
width:90px;
color:#fff;
background:#fb2772;
font-weight:700;
font-size:12px;
text-align:center;
padding:2px 0;
margin:0 0 10px auto;
transition:background .3s ease;}
#point-list li.controller a::before{display:block; content:"販売ページへ";}
#point-list li.controller a:hover{background:#5c0002;}
@media screen and (max-width:480px){#point-list li.controller a{width:100%; font-size:11px;}}

/*リンク*/
#point-list > .cat > .link{display:flex; justify-content:flex-end; margin:10px auto 20px;}
#point-list > .cat:last-child > .link{margin:10px auto 0;}
#point-list > .cat > .link a{display:block; color:#fff; font-weight:700; text-align:center; padding:5px 10px; transition:background .3s ease;}
#point-list > .cat > .link a + a{margin-left:10px;}
#point-list > .cat > .link a:nth-child(1){background-color:#fd5395;}
#point-list > .cat > .link a:nth-child(2){background-color:#0e4a72;}
#point-list > .cat > .link a:nth-child(3){display:none; background-color:#538bd9;}
#point-list > .cat > .link a:nth-child(1)::after{content:"購買部へ";}
#point-list > .cat > .link a:nth-child(2)::after{/*content:"コナステをはじめる(公式サイト)";*/ content:"公式サイトへ";}}
#point-list > .cat > .link a:nth-child(3)::after{content:"専用コントローラを購入";}
#point-list > .cat > .link a:nth-child(1):hover{background-color:#ff3c78;}
#point-list > .cat > .link a:nth-child(2):hover{background-color:#004679;}
#point-list > .cat > .link a:nth-child(3):hover{background-color:#1b4cb9;}
@media screen and (max-width:480px){
#point-list > .cat > .link{flex-wrap:wrap; margin:5px auto 25px;}
#point-list > .cat:last-child > .link{margin:5px auto 0;}
#point-list > .cat > .link a{width:100%;}
#point-list > .cat > .link a + a{margin-top:5px; margin-left:0;}}

/*クレーンゲーム*/
#point-list > .cat#np > .point > ul > li{display:block;}
#point-list > .cat#np > .point > ul > li > p{width:100%; font-size:14px;}
#point-list > .cat#np > .link a:nth-child(1){display:none;}
@media screen and (max-width:640px){#point-list > .cat#np > .point > ul > li > p{font-size:12px;}}

/*
================================================================================================================
BKS獲得履歴
================================================================================================================
*/
#log{margin:0 auto; filter:drop-shadow(1px 1px 0 #fff) drop-shadow(-1px -1px 0 #fff) drop-shadow(-1px 1px 0 #fff)  drop-shadow(1px -1px 0 #fff);}
#log > p{
color:#fff;
background:#fe5490;
text-align:center;
font-size:22px;
font-weight:700;
border-radius:20px;
border:5px solid #ff91b8;
padding:10px 0;
margin:0 auto 20px;}
#log > p span{display:inline-block; color:#0e4a72; background:#fff; padding:5px 20px; border-radius:40px; margin-left:10px;}
@media screen and (max-width:640px){#log > p{font-size:18px; border:3px solid rgb(255, 145, 184); margin:0 auto 10px;}}
@media screen and (max-width:480px){#log > p{font-size:16px; border-radius:10px;}}

#log .toggle{
color:#fff;
background:#ff9abe;
border-radius:20px;
padding:10px;
margin:20px auto 0;}
#log .toggle > .btn{position:relative; font-size:18px; text-align:center; cursor:pointer; transition:opacity .2s ease;}
#log .toggle > .btn:hover{opacity:.7;}
#log .toggle > .btn::before,
#log .toggle > .btn::after{display:block; content:""; position:absolute; background:#7beeff; transition:all .2s ease;}
#log .toggle > .btn::before{width:20px; height:2px; top:calc(50% - 1px); right:10px;}
#log .toggle > .btn::after{width:2px; height:20px; top:calc(50% - 10px); right:19px;}
#log .toggle > .btn.open::before,#log .toggle > .btn.open::after{transform:rotate(225deg);}

#log .toggle > .inner{display:none; background:#fe5490; border-radius:15px; padding:10px; margin-top:20px;}
#log .toggle > .inner > ul{display:flex; font-size:14px; padding:10px;}
#log .toggle > .inner > ul + ul{border-top:1px solid rgba(255,255,255,.5);}

#log .toggle > .inner > ul li:first-child{padding:0 10px; border-left:5px solid;
background-image:none;
background-position: right;
background-size: 60px;
background-repeat: no-repeat;
padding-right: 60px;
min-width: 180px;
}
/*
#log .toggle > .inner > ul li.TCS:first-child{background-image:url(../img/logo/LogoCard.png);}
#log .toggle > .inner > ul li.KNP:first-child{background-image:url(../img/logo/LogoCrane.png);}*/
#log .toggle > .inner > ul li.P2D:first-child{background-image:url(../img/logo/LogoIIDX.png);}
#log .toggle > .inner > ul li.U39:first-child{background-image:url(../img/logo/LogoPopn.png);}
#log .toggle > .inner > ul li.QCV:first-child{background-image:url(../img/logo/LogoSDVX.png);}
#log .toggle > .inner > ul li.VGP:first-child{background-image:url(../img/logo/LogoDDR.png);}
#log .toggle > .inner > ul li.U32:first-child{background-image:url(../img/logo/LogoGitadora.png);}
#log .toggle > .inner > ul li.XIF:first-child{background-image:url(../img/logo/LogoPolaris.png);}

#log .toggle > .inner > ul li.LDJ:first-child{background-image:url(../img/logo/LogoIIDX_AC.png);}
#log .toggle > .inner > ul li.KFC:first-child{background-image:url(../img/logo/LogoSDVX_AC.png);}
#log .toggle > .inner > ul li.MDX:first-child{background-image:url(../img/logo/LogoDDR_AC.png);}

#log .toggle > .inner > ul li.M39:first-child{background-image:url(../img/logo/LogoPopn_AC.png);}
#log .toggle > .inner > ul li.L44:first-child{background-image:url(../img/logo/LogoJubeat.png);}


#log .toggle > .inner > p{color:#fff; text-align:right; font-size:13px; padding:0 20px; margin:20px auto 0;}


@media screen and (max-width:1200px){#log .toggle > .inner ul{font-size:12px;}}
@media screen and (max-width:640px){
#log .toggle{border-radius:20px; margin:10px auto 0;}
#log .toggle > .btn{font-size:16px;}
#log .toggle > .btn::before{width:14px; top:calc(50% - 1px); right:5px;}
#log .toggle > .btn::after{height:14px; top:calc(50% - 7px); right:11px;}
#log .toggle > .inner{margin-top:10px;}
#log .toggle > .inner > ul{flex-wrap:wrap; padding:5px;}
#log .toggle > .inner > ul li{width:100%;}
#log .toggle > .inner > ul li:last-child{margin-top:5px;}
#log .toggle > .inner > p{font-size:11px; padding:0; margin:0 auto;}}
@media screen and (max-width:480px){#log .toggle > .btn{font-size:13px;}}

/*
================================================================================================================
景品応募
================================================================================================================
*/
#apply .notice{background:#fff; border-radius:5px; padding:20px; margin:20px auto;}
#apply .text{color:#fff; background:#0e4a72; text-align:center; font-weight:bold; border-radius:5px; padding:10px; margin:0 auto 10px;}
@media screen and (max-width:480px){
#apply .notice{padding:10px;}
#apply .text{padding:5px;}}

#apply .ast.small{display:none;}

.apply{display:flex; flex-wrap:wrap; justify-content:center;}
.apply + .apply{margin-top:10px;}
.apply a.item{display:block; width:calc((100% / 3) - 10px); color:#fff; font-weight:700; text-align:center; margin:10px 0; transition:all .2s ease;}
.apply a.item > img{display:block; max-width:300px; margin:0 auto 10px; transition:all .2s ease;}
@media screen and (max-width:700px){.apply a.item{width:calc(50% - 10px);}}
@media screen and (max-width:420px){
.apply a.item{width:100%;}
.apply a.item > img{max-width:200px;}}

.apply a.item:hover{filter:drop-shadow(0 3px 4px rgba(0,0,0,.3)); transform:scale(1.02);}
.apply a.item:hover img{filter:contrast(110%);}

.apply a.item > p{color:#fb2772; font-size:20px; font-weight:900; margin:0 auto 10px;}
.apply a.item > p::after{display:inline-block; content:"口 応募済"; font-size:12px; font-weight:700; margin-left:1px;}

.apply a.item > ul li{
display:block;
font-size:20px;
text-align:center;
border-radius:5px;
padding:10px;
filter:drop-shadow(1px 1px 0 #fff) drop-shadow(-1px -1px 0 #fff) drop-shadow(-1px 1px 0 #fff)  drop-shadow(1px -1px 0 #fff);}
.apply a.item > ul li:nth-child(1){color:#fff; background:#5bcecb; margin:0 auto 10px;}
.apply a.item > ul li:nth-child(2){color:#fb2772; background:#fcbad3; border:2px solid;}

.apply a.item > ul li:nth-child(1)::before{content:"必要BKS "; font-size:11px;}
.apply a.item > ul li:nth-child(1)::after{content:"BKS";}


.apply a.item > ul li:nth-child(2)::before{content:"応募する";}
.apply a.item.none > ul li:nth-child(2)::before{content:"BKSが不足しています";}
.apply a.item.end > ul li:nth-child(2)::before{content:"終了しました";}
@media screen and (max-width:980px){.apply a.item > ul li{font-size:16px; padding:5px;}}
@media screen and (max-width:480px){.apply a.item > ul li{font-size:14px;}}

@media screen and (min-width:701px){
.apply.epass a.item:nth-child(3n-1){margin:10px 15px;}}
@media screen and (max-width:700px){.apply.epass a.item:nth-child(even){margin:10px 0 10px 20px;}}
@media screen and (max-width:420px){.apply.epass a.item:nth-child(even){margin:10px 0;}}

.apply.epass02 a.item{width:50%;}
.apply.epass02 a.item > img{max-width:170px;}

.apply.stand a.item{width:50%;}
.apply.stand a.item > img{max-width:300px;}

/*
.apply.stand a.item > li:nth-child(1)::after{content:"10000BKS";}
.apply.stand a.item > ul li:nth-child(1)::after{content:"10000BKS" !important;}
*/

@media screen and (max-width:700px){
.apply.stand a.item{width:100%;}
.apply.epass02 a.item{width:100%;}
.apply.epass02 a.item > img{max-width:190px;}/*縦カード調整*/
}
@media screen and (max-width:480px){
.apply.epass02 a.item > img{max-width:150px;}
}
@media screen and (max-width:375px){
.apply.epass02 a.item > img{max-width:140px;}
}
.apply a.item.none,
.apply a.item.end{pointer-events:none;}
.apply a.item.none *:not(p),
.apply a.item.end *:not(p){filter:grayscale(100%); opacity:.8;}
.apply a.item.end > p{color:#c1382b;}

/*
================================================================================================================
応募確認
================================================================================================================
*/
#prize-confirm{text-align:center; margin:20px auto;}
#prize-confirm img{max-width:300px;}
#prize-confirm img.tate{max-width:187px;}

/*
================================================================================================================
同意確認チェックボックス
================================================================================================================
*/
input[type="checkbox"]{display:none !important; border:0 !important; margin:0 !important;}

.input-checkbox{
position:relative;
width:260px;
font-size:18px;
font-weight:700;
font-family:'Noto Sans JP', sans-serif;
line-height:30px;
letter-spacing:2px;
padding:0 0 0 40px;
margin:20px auto;
z-index:5;}

.input-checkbox label{display:inline-block; cursor:pointer;}

.input-checkbox label:before,
.input-checkbox label:after{content:""; position:absolute; display:inline-block; transition:transform .2s ease;}

.input-checkbox label:before{
top:0;
left:0;
width:30px;
height:30px;
background:#fff;
border:2px solid #55678d;
border-radius:5px;
opacity:.5;}

.input-checkbox label:after{
top:-4px;
left:10px;
width:10px;
height:30px;
border-right:4px solid transparent;
border-bottom:4px solid transparent;
transform:rotate(45deg);
transition:border-bottom-color,border-right-color .2s ease;}

.input-checkbox input[type="checkbox"]:checked + label:before{opacity:1;}
.input-checkbox input[type="checkbox"]:checked + label:after{border-color:#ff568e;}

@media screen and (max-width:480px){
.input-checkbox{width:210px; font-size:14px; line-height:24px; padding:0 0 0 30px;}
.input-checkbox label:before{width:24px; height:24px;}
.input-checkbox label:after{top:-8px;}}

/*
================================================================================================================
TOPに戻るボタン
================================================================================================================
*/
#page-top{
position:fixed;
width:100%;
max-width:2000px;
bottom:0;
right:0;
transition:all .4s ease;
visibility:hidden;
opacity:0;}
#page-top a{
display:block;
position:absolute;
bottom:15px;
right:15px;
width:120px;
height:142px;
background:url(../img/common/top.png);
background-size:100% auto;
transition:all .4s ease;}
#page-top a:hover{opacity:.8;}

#page-top.scroll{/*bottom:10px;*/ opacity:1; visibility:visible;}
#page-top.scroll a{bottom:6px;}

@media screen and (min-width:2001px){#page-top{right:calc(50% - 1000px);}}
@media screen and (max-width:640px){#page-top a{width:90px; height:104px;}}
@media screen and (max-width:480px){#page-top a{right:5px; width:70px; height:81px;}}

/*
================================================================================================================
エラー
================================================================================================================
*/
#main.error{display:flex; align-items:center; justify-content:center;}
@media screen and (min-width:981px){#main.error{min-height:calc(100vh - 201px);}}
@media screen and (max-width:980px){#main.error{min-height:calc(100vh - 249px);}}

#main.error .main-inner > .box{text-align:center; max-width:640px; margin:0 auto;}
#main.error .main-inner > .box > .box-inner > .inner > strong{display:block; color:#fff; background:#fb2772; border-radius:3px; padding:10px 0; margin:0 auto;}
#main.error .main-inner > .box > .box-inner > .inner > a{display:block; color:#fb2772; font-weight:700; border-radius:20px; border:1px solid; padding:10px; transition:all .2s ease;}
#main.error .main-inner > .box > .box-inner > .inner > a:hover{color:#fff; background:#e41200; border:1px solid #e41200;}
#main.error .main-inner > .box > .box-inner > .inner > p{color:#000; line-height:180%; margin:20px auto;}
#main.error .main-inner > .box > .box-inner > .inner > a + a{margin-top:10px;}

/*
================================================================================================================
ニュース
================================================================================================================
*/
ul.news{
width:calc(100% - 40px);
max-width:1200px;
color:#fff;
background:#fd9bbe;
font-family:'Noto Sans JP', sans-serif;
line-height:170%;
border-radius:5px;
border:2px solid #ff1753;
padding:20px;
margin:50px auto 70px;}
ul.news li p{color:#ff1753; font-weight:700;}

