@charset "shift_jis";

/* main-inner */

#main #main-inner {
    border: none;
    background: url('../img/bg_pattern.png');
    margin-top: 10px;
}

#main #main-title {
    height: 574px;
    background: url('../img/head_bg.png') left top no-repeat;
    top: -46px;
}

#main #main-title h2 {
    top: 55px;
    left: 15px;
    z-index: 1;
}

#main #main-title .chara {
    top: 130px;
    left: 565px;
    z-index: 2;
    background: url('../img/bg_mario.png') no-repeat;
}

#main #main-title .lead {
    top: 385px;
    left: 20px;
}

#cont-wrap {
    margin-top: -65px;
}

#main #cont-wrap h3 {
    position: relative;
    width: 826px;
    left: 5px;
}

#main #sec01 .sec01inner {
    background: url('../img/sec01_bg.png') no-repeat center top;
    position: relative;
    height: 1079px;
}

#main #main-title,
#main #sec01,
#main #sec02,
#main #sec03,
#main #sec04,
#main #sec05,
#main #sec06 {
    position: relative;
    width: 864px;
}

#main #main-title h2,
#main #main-title h3,
#main #main-title p,
#main #sec01 h2,
#main #sec01 p,
#main #sec02 h2,
#main #sec02 p,
#main #sec03 h2,
#main #sec03 p,
#main #sec04 h2,
#main #sec04 p {
    position: absolute;
    margin: 0;
    padding: 0;
}


/* main-title */

#main #title-area {
    z-index: 10;
    height: 35px;
}

#main #title-area h1 {
    position: absolute;
    top: 12px;
    left: 13px;
}

#cont-wrap h3 {
    text-align: center;
    top: 0;
}

#main #sec01 {
    height: 1519px;
}

#main #sec01 .sec01-a {
    top: 20px;
    left: 60px;
}

#main #sec01 .sec01-b {
    top: 120px;
    left: 25px;
    width: 790px;
    height: 472px;
}

#main #sec01 .sec01-c {
    top: 590px;
    left: 55px;
}

#main #sec01 .sec01-d {
    top: 680px;
    left: 60px;
}

#main #sec01 .sec01-e {
    top: 908px;
    left: 100px;
}

#main #sec01 a.link01 {
    position: absolute;
    top: 68px;
    right: 251px;
}

#main #sec02 {
    margin-top: 30px;
    height: 870px;
}

#main #sec02 .sec02-a {
    top: 0;
    left: 0;
}

#main #sec02 .sec02-b {
    top: 230px;
    left: 30px;
}

#main #sec02 .sec02-c {
    top: 330px;
    left: 60px;
}

#main #sec02 .sec02-d {
    top: 656px;
    left: 35px;
}

#main #sec02 .sec02-e {
    top: 5px;
    left: 25px;
}

#main #sec02 img.anime1 {
    position: absolute;
    top: 450px;
    right: 253px;
}

#main #sec02 .sec02-a img.ar1 {
    position: absolute;
    top: 25px;
    left: 40px;
}

#main #sec02 .sec02-a img.ar2 {
    position: absolute;
    top: 120px;
    left: 110px;
}

#main #sec02 .sec02-a img.ar3 {
    position: absolute;
    top: 25px;
    right: 35px;
}

#main #sec02 .sec02-a img.ar4 {
    position: absolute;
    top: 90px;
    right: 80px;
}

#main #sec03 {
    height: 1650px;
    margin-top: 30px;
}

#main #sec03 .sec03-a {
    top: 0;
    left: 0;
}

#main #sec03 .sec03-b {
    top: 300px;
    left: 27px;
}

#main #sec03 .sec03-c {
    top: 435px;
    left: 42px;
}

#main #sec03 .sec03-d {
    top: 875px;
    left: 140px;
}

#main #sec03 .sec03-e {
    top: 1100px;
    left: 37px;
}

#main #sec03 .sec03-f {
    top: 1305px;
    left: 120px;
}

#main #sec03 a.link02 {
    position: absolute;
    bottom: 229px;
    left: 146px;
}

#main #sec03 .sec03-a img.ar1 {
    position: absolute;
    top: 40px;
    left: 35px;
}

#main #sec03 .sec03-a img.ar2 {
    position: absolute;
    top: 175px;
    left: 90px;
}

#main #sec03 .sec03-a img.ar3 {
    position: absolute;
    top: 35px;
    right: 50px;
}

#main #sec03 .sec03-a img.ar4 {
    position: absolute;
    top: 155px;
    right: 70px;
}

#main #sec04 {
    height: 450px;
    margin-top: -60px;
}

#main #sec04 .sec04inner {
    background: url('../img/sec04_bg.png') no-repeat center top;
    width: 808px;
    height: 418px;
    margin: 0 auto;
    position: relative;
}

#main #sec04 .sec04-a {
    top: 25px;
    left: 149px;
}

#main #sec04 .sec04-b {
    top: 215px;
    left: 21px;
}

#main #sec04 .sec04Btn {
    display: block;
    width: 352px;
    margin: 0 auto;
    top: 125px;
    position: relative;
}


/* main-footer */

.main-footer {
    position: relative;
    margin: 20px 0 0;
    padding-bottom: 32px;
}

.f-border {
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #C1C1C1;
}

.main-footer .f-hard {
    position: absolute;
    top: 0;
    right: 0;
}

.f-border .f-hard {
    top: 20px;
}

.f-wrap {
    margin: 36px 0 0;
}

.main-footer .f-logo {
    float: left;
    width: 320px;
    text-align: center;
}

.main-footer .f-contents {
    float: right;
    width: 514px;
}

.main-footer .f-icon {
    float: left;
}

.main-footer .f-name {
    position: relative;
    float: right;
    width: 443px;
    height: 55px;
}

.main-footer .f-soft-ttl {
    position: absolute;
    top: 10px;
}

.main-footer .f-copyright {
    position: absolute;
    bottom: 10px;
    color: #FFFFFF;
    font-size: 9px;
}

.main-footer .f-note01 {
    margin: 5px 0 15px;
    color: #FFFFFF;
    font-size: 9px;
}

.main-footer .f-btn {
    margin: 15px 0 0;
}


/* clearfix */

.clearfix::after {
    content: '';
    display: block;
    clear: both;
}

.mov {
    transform: scale(0);
}

.ar1 {
    transition: .6s;
}

.ar2 {
    transition: .4s;
}

.ar3 {
    transition: .8s;
}

.ar4 {
    transition: 1.0s;
}

.mov.on {
    transform: scale(1);
}

.anime1 {
    transition: 1.8s;
    transform: scale(0);
}

.anime1.on {
    transform: scale(1);
}

.mario {
    transition: .8s;
    transform: scale(0);
}

.mario.on {
    transform: scale(1);
}
