* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-weight: bold;
    list-style-type: none;
}
img {
    width: 100%;
    height: 100%;
    transform: translateZ(0px);
    image-rendering: pixelated;
    image-rendering: -webkit-optimize-contrast;
}
body {
    background-image: url("images/top_bg.jpg");
    background-attachment: fixed;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
}

@media screen and (min-width:401px) {
    body{
        min-width: 1200px;
    }
    .sp-only{
        display: none;
    }
}

/* メインエリア */
#Main {
    position: relative;
    width: 100%;
    height: auto;
}

.SegaLogo {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 10;
    width: 120px;
    height: 40px;
    transition: 300ms;
    will-change: filter, opacity;
}
.SegaLogo:hover {
    filter: brightness(120%);
}

.Main-inner{
    position: relative;
    width: 1000px;
    height: 480px;
    margin: 0 auto;
}

.Catch{
    position: absolute;
    top: 20px;
    left: 50%;
    z-index: 1;
    margin-left: -369px;
    background: url("images/catch.png") no-repeat;
    width: 738px;
    height: 66px;
    font-size: 0px;
}

.Title {
    position: relative;
    z-index: 2;
    font-size: 0px;
}
.Title img{
    position: absolute;
    top: 100px;
    left: 50%;
    margin-left: -235px;
    width: 470px;
    height: 368px;
}

.SearchTenpo{
    position: absolute;
    top: 258px;
    right: 45px;
    background: url("images/btn_tenpo.png") no-repeat;
    width: 243px;
    height: 158px;
    font-size: 0px;
    transition: 300ms;
}
.SearchTenpo a {
    display: block;
    width: 100%;
    height: 100%;
}
.SearchTenpo:hover {
    transform: translateY(-5px);
}

.Chara01{
    position: absolute;
    top: 60px;
    left: -80px;
    background: url("images/chara01.png") no-repeat;
    width: 349px;
    height: 544px;
    font-size: 0px;
}
.Chara02{
    position: absolute;
    top: 570px;
    left: 40px;
    background: url("images/chara02.png") no-repeat;
    width: 203px;
    height: 224px;
    font-size: 0px;
}

.Cab {
    position: absolute;
    top: 370px;
    right: 50px;
    z-index: 1;
    width: 205px;
    height: 433px;
    background: url("images/cab.png");
}

.youtube {
    position: relative;
    width: 550px;
    height: 316px;
    margin: 0 auto;
    border: 7px solid #ea5421;
}
.youtube iframe {
    width: 100%;
    height: 302px;
}

/*モード説明*/
.Mode{
    width: 1000px;
    height: 100%;
    margin: 0 auto;
    position: relative;
}
@media screen and (min-width:401px) {
    .Mode-title{
        display: none;
    }
}
.Mode-capture{
    margin: 30px auto;
    background: url("images/image01.png") no-repeat;
    width: 950px;
    height: 632px;
    font-size: 0px;
}

/*Aimeカードでさらに楽しく*/
section.Aime {
    position: relative;
    overflow: hidden;
    margin: 0 auto;
}
.Aime-title {
    width: 618px;
    height: 78px;
    margin: 0 auto;
}
.contentAime {
    width: 852px;
    height: 1052px;
    margin: -30px auto 0;
    background: url("images/content_aime.png") no-repeat;
    font-size: 0;
}
.aimeBg {
    position: absolute;
    top: 0;
    left: -50%;
    z-index: -1;
    transform: rotate(-2deg);
    width: 300%;
    height: 90%;
    background-color: rgba(255, 255, 255, 0.6);
    background-image: url("images/dots.png");
    border-top: 7px solid #e9454a;
    border-bottom: 18px solid #e9454a;
}
.btnAime {
    position: absolute;
    top: 850px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 513px;
    height: 114px;
    background: url("images/btn_aime.png") no-repeat;
    font-size: 0;
    transition: 300ms;
}
.btnAime a {
    display: block;
    width: 100%;
    height: 100%;
}
.btnAime:hover {
    filter: brightness(110%);
}
.Chara03 {
    position: absolute;
    top: 460px;
    right: 50%;
    margin-right: -560px;
    background: url("images/chara03.png") no-repeat;
    width: 264px;
    height: 460px;
    font-size: 0px;
    /*animation: hop 2s infinite;*/
}
/*@keyframes hop {
    0%   { transform: translateY(0);}
    10%  { transform: translateY(-10px);}
    12%  { transform: translateY(0);}
    100% { transform: translateY(0);}
}*/

/*連動サイトでより深く*/
section.Rendo {
    position: relative;
    overflow: hidden;
    margin: 0 auto;
}
.Rendo-title {
    width: 509px;
    height: 79px;
    margin: 0 auto;
}
.contentRendo {
    width: 1010px;
    height: 1160px;
    margin: 20px auto 0;
    background: url("images/content_rendo.png") no-repeat;
    font-size: 0;
}
.rendoBg {
    position: absolute;
    top: 0;
    left: -50%;
    z-index: -2;
    transform: rotate(-2deg);
    width: 300%;
    height: 90%;
    background-color: rgba(255, 255, 255, 0.6);
    background-image: url("images/dots.png");
    border-top: 7px solid #e9b401;
    border-bottom: 18px solid #e9b401;
}
.btnRendo {
    position: absolute;
    top: 970px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 513px;
    height: 143px;
    background: url("images/btn_rendo.png") no-repeat;
    font-size: 0;
    transition: 300ms;
}
.btnRendo a {
    display: block;
    width: 100%;
    height: 100%;
}
.btnRendo:hover {
    filter: brightness(110%);
}
.Chara04 {
    position: absolute;
    top: 680px;
    left: 50%;
    margin-left: -250px;
    z-index: -1;
    background: url("images/chara04.png") no-repeat;
    width: 280px;
    height: 494px;
    font-size: 0px;
    /*animation: hop 2s infinite;*/
}

/*ALL.Net P-ras MULTI バージョン3*/
section.Apm {
    position: relative;
    overflow: hidden;
    margin: 0 auto 100px;
}
.Apm-title {
    width: 923px;
    height: 76px;
    margin: 0 auto;
}
.contentApm {
    width: 902px;
    height: 840px;
    margin: 20px auto 0;
    background: url("images/content_apm.png") no-repeat;
    font-size: 0;
}
.apmBg {
    position: absolute;
    top: 0;
    left: -50%;
    z-index: -1;
    transform: rotate(-2deg);
    width: 300%;
    height: 90%;
    background-color: rgba(255, 255, 255, 0.6);
    background-image: url("images/dots.png");
    border-top: 7px solid #9e4aae;
    border-bottom: 18px solid #9e4aae;
}
.btnApm {
    position: absolute;
    top: 660px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 550px;
    height: 146px;
    background: url("images/btn_apm.png") no-repeat;
    font-size: 0;
    transition: 300ms;
}
.btnApm a {
    display: block;
    width: 100%;
    height: 100%;
}
.btnApm:hover {
    filter: brightness(110%);
}
.Chara05 {
    position: absolute;
    top: 340px;
    left: 50%;
    margin-left: -680px;
    background: url("images/chara05.png") no-repeat;
    width: 339px;
    height: 493px;
    font-size: 0px;
    /*animation: hop 2s infinite;*/
}

/* フッター */
footer {
    background-color: #0071bd;
}

.FooterText p {
    width: 1000px;
    margin: 0 auto;
    padding: 0px 0 50px 0;
    color: #fff;
    font-size: 14px;
    line-height: 2.0;
}
.FooterText p a {
    color: #ffb646;
    text-decoration: none;
}
.FooterText p a:hover {
    text-decoration: underline;
}

.Bnr{
    display: flex;
    width: 320px;
    margin: 0 auto 20px;
    padding-top: 20px;
}
/*.SIC {
    margin: 5px;
    width: 150px;
    height: 56px;
    transition: 300ms;
}*/
.SIC:hover {
    filter: brightness(120%);
}
.Puyoportal {
    margin: 5px;
    width: 150px;
    height: 56px;
    transition: 300ms;
}
.Puyoportal:hover {
    filter: brightness(120%);
}
.Puyoespo {
    margin: 5px;
    width: 150px;
    height: 56px;
    transition: 300ms;
}
.Puyoespo:hover {
    filter: brightness(120%);
}
.SIC img,
.Puyoportal img,
.Puyoespo img {
    width: 150px;
    height: 56px;
    border: 2px solid #ccc;
}

@media screen and (max-width:400px) {
.pc-only{
    display: none;
}
h2 {
    font-size: 20px;
}
.blockSP {
    display: block;
}
body::after{
    content:"";
    display:block;
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    width:100%;
    height:100%;
    background: url("images/sp/top_bg.jpg") center top no-repeat;
    background-size: cover;
}
#Main {
    background: none;
    width: 100%;
    height: 100%;
    padding: 20px 0px;
}
.SegaLogo {
    position: unset;
    z-index: 10;
    width: 80px;
    height: 27px;
    margin: 0px 10px;
}
.Catch{
    position: unset;
    margin: 30px auto 0px;
    background: url("images/sp/catch.png") no-repeat;
    background-size: contain;
    width: 82%;
    height: 96px;
    font-size: 0px;
}

.Title {
    width: 380px;
    height: 100%;
    margin: 0 auto;
}
.Title img {
    position: unset;
    margin-left: 0px;
    width: 380px;
    height: auto;
}
.SearchTenpo{
    top: 224px;
    left: 0;
    right: 0;
    z-index: 1;
    margin: 0 auto;
    background: url("images/sp/btn_tenpo.png") no-repeat;
    background-size: 100%;
    width: 90%;
    height: 70px;
}
.SearchTenpo:hover {
    transform: translateY(0);
}
.Main-inner{
    position: relative;
    width: 400px;
    height: 100%;
    margin: 0 auto;
}
.Cab {
    display: none;
}

.youtube {
    width: 90%;
    height: 205px;
}
.youtube iframe {
    width: 100%;
    height: 192px;
}
.Chara01{
    top: -126px;
    left: -92px;
    background: url(images/sp/chara01.png) no-repeat;
    background-size: contain;
    width: 216px;
    height: 340px;
}
.Chara02{
    display: none;
}

/*モード説明*/
.Mode{
    width: 100%;
    height: 100%;
    margin: 0 auto;
    position: relative;
}
.Mode-title{
    margin: 160px auto 0;
    width: 370px;
    height: 55px;
}
.Mode-capture{
    margin: 10px auto;
    background: url("images/sp/image01.png") no-repeat;
    background-size: contain;
    width: 100%;
    height: 742px;
    font-size: 0px;
}

/*Aimeカードでさらに楽しく*/
section.Aime {
    position: relative;
    z-index: 1;
}
.Aime-title {
    width: 90%;
    height: auto;
    margin: 0 auto;
}
.contentAime {
    width: 100%;
    height: 1206px;
    margin: 0 auto;
    background: url("images/sp/content_aime.png") no-repeat;
    background-size: 100%;
    font-size: 0;
}
.aimeBg {
    position: absolute;
    top: 20px;
    left: -50%;
    z-index: -1;
    transform: rotate(-2deg);
    width: 300%;
    height: 90%;
    background-color: rgba(255, 255, 255, 0.6);
    background-image: url("images/dots.png");
    border-top: 7px solid #e9454a;
    border-bottom: 18px solid #e9454a;
}
.btnAime {
    top: 1030px;
    z-index: 1;
    width: 90%;
    height: 82px;
    background: url("images/btn_aime.png") no-repeat;
    background-size: 100%;
}
.btnAime:hover {
    filter: brightness(100%);
}
.Chara03 {
    top: 830px;
    right: 10px;
    margin-right: 0;
    background: url("images/chara05.png") no-repeat;
    background-size: 100%;
    width: 214px;
    height: 315px;
}

/*連動サイトでより深く*/
section.Rendo {
    position: relative;
    z-index: 1;
    margin: -50px auto 0;
}
.Rendo-title {
    width: 90%;
    height: auto;
    margin: 0 auto;
}
.contentRendo {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 1477px;
    margin: 0 auto;
    background: url("images/sp/content_rendo.png") no-repeat;
    background-size: 100%;
    font-size: 0;
}
.rendoBg {
    position: absolute;
    top: 20px;
    left: -50%;
    z-index: -2;
    transform: rotate(-2deg);
    width: 300%;
    height: 90%;
    background-color: rgba(255, 255, 255, 0.6);
    background-image: url("images/dots.png");
    border-top: 7px solid #e9b401;
    border-bottom: 18px solid #e9b401;
}
.btnRendo {
    top: 1270px;
    z-index: 3;
    width: 90%;
    height: 96px;
    background: url("images/btn_rendo.png") no-repeat;
    background-size: 100%;
}
.btnRendo:hover {
    filter: brightness(100%);
}
.Chara04 {
    top: 1166px;
    left: 219px;
    z-index: 1;
    transform: rotate(-2deg);
    margin-left: 0;
    background: url("images/chara04.png") no-repeat;
    background-size: 100%;
    width: 184px;
    height: 227px;
}

/*ALL.Net P-ras MULTI バージョン3*/
section.Apm {
    position: relative;
    z-index: 1;
    margin: -80px auto 100px;
}
.Apm-title {
    width: 90%;
    height: 77px;
    margin: 0 auto;
    background: url("images/sp/title03.png") no-repeat;
    background-size: 100%;

}
.Apm-title img {
    display: none;
}
.contentApm {
    width: 100%;
    height: 500px;
    margin: 20px auto 0;
    background: url("images/sp/content_apm.png") no-repeat;
    background-size: 100%;
    font-size: 0;
}
.apmBg {
    position: absolute;
    top: 20px;
    left: -50%;
    z-index: -1;
    transform: rotate(-2deg);
    width: 300%;
    height: 90%;
    background-color: rgba(255, 255, 255, 0.6);
    background-image: url("images/dots.png");
    border-top: 7px solid #a94aae;
    border-bottom: 18px solid #a94aae;
}
.btnApm {
    top: 410px;
    left: -30px;
    z-index: 1;
    width: 98%;
    height: 110px;
    background: url("images/btn_apm.png") no-repeat;
    background-size: 100%;
}
.btnApm:hover {
    filter: brightness(100%);
}

/* フッター */
.FooterText p {
    width: 95%;
    margin: 0 auto;
    padding: 0px 0 50px 0;
    color: #fff;
    font-size: 14px;
    line-height: 1.6;
}

.Bnr{
    width: 100%;
    display: block;
}
.SIC,
.Puyoportal,
.Puyoespo {
    margin: 0 auto 10px;
    width: 187px;
    height: 70px;
}
.SIC img,
.Puyoportal img,
.Puyoespo img {
    width: 187px;
    height: 70px;
    border: 2px solid #ccc;
}

}
