@charset 'utf-8';

/*--------------------------------------------------------------------------------
    feature
--------------------------------------------------------------------------------*/
.section-feature{
    padding: 0 0 80px;
}
    .hero{
        margin: 0 auto 80px;
        background: #000;
        border-bottom: 1px solid #000;
    }
        .hero-inner{
            max-width: 980px;
            height: 460px;
            margin: 0 auto;
            background: url(../img/hero.png) no-repeat center;
        }
            .hero-body{
                max-width: 980px;
                margin: 0 auto;
                padding: 94px 0 0;
            }
                .hero-header{
                    margin: 0 auto 15px;
                }
                    .hero-header:before{
                        content: url(../img/bg_header.png);
                        display: block;
                        width: 330px;
                        height: 96px;
                    }

                .hero-lead{
                    width: 200px;
                    margin: 0 2.3% 0 auto;
                    padding: 22px;
                    font-size: 13px;
                    line-height: 22px;
                    font-weight: bold;
                    color: #fff;
                    background: #000;
                }

.featureV1{
    padding: 0 0 80px;
}
    .featureV1-inner{
        max-width: 980px;
        margin: 0 auto;
    }
        .featureV1-item{
            margin: 80px auto 0;
        }
        .featureV1-item:first-child{
            margin-top: 0;
        }
            .featureV1-item:after{
                content: '';
                display: table;
                clear: both;
            }
            .featureV1-detail{
                float: left;
                position: relative;
                width: 382px;
                background: #000;
            }
                .featureV1-detail:before{
                    content: '';
                    position: absolute;
                    top: 0;
                    right: 0;
                    border: 7px solid transparent;
                    border-top-color: #fff;
                    border-right-color: #fff;
                }
                .featureV1-detail-inner{
                    padding: 70px 50px 50px 50px;
                }
                    .featureV1-primaryHeading{
                        margin: 0 auto 30px;
                        padding-top: 14.2%;
                    }
                        .featureV1-primaryHeading:before{
                            display: block;
                            position: absolute;
                            top: -60px;
                            left: -24px;
                            width: 124px;
                            height: 122px;
                        }
                    .featureV1-secondaryHeading{
                        margin: 0 auto 30px;
                        padding-top: 19.5%;
                    }
                        .featureV1-secondaryHeading span{
                            display: block;
                            height: 0;
                            text-indent: 100%;
                            white-space: nowrap;
                            overflow: hidden;
                        }
                        .featureV1-detail p{
                            font-size: 14px;
                            line-height: 26px;
                            color: #fff;
                        }

                    .featureV1-item-01 .featureV1-primaryHeading{
                        background: url(../img/bg_primaryHeader01.png) no-repeat left center;
                        background-size: 100% auto;
                    }
                        .featureV1-item-01 .featureV1-primaryHeading:before{
                            content: url(../img/bg_tips_01.png);
                            
                        }
                    .featureV1-item-02 .featureV1-primaryHeading{
                        margin: 0 auto 30px;
                        background: url(../img/bg_primaryHeader02.png) no-repeat left center;
                        background-size: 100% auto;
                    }
                        .featureV1-item-02 .featureV1-primaryHeading:before{
                            content: url(../img/bg_tips_02.png);
                        }
                    .featureV1-item-01 .featureV1-secondaryHeading{
                        margin: 0 auto 42px;
                        background: url(../img/bg_secondaryHeader01.png) no-repeat left center;
                        background-size: 100% auto;
                    }
                    .featureV1-item-02 .featureV1-detail-inner{
                        padding-bottom: 24.8%;
                    }
                        
            .featureV1-movie{
                float: right;
                width: 558px;
            }
            .featureV1-figure{
                float: right;
                width: 558px;
                margin: 0 auto;
            }
                .featureV1-figure img{
                    max-width: 100%;
                    height: auto;
                    vertical-align: bottom;
                }
            .featureV1-item-01 .featureV1-figure{
                padding-top: 20px;
            }
                .featureV1-item-01 .featureV1-figure figcaption{
                    margin: 25px auto 0;
                    font-size: 12px;
                }

.featureV2{
    padding: 80px 0 92px;
    background: #000;
}
    .featureV2-inner{
        max-width: 980px;
        margin: 0 auto;
    }
        .featureV2-items{
            margin: 0 -30px;
        }
            .featureV2-items > div{
                display: table;
                width: 100%;
                table-layout: fixed;
                border-spacing: 30px 0;
            }
                .featureV2-item{
                    display: table-cell;
                }
                    .featureV2-primaryHeading{
                        margin: 0 0 22px -10px;
                        padding-top: 23.4%;
                    }
                    .featureV2-item p{
                        color: #fff;
                        font-size: 12px;
                        line-height: 23px;
                    }
                    .featureV2-figure{
                        margin: 0 auto;
                    }
                        .featureV2-figure img{
                            max-width: 100%;
                            height: auto;
                            vertical-align: bottom;
                        }
                .featureV2-item-01{
                    position: relative;
                }
                    .featureV2-item-01 .featureV2-primaryHeading{
                        background: url(../img/bg_primaryHeader03.png) no-repeat left center;
                        /*background-size: 100% auto;*/
                    }
                    .featureV2-item-01 .featureV2-figure{
                        position: absolute;
                        left: 0;
                        bottom: 0;
                        width: 100%;
                    }
                .featureV2-item-02{
                    position: relative;
                }
                    .featureV2-item-02 .featureV2-primaryHeading{
                        background: url(../img/bg_primaryHeader04.png) no-repeat left center;
                        /*background-size: 100% auto;*/
                    }
                    .featureV2-item-02 .featureV2-figure{
                        margin: 28px auto 0;
                    }
                .featureV2-item-03{
                    position: relative;
                }
                    .featureV2-item-03 .featureV2-primaryHeading{
                        background: url(../img/bg_primaryHeader05.png) no-repeat left center;
                        /*background-size: 100% auto;*/
                    }
                    .featureV2-item-03 .featureV2-figure{
                        position: absolute;
                        left: 0;
                        bottom: 0;
                        width: 100%;
                    }
.tabview{
}
    .tabview-container{
        position: relative;
        height: 210px;
    }
        .tabview-item{
            display: none;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }
        .tabview-item.active{
            display: block;
        }
            .tabview-item-inner {
                opacity: 0;
            }
            .tabview-item-inner.fadeIn {
                opacity: 1;
                -webkit-transition: opacity 250ms;
                transition: opacity 250ms;
            }
            .tabview-item-inner img{
                max-width: 100%;
                height: auto;
                vertical-align: bottom;
            }

    .tabview-controller{
        margin: 0 auto 40px;
    }
        .tabview-controller-body{
            display: table;
            width: 100%;
            text-align: center;
        }
            .tabview-controller-item{
                display: table-cell;
                vertical-align: bottom;
                width: 110px;
                margin: 0 5px;
                border-left: 1px solid #fff;
                background: #000;
            }
            .tabview-controller-item:first-child{
                border: none;
            }
            .tabview-controller-item.active{
                background: #ff5f60;
            }
                .tabview-controller-item a{
                    display: block;
                    /*padding-top: 60px;*/
                    padding-top: 43.4%;
                    letter-spacing: normal;
                }
                .tabview-controller-item[data-target="0"] a{
                    background: url(../img/bg_tabcontroller01.png) no-repeat center;
                }
                .tabview-controller-item[data-target="0"].active a{
                    background: url(../img/bg_tabcontroller01_active.png) no-repeat center;
                }    
                .tabview-controller-item[data-target="1"] a{
                    background: url(../img/bg_tabcontroller02.png) no-repeat center;
                }
                .tabview-controller-item[data-target="1"].active a{
                    background: url(../img/bg_tabcontroller02_active.png) no-repeat center;
                }
                .tabview-controller-item[data-target="2"] a{
                    background: url(../img/bg_tabcontroller03.png) no-repeat center;
                }
                .tabview-controller-item[data-target="2"].active a{
                    background: url(../img/bg_tabcontroller03_active.png) no-repeat center;
                } 
                .tabview-controller-item[data-target="3"] a{
                    background: url(../img/bg_tabcontroller04.png) no-repeat center;
                }
                .tabview-controller-item[data-target="3"].active a{
                    background: url(../img/bg_tabcontroller04_active.png) no-repeat center;
                } 

@media(max-width: 1058px){
    .featureV1{
        overflow-y: visible;
    }
        .featureV1-inner {
            padding: 0 20px;
        }
            .featureV1-movie{
                width: 49%;
            }
            .featureV1-figure{
                width: 49%;
            }
            .featureV1-detail{
                width: 49%;
            }

    .featureV2{
        overflow: hidden;
    }
        .featureV2-inner{
            padding: 0 10px;
        }
}

@media(max-width: 980px){
    .hero-inner{
        padding: 0 20px;
    }
    .tabview-controller-item a{
         background-size: 100% auto!important;
    }
    .featureV2-item-01 .featureV2-primaryHeading,
    .featureV2-item-02 .featureV2-primaryHeading,
    .featureV2-item-03 .featureV2-primaryHeading{
        background-size: 100% auto;
    }
}

@media(max-width: 640px){
    .section-feature{
        padding: 0 0 45px;
    }
        .hero{
            margin: 0 auto;
            border: none;
        }
            .hero:after{
                content: '';
                display: block;
                padding-top: 43%;
                background: url(../img/hero_sp.png) no-repeat center;
                background-size: 100% auto;
            }
            .hero-inner{
                height: auto;
                padding: 0;
                background: none;
            }
                .hero-body{
                    padding: 0;
                }
                    .hero-header{
                        margin: 0 auto;
                        padding: 15px 0;
                        background: #000;
                    }
                        .hero-header:before{
                            content: '';
                            width: auto;
                            height: 0;
                            padding-top: 15px;
                            background: url(../img/bg_header_sp.png) no-repeat center;
                            background-size: contain;
                        }
                    .hero-lead{
                        display: none;
                    }
        .featureV1{
            padding: 25px;
        }
            .featureV1-inner{
                padding: 0;
            }
                .featureV1-item {
                    margin: 32px auto 0;
                }
                    .featureV1-movie{
                        float: none;
                        width: auto;
                        margin: 0 auto 26px;
                    }
                        .featureV1-movie .youtube-caption{
                            display: none;
                        }
                    .featureV1-figure{
                        position: static;
                        float: none;
                        width: auto;
                        margin: 0 auto 44px;
                        background: none;
                    }
                    .featureV1-detail{
                        position: static;
                        float: none;
                        width: auto;
                        background: none;
                    }
                        .featureV1-detail:before{
                            display: none;
                        }
                        .featureV1-detail-inner{
                            padding: 0!important;
                        }
                            .featureV1-primaryHeading{
                                display: none;
                            }
                                .featureV1-primaryHeading:before{
                                    display: none;
                                }
                            
                            .featureV1-detail p{
                                font-size: 12px;
                                line-height: 21px;
                                color: #000;
                            }
                .featureV1-item-01{
                }
                    .featureV1-item-01:before{
                        content: '';
                        display: block;
                        margin: 0 0 30px -8px;
                        padding-top: 75px;
                        background: url(../img/bg_primaryHeader01_sp.png) no-repeat left center;
                        background-size: contain;
                    }
                        .featureV1-item-01 .featureV1-secondaryHeading{
                            margin: 0 auto 22px;
                            padding-top: 38px;
                            background: url(../img/bg_secondaryHeader01_sp.png) no-repeat left center;
                            background-size: contain;
                        }
                        .featureV1-item-01 .featureV1-figure{
                            padding-top: 0;
                        }
                            .featureV1-item-01 .featureV1-figure figcaption{
                                margin: 15px auto 0;
                                font-size: 10px;
                            }
                .featureV1-item-02{
                }
                    .featureV1-item-02:before{
                        content: '';
                        display: block;
                        margin: 0 0 30px -8px;
                        padding-top: 75px;
                        background: url(../img/bg_primaryHeader02_sp.png) no-repeat left center;
                        background-size: contain;
                    }
                        .featureV1-item-02 .featureV1-secondaryHeading{
                            display: none;
                        }

        .featureV2{
            padding: 0 25px;
            background: none;
        }
            .featureV2-inner{
                padding: 0;
                overflow: visible;
            }
                .featureV2-items{
                    margin: 0 auto;
                    padding: 0;
                }
                    .featureV2-items > div{
                        display: block;
                        width: auto;
                    }
                        .featureV2-item{
                            position: static;
                            display: block;
                            padding: 0 0 25px;
                        }
                            .featureV2-primaryHeading{
                                margin: 0 0 15px -8px;
                                padding-top: 77px;
                            }
                            .featureV2-item p{
                                font-size: 12px;
                                line-height: 21px;
                                color: #000;
                            }
                            .featureV2-figure{
                                position: static!important;
                                margin: 28px auto 0;
                                text-align: center;
                            }
                                .featureV2-figure img{
                                    width: auto;
                                    max-width: 100%;
                                    height: auto;
                                    vertical-align: bottom;
                                }
                    .featureV2-item-01{
                    }
                        .featureV2-item-01 .featureV2-primaryHeading{
                            padding-top: 74px;
                            background: url(../img/bg_primaryHeader03_sp.png) no-repeat left center;
                            background-size: contain;
                        }
                    .featureV2-item-02{
                        position: relative;
                    }
                        .featureV2-item-02 .featureV2-primaryHeading{
                            padding-top: 74px;
                            background: url(../img/bg_primaryHeader04_sp.png) no-repeat left center;
                            background-size: contain;
                        }
                    .featureV2-item-03{
                        padding-bottom: 0;
                    }
                        .featureV2-item-03 .featureV2-primaryHeading{
                            padding-top: 74px;
                            background: url(../img/bg_primaryHeader05_sp.png) no-repeat left center;
                            background-size: contain;
                        }
    .tabview-controller{
        margin: 0 auto 27px;
    }
        .tabview-controller-item a{
            padding-top: 69.3%;
        }
}

@media print{
    .hero:after{
        display: none;
    }
        .hero-header{
        }
            .hero-header span:first-line{
                font-size: 3em;
            }
    .tabview-controller-item a{
        padding: 20px 0;
        border: 1px solid #000;
    }
    .tabview-controller-item.active a{
        border: 1px solid #ff5f60;
    }
        .tabview-controller-item.active span{
            color: #ff5f60;
        }
        .tabview-container{
            text-align: center;
        }
    .featureV1-primaryHeading{
        display: block;
        margin-bottom: -50px;
        padding: 0;
        font-size: 2em;
    }
        .featureV1-item-01:before,
        .featureV1-item-02:before{
            background: none;
        }
        .featureV1-item-02 .tabview{
            page-break-before: always;
        }
    .featureV2-primaryHeading{
        padding: 0;
        font-size: 2em;
    }
}