.product-wrap__inner {
    width: 1280px;
    margin: 0 auto;
    text-align: center;
    padding: .6rem .6rem .60rem 2.1rem;
}

.product-wrap.bg-white {
    background: url('../../common/img/ptrn-star-gray.gif') repeat 0 0 #fff;
    text-align: center;
}
.btn-link.reserve {
    width: 2.4rem;
    height: .6rem;
    line-height: .64rem;
    font-size: 0.16rem;
    color: #fff;
    background: rgb(255,111,164);
    background: -webkit-gradient(linear, left top, right top, color-stop(70%, rgba(255,111,164,1)),to(rgba(177,86,246,1)));
    background: linear-gradient(to right, rgba(255,111,164,1) 70%,rgba(177,86,246,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff6fa4', endColorstr='#b156f6',GradientType=1 );
}
.btn-link.reserve:hover {
    background: rgb(255,48,105);
    background: -webkit-gradient(linear, left top, right top, color-stop(70%, rgba(255,48,105,1)),to(rgba(140,32,229,1)));
    background: linear-gradient(to right, rgba(255,48,105,1) 70%,rgba(140,32,229,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff3069', endColorstr='#8c20e5',GradientType=1 );
    text-decoration: none;
}

/* 早期予約特典
----------------------------------*/
.reserve .product-catch {
    font-size: .28rem;
    color: #03ceb8;
    font-weight: bold;
    letter-spacing: .05rem;
    padding-bottom: .3rem;
}
.reserve .product-catch--red {
    color: #fe7bd8;
}
.reserve .product-dlttl {
    font-size: .16rem;
    color: #3e3a39;
    font-weight: bold;
    letter-spacing: .05rem;
    margin-bottom: .35rem;
}
.reserve .route-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: .25rem;
}
.reserve .route__item {
    position: relative;
    width: 4.80rem;
    border-radius: .10rem;
    background-color: #fff;
    -webkit-box-shadow: .02rem .02rem .10rem #e2e2e2;
            box-shadow: .02rem .02rem .10rem #e2e2e2;
    padding: .40rem .40rem 2.90rem .40rem;
}
.reserve .route__name {
    color: #03ceb9;
    font-size: .14rem;
}
.reserve .route__chara-name {
    color: #03ceb9;
    font-size: .26rem;
    font-weight: bold;
}
.reserve .route__line {
    width: .80rem;
    height: 0;
    border: 1px solid #03ceb9;
    margin-bottom: .30rem;
}
.reserve .route__txt {
    text-align: left;
    font-size: .16rem;
}
.reserve .route__chara-img {
    position: absolute;
    width: 4.00rem;
    height: auto;
    bottom: .40rem;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.reserve .notes-list {
    font-size: .12rem;
    text-align: left;
}
.reserve .notes-list__item {
    position: relative;
    padding-left: 1em;
}
.reserve .notes-list__item::before {
    content: '\203b';
    position: absolute;
    left: 0;
}
.reserve .product__box-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: .25rem;
}
.reserve .product__box-item {
    width: 4.88rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: .40rem;
}
.reserve .txt-link--arrw {
    position: relative;
    font-size: .16rem;
    display: block;
    text-align: left;
    margin: .15rem;
    padding-left: 1em;
}
.reserve .txt-link--arrw::before {
    content: url('../../common/img/icon_arrw-r_blue.svg');
    position: absolute;
    top: .04rem;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 0.6em;
    height: 1.4em;
}


.notes-list__item a{ color: #5fc9c3; text-decoration: none;}
.notes-list__item a:visited { color: #5fc9c3; }
.notes-list__item a:hover { color: #5fc9c3; text-decoration: underline;}
.notes-list__item a:active { color: #5fc9c3; }




/* 製品情報ページ
----------------------------------*/
.product-softttl{
    font-size: .28rem;
    color: #03ceb8;
    font-weight: bold;
    letter-spacing: .05rem;
    padding-bottom: .5rem;
}
.product-soft-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: .16rem;
    margin-bottom: .35rem;
}
.product-soft.basicinfo__block {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
}
.product-soft.price__block:nth-child(1),
.product-soft.price__block:nth-child(2) {
    -webkit-box-flex: .8;
        -ms-flex-positive: .8;
            flex-grow: .8;
}
.product-soft.price__block:nth-child(3) {
    -webkit-box-flex: 1.2;
        -ms-flex-positive: 1.2;
            flex-grow: 1.2;
}
.product-soft.price__block:nth-child(4),
.product-soft.price__block:nth-child(5) {
    -webkit-box-flex: 1.1;
        -ms-flex-positive: 1.1;
            flex-grow: 1.1;
}
.product-soft.price__block dt {
    height: .75rem;
    line-height: 1.2;
}
.product-soft-wrap.download {
    margin-bottom: .70rem;
}
.product-soft.download__block {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
}
.product-soft.download__block dd {
    height: .75rem;
}
.product-soft dt {
    color: #fff;
    background-color: #8ae2d0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    min-height: .50rem;
}
.product-soft dd {
    background-color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-left: 1px solid #8ae2d0;
    border-right: 1px solid #8ae2d0;
    min-height: .50rem;
}

.product-softpacul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.product-softttl--pac{
    font-size: .22rem;
    font-size: .28rem;
    color: #03ceb8;
    font-weight: bold;
    letter-spacing: .05rem;
    line-height: 1.4;
}
.product-softttl-line {
    width: .80rem;
    height: 0;
    border: 1px solid #03ceb8;
    margin-bottom: .30rem;
}
.product-softttl--red{
    color: #fe7bd8;
}
.product-softdlttl{
    font-size: .16rem;
    color: #3e3a39;
    font-weight: bold;
    letter-spacing: .05rem;
    padding-bottom: .1rem;
}

.product-softdt{
    background-color: #8ae2d0;
    color:#fff;
    padding: .12rem 0;
}
.product-softdt--w{
    height: .8rem;
    line-height: 0.52rem;
}
.product-softdd{
    background-color: #fff;
    color:#000;
    padding: 0.2rem;
}
.product-softboxarea{
    background: #fff;
    -webkit-box-shadow: 0 0 .02rem .02rem #e8e8e8;
    box-shadow: 0 0 .02rem .02rem #e8e8e8;
    border-radius: .08rem;
    border: 1px solid #e8e8e8;
    padding: .38rem .83rem .4rem .95rem;
    margin-bottom: 0.5rem;
}
.product-softpacliimg{
    padding-bottom:.1rem;
}

.product-softpaclitxt{
    text-align:center;
    font-size: .16rem;
    line-height: .45rem;
    height: .45rem;
    margin: 0.1rem auto .2rem;
}

.product-softpaclitxt--vita::before{
    content: "";
    background:url('../../common/img/icon_ps_vita.svg') no-repeat;
    background-size: contain;
    display: inline-block;
    width: .45rem;
    height: .45rem;
    margin-right: .10rem;
    vertical-align: middle;
}
.product-softpaclitxt--switch::before{
    content: url('../../common/img/logo_switch.svg');
    display: inline-block;
    width: .45rem;
    height: .45rem;
    margin-right: .10rem;
    vertical-align: middle;
}
.product-softpaclitxt--steam::before{
    content: "";
    background:url('../../common/img/icon_steam.svg') no-repeat;
    background-size:contain;
    display: inline-block;
    width: .45rem;
    height: .45rem;
    margin-right:.10rem;
    vertical-align: middle;
}
.product-boxlistul{
    border-bottom: 1px solid #efefef;
    margin-bottom: 0.2rem;
    padding: 0.1rem;
}
.product-boxlistul.treasure{
    background-color:#e9fcf9;
}
.product-boxlistul.party{
    background-color:#fff7f9;
}
.product-boxlistul.vacation{
    background-color:#eefaff;
}
.product-boxlistul.kizuna{
    background-color:#fffde6;
}
.product-boxlistul li{
    text-align: left;
    font-size: 0.14rem;
    margin: 0.1rem 0;
    text-indent: -0.2rem;
    padding-left: 0.2rem;
}
.product-boxlistul li::before{
    content:"・";
    color: #02ccc9;
    margin-right: 0.1rem;
}
.product-boxlistul-more{
    color: #03ceba;
    border: 1px solid #03ceba;
    padding: 0.02rem 0.14rem;
    border-radius: .12rem;
    font-size: 0.12rem;
    margin-left: 0.1rem;
    background-color:#fff;
    white-space: nowrap;
}
.product-boxlistul-more::after{
    content: "";
    background:url(../img/soft_icon_more.png) no-repeat center right;
    width: 0.12rem;
    height: 0.12rem;
    display: inline-block;
    background-size: contain;
    margin-left: 0.02rem;
    vertical-align: middle;
    margin-top: -1px;
}

.product-boxlistul-more:hover{
    color: #03ceba;
    text-decoration: none;
    background-color:#dffbf8;
}
.product-label-only{
    display: inline-block;
    color: #fff;
    position: relative;
    text-align: center;
    background-color:#775509;
    font-size:0.1rem;
    font-weight: bold;
    margin-right: 0.2rem;
    padding: 0.05rem 0.05rem 0.05rem 0.3rem;;
    border-radius: 2px;
}
.product-label-only::after {
    content: "";
    position: absolute;
    left: 100%;
    border-style: solid;
    border-color: transparent;
    border-left-color: #775509;
    border-width: 0.05rem 0.12rem;
    width: 0;
    height: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.product_cd_summary-list{max-width: 620px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; padding-left: 20px; padding-top: 8px;}
.product_cd_summary-list div{width: 33.1%; padding: 2px 0.1%; margin: 0; list-style-type:none;}

.product_dc_point{border-top: solid 1px #932e02; margin-top: 8px;}
.product_dc_point-ttl{margin-left: 20px; color: #932e02; border-bottom: solid 1px #932e02; }
.product_dc_point span{ font-size:130%; color: #932e02; margin: 0; padding: 0;}

.sp_txt{border: solid 1px #03ceba; margin: 0.05rem 0; padding: 0.1rem; font-size: 0.13rem; text-indent: 0; color: #03ceba;}


@media screen and (max-width: 750px) {
.sp_txt{ font-size: 0.20rem;}
}


/* ダイアログ */
.mfp-bg {
    background: url(../img/overlay_modal.gif) repeat 0 0 !important;
}
.mfp-close-btn-in .mfp-close {
    border: 1px solid #434343;
    border-radius: 50%;
    line-height: 1;
    width: .60rem;
    height: .60rem;
    top: -.50rem;
    right: -.50rem;
    background: url(../../common/img/icon_close_bk.svg) no-repeat center center;
    background-size: 50%;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
.soft-dialog{
}
.soft-dialog-box {
    position: relative;
    background: #FFF;
    padding:.30rem;
    width: auto;
    max-width: 660px;
    margin:auto;
    border: 1px solid #03ceba;
    border-radius: .12rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.soft-dialog-box-ttl{
    color:#02ccc4;
    font-size: 0.16rem;
    margin-bottom: 0.1rem;
}
.soft-dialog-box-txt{
    color:#444;
    font-size: 0.14rem;
}
.soft-dialog-box-img{
    margin: auto;
    display: inherit;
}
.product-wrap .bnr-link {
    width: 6.80rem;
    margin: 0 auto .50rem;
    display: block;
}

.product-soft--price{padding-bottom: 10px; font-weight: 600;}
.product-soft--price span{font-size: 50%;}




/* 店舗特典ページ
----------------------------------*/
.product-shopcatchh3 {
    position: relative;
    color: #03ceb8;
    font-size: .28rem;
    font-weight: bold;
    padding-bottom: .6rem;
}

.product-shopcatchh4 {
    position: relative;
    color: #03ceb8;
    font-size: .22rem;
    font-weight: bold;
    padding-bottom: .16rem;
}

.product-shoparea {
    background: #fff;
    -webkit-box-shadow: 0 0 .02rem .02rem #e8e8e8;
            box-shadow: 0 0 .02rem .02rem #e8e8e8;
    border-radius: .08rem;
    border: 1px solid #e8e8e8;
    padding: .42rem .5rem;
    text-align: left;
    margin-bottom: 0.6rem;
}

.product-shopflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: .2rem;
}

.product-shopflex--top {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
}

.product-shopimg {
    width: 3.8rem;
}
.product-shopimg--txt {
    text-align:right;
    font-size: .12rem;
    display: block;
    padding-top: .1rem;
}

.product-shopdl {
    width: 4.7rem;
    font-size: .16rem;
    letter-spacing: .015rem;
}

.product-shopdt {
    color: #000;
    padding: 0 0 .04rem 0;
}

.product-shopdd {
    color: #221815;
    line-height: 1.8;
}

.product-shopdd--last {
    padding-bottom: .32rem;
}

.product-shopdd--caution {
    padding-bottom: .2rem;
}
.product-shopdd--cautionlink{
    color: #03ceb8;
    text-decoration: underline;
}
.product-shopdd--ind {
    padding-left: .1rem !important;
    text-indent: -.1rem !important;
}

.product-shopdd--small {
    font-size: .12rem;
    margin-top: 0.1rem;
}

.btn-link--ls {
    letter-spacing: .08rem;
}

	.product-softttl--ch{
	font-size: 0.15rem;
	padding-bottom: .1rem;
	color: #ff6fa4;
	}





@media screen and (max-width: 750px) {
    .product-wrap.bg-white {
        background-size: contain;
    }
/* 早期予約特典ページ */
    .reserve .product-catch {
        font-size: .32rem;
    }
    .reserve .product-dlttl {
        font-size: .22rem;
    }
    .reserve .route-wrap {
        display: block;
    }
    .reserve .route__item {
        position: relative;
        width: 100%;
        padding-bottom: 4.40rem;
    }
    .reserve .route__item:first-child {
        margin-bottom: .55rem;
    }
    .reserve .route__name {
        font-size: .20rem;
    }
    .reserve .route__chara-name {
        font-size: .32rem;
    }
    .reserve .route__txt {
        font-size: .24rem;
    }
    .reserve .route__chara-img {
        width: 6.29rem;
    }
    .reserve .notes-list {
        font-size: .20rem;
    }
    .reserve .product__box-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
    .reserve .product__box-item {
        width: 6.80rem
    }
    .reserve .txt-link--arrw {
        font-size: .22rem;
    }

    /* 製品情報
----------------------------------*/
    .product-softboxarea{
        padding: 0.4rem;
    }
    .product-softttl{
        font-size: .32rem;
    }
    .product-softdlttl {
        font-size: .24rem;
    }
    .product-soft-wrap {
        display: block;
        border-top: 1px solid #000;
    }
    .product-soft {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        border-bottom: 1px solid #000;
        font-size: .24rem;
        line-height: 1.4;
        padding: .4em 0;
    }
    .product-soft dt {
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
        border: none;
        background-color: transparent;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        text-align: left;
        color: #03ceb8;
    }
    .product-soft dd {
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
        border: none;
        background-color: transparent;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        text-align: left;
    }
    .product-softpacul {
        display: block;
    }
    .btn-link.reserve{
        margin: 0 0 0.2rem;
        width: 100%;
    }
    .product-softpacli{
        width: 100%;
    }
    .product-shopcatchh3 {
        font-size: .32rem;
        padding-bottom: .42rem;
        letter-spacing: .042rem;
    }

    .product-shoparea {
        padding: .2rem .3rem .3rem .3rem;
    }

    .product-shopcatchh4 {
        font-size: .3rem;
        padding-bottom: .06rem;
    }

    .product-shopdl,
    .product-shopimg,
    .product-shopimg img {
        width: 100%;
    }

    .product-shopimg {
        padding-top: .16rem;
    }
    .product-shopimg--txt {
        font-size: .24rem;
    }
    .product-shopdl {
        width: 100%;
        letter-spacing: .02rem;
    }

    .product-shopdt,
    .product-shopdd {
        font-size: .24rem;
        padding: 0 0 .04rem 0;
    }

    .product-shopdd--last {
        padding-bottom: .48rem;
    }

    .product-shopdd--small {
        font-size: .2rem;
    }

    .product-shopdd--caution {
        padding-bottom: .2rem;
        word-break: break-all;
    }

    .product-shopflex {
        padding-bottom: .3rem;
    }
    .mfp-close-btn-in .mfp-close{
        top: -0.7rem;
        right: 0.1rem;
    }
    
    .product-boxlistul-more::after{
        width: 0.15rem;
        height: 0.15rem;
    }
    .product-boxlistul li{
        font-size: 0.22rem;
    }
    .soft-dialog-box-ttl{
        font-size: 0.22rem;
    }
    .soft-dialog-box-txt {
        font-size: 0.2rem;
    }




    /* 店舗特典ページ
----------------------------------*/
    .product-wrap__inner {
        width: 100%;
        padding: .42rem .25rem;
    }
}
