@charset "utf-8";
/*------------------------------------------------------------------------------------------
*
*
    teaser.css
*
*
------------------------------------------------------------------------------------------ */
.disabled{ visibility: hidden !important;}
.dnone{ display: none;}

body{ color: #171C61;}

@media screen and (min-width : 641px){ 
/*------------------------------------------------------------------------------------------
*
*
    min-width : 641px
*
*
------------------------------------------------------------------------------------------ */
#main_visual{
    min-width: 1000px;
    text-align: center;
    padding: 45px 0 0 0;
    margin: 0 0 235px 0;
    background-color: #e60012;
    position: relative;
    overflow: visible !important;
}

h1{
    margin: 0 0 50px 0;
    text-align: center;
}

h1 img{
    width: 264px;
}

#main_visual .pic{
    width: 1000px;
    margin: -175px auto 0 auto;
    position: relative;
    bottom: -175px;
}

#main_visual .badge{
    display: block;
    position: absolute;
    bottom: -116px;
    right: 35px;
}

#main_visual .badge img{
    width: 192px;
}

#wrap{
    width: 1000px;
    margin: 0 auto;
    padding: 0;
}


#section_yodogawa{
    margin: 0 0 70px 0;
    padding: 0 0 40px 0;
    border-bottom: 1px solid #e60012;
    overflow: hidden;
}

#section_yodogawa h2{
    text-align: 0;
    margin: 40px 0 40px 300px;
}

#section_yodogawa h2.t02{ margin-left: 220px;}
#section_yodogawa h2.t03{ margin-left: 165px;}

#section_yodogawa p{
    margin: 0 0 30px 300px;
    font-size: 16px;
    line-height: 1.875em;
}

.product{
    margin: 70px 0 0 0;
}

.product .inner{
    padding: 0 0 0 100px;
    display: flex;
    flex-wrap: wrap;
}

.product .pic img{
    width: 420px;
}

.product .desc{
    padding: 0 0 0 40px;
}

.product .desc h3{
    margin: 0 0 10px 0;
    font-size: 20px;
    line-height: 1.4em;
    font-weight: bold;
}

.product .desc .price{
    margin: 0 0 20px 0;
    font-weight: bold;
    font-size: 16px;
}

.product .desc .txt{
    font-size: 16px;
    line-height: 1.666em;
}

.pic_btm{
    margin: 70px 0 0 0;
    padding: 100px 0 0 0;
    border-top: 1px solid #e60012;
}

.pic_btm span{ display: block; position: relative;}
.pic_btm span:after{
    content: '';
    width: 192px;
    height: 192px;
    display: block;
    background-image:url(../images/teaser/img_badge_onsale.png);
    background-size: 192px;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 40px;
    right: 30px;
}

.pic_btm.t02 span:after{
    right: inherit;
    left: 30px;
}

.pic_btm.t03 span:after{ width: 150px; height: 150px; background-size: 150px; top: 30px; right: 20px;}

#btm_nav{
    text-align: center;
    margin: 100px 0;
}

#btm_nav li{
    margin: 0 120px;
    display: inline-block;
}

#btm_nav li img{
    width: 69px;
}

} /* ----- min-width : 641px ----- */




@media screen and (max-width : 640px){ 
/*------------------------------------------------------------------------------------------
*
*
    max-width : 640px
*
*
------------------------------------------------------------------------------------------ */
#main_visual{
    text-align: center;
    padding: 20px 0 0 0;
    margin: 0 0 35px 0;
    background-color: #e60012;
    position: relative;
    overflow: visible !important;
}

h1{
    margin: 0 0 20px 0;
    text-align: center;
}

h1 img{
    width: 170px;
}

#main_visual .pic{
    margin: 0 auto;
    line-height: 0;
    position: relative;
}

#main_visual .pic img{
    width: 100%;
}

.head_badge{
    margin: 0 0 25px 0;
    display: block;
    text-align: center;
}

.head_badge img{
    width: 160px;
}

#main_visual .copy{
    margin: 0 0 11% 0;
    padding: 0 10%;
}

#main_visual .copy img{
    width: 100%;
    max-width: 360px;
}

#wrap{
    margin: 0 auto;
    padding: 0;
}


#section_yodogawa{
    padding: 0 5%;
    margin: 0 5% 35px 5%;
    border-bottom: 1px solid #e60012;
}

#section_yodogawa h2{
    margin: 0 0 22px 0;
}

#section_yodogawa h2 img{
    width: 100%;
    max-width: 360px;
}

#section_yodogawa p{
    margin: 0 0 2em 0;
    font-size: 14px;
    line-height: 1.875em;
}

.product{
    margin: 0 0 35px 0;
}

.product .inner{
    padding: 0 5%;
}

.product .pic{
    text-align: center;
}

.product .pic img{
    width: 100%;
    max-width: 420px;
}

.product .desc{
    max-width: 360px;
    margin: 0 auto;
    padding: 20px 5% 0 5%;
}

.product .desc h3{
    margin: 0 0 10px 0;
    font-size: 15px;
    line-height: 1.666em;
    font-weight: bold;
}

.product .desc .price{
    margin: 0 0 20px 0;
    font-weight: bold;
    font-size: 15px;
}

.product .desc .txt{
    font-size: 14px;
    line-height: 1.857em;
}

.pic_btm{
    margin: 35px 5%;
    padding: 35px 0 0 0;
    border-top: 1px solid #e60012;
}

.pic_btm img{
    width: 100%;
}

.pic_btm span{ display: block; position: relative;}
.pic_btm span:after{
    content: '';
    width: 42%;
    height: 42%;
    display: block;
    background-image:url(../images/teaser/img_badge_onsale.png);
    background-size: contain;
    background-position: right top;
    background-repeat: no-repeat;
    position: absolute;
    top: 8px;
    right: 8px;
}

.pic_btm.t02 span:after{
    right: inherit;
    left: 8px;
    background-position: left top;
}

.pic_btm.t03 span:after{
    width: 40%;
    height: 40%;
    top: inherit;
    right: 6px;
    bottom: 6px;
}

#btm_nav{
    text-align: center;
    margin: 40px 0 50px 0;
    overflow: hidden;
}

#btm_nav.n{ margin-bottom: 0;}

#btm_nav ul{
    width: calc(100% + 150px);
    position: relative;
    left: -75px;
}

#btm_nav li{
    margin: 0 65px;
    display: inline-block;
}

#btm_nav li img{
    width: 70px;
}

} /* ----- max-width : 640px ----- */