@charset "shift_jis";

/* main-inner */

#main #main-inner {
    border: none;
    background: url('../img/bg_ptrn.png') repeat center top;
    margin-top: 10px;
}

#main #main-title,
#main #cont-wrap h3,
#main #sec01,
#main #sec02,
#main #sec03,
#main #sec04,
#main #sec05,
#main #sec06 {
    position: relative;
    width: 864px;
}

#main #main-title h2,
#main #main-title .chara,
#main #main-title .lead,
#main #sec01 p,
#main #sec02 p,
#main #sec03 .charalist,
#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: 9px;
    left: 20px;
}

#main #main-title {
    height: 677px;
    background: url('../img/head_bg.png') center top no-repeat;
    top: -45px;
}

#main #main-title h2 {
    top: 130px;
    left: 0;
    z-index: 2;
    right: 0;
    margin: auto;
    width: 618px;
}

#main #main-title .chara {
    top: 5px;
    left: -25px;
    z-index: 1;
}

#main #main-title .lead {
    bottom: 30px;
    left: 0;
    z-index: 1;
    right: 0;
    margin: auto;
    width: 774px;
}

#main #sec01 {
    height: 1020px;
}

#main #sec01 .sec01-ttl {
    background: url('../img/sec1_ttl01_base.png') no-repeat center top;
    width: 864px;
    height: 92px;
}

#main #sec01 .sec01-ttl img {
    position: absolute;
    top: 15px;
    left: 125px;
}

#main #sec01 .sec01-txt {
    top: 110px;
    left: 20px;
    width: 383px;
    height: 151px;
}

#main #sec01 .sec01-img01 {
    top: 110px;
    left: 435px;
    width: 196px;
    height: 327px;
}

#main #sec01 .sec01-img02 {
    top: 110px;
    left: 645px;
    width: 196px;
    height: 327px;
}

#main #sec01 .sec01-img03 {
    top: 455px;
    left: 25px;
    width: 395px;
    height: 538px;
}

#main #sec01 .sec01-img04 {
    top: 455px;
    right: 25px;
    width: 395px;
    height: 538px;
}

#main #sec02 {
    height: 1530px;
}

#main #sec02 .sec02-ttl01 {
    background: url('../img/sec2_ttl01_base.png') no-repeat center top;
    width: 864px;
    height: 92px;
}

#main #sec02 .sec02-ttl01 img {
    position: absolute;
    top: 13px;
    left: 200px;
}

#main #sec02 .sec02-ttl02 {
    top: 110px;
    left: 0;
    width: 804px;
    height: 62px;
    right: 0;
    margin: auto;
}

#main #sec02 .sec02-txt01 {
    top: 185px;
    left: 0;
    width: 811px;
    height: 204px;
    right: 0;
    margin: auto;
}

#main #sec02 .sec02-img01 {
    top: 400px;
    left: 50px;
    width: 364px;
    height: 381px;
}

#main #sec02 .sec02-img02 {
    top: 400px;
    right: 50px;
    width: 364px;
    height: 381px;
}

#main #sec02 .sec02-txt02 {
    top: 800px;
    left: 0;
    width: 740px;
    height: 99px;
    right: 0;
    margin: auto;
}

#main #sec02 .sec02-ttl03 {
    top: 920px;
    left: 0;
    width: 804px;
    height: 58px;
    right: 0;
    margin: auto;
}

#main #sec02 .sec02-txt03 {
    top: 990px;
    left: 0;
    width: 811px;
    height: 123px;
    right: 0;
    margin: auto;
}

#main #sec02 .sec02-img03 {
    top: 1125px;
    left: 50px;
    width: 364px;
    height: 381px;
}

#main #sec02 .sec02-img04 {
    top: 1125px;
    right: 50px;
    width: 364px;
    height: 381px;
}

#main #sec03 {
    height: 1320px;
}

#main #sec03 .sec03-ttl01 {
    background: url('../img/sec3_ttl01_base.png') no-repeat center top;
    width: 864px;
    height: 92px;
}

#main #sec03 .sec03-ttl01 img {
    position: absolute;
    top: -6px;
    left: 90px;
}

#main #sec03 .sec03-txt01 {
    top: 100px;
    left: 0;
    width: 812px;
    height: 124px;
    right: 0;
    margin: auto;
}

#main #sec03 .sec03-ttl02 {
    top: 240px;
    left: 0;
    width: 804px;
    height: 61px;
    right: 0;
    margin: auto;
}

#main #sec03 .charalist {
    top: 320px;
    left: 0;
    width: 804px;
    height: 243px;
    right: 0;
    margin: auto;
    display: table;
}

#main #sec03 .charalist li {
    display: table-cell;
}

#main #sec03 .charalist li:nth-child(1) {}
#main #sec03 .charalist li:nth-child(2) {}
#main #sec03 .charalist li:nth-child(3) {}
#main #sec03 .charalist li:nth-child(4) {}
#main #sec03 .charalist li:nth-child(5) {}

#main #sec03 .sec03-ttl03 {
    top: 580px;
    left: 0;
    width: 804px;
    height: 61px;
    right: 0;
    margin: auto;
}

#main #sec03 .sec03-img01 {
    top: 655px;
    left: 25px;
    width: 400px;
    height: 624px;
}

#main #sec03 .sec03-img02 {
    top: 655px;
    right: 25px;
    width: 400px;
    height: 624px;
}

#main #sec04 {
    height: 764px;
    background: url('../img/sec4_bg.png') center top no-repeat;
}

#main #sec04 .sec04-ttl {
    top: -20px;
    left: 0;
    right: 0;
    width: 817px;
    height: 120px;
    margin: auto;
}

#main #sec04 .sec04_txt {
    top: 110px;
    left: 0;
    right: 0;
    width: 800px;
    height: 74px;
    margin: auto;
}

#main #sec04 .sec04-img-wrap {
    position: relative;
    top: 200px;
    text-align: center;
}

#main #sec04 .sec04-img-wrap img {
    width: 254px;
    height: 254px;
    margin: 0 6px 14px;
}
.mov.on {
    animation-duration: 0.8s;
    animation-name: pon;
}
@keyframes pon {
    0% { transform: scale(1); }
    60% { transform: scale(1); }
    80% { transform: scale(1.3); }
    100% { transform: scale(1); }
}
/* 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;
}
