@charset 'UTF-8';

/* 共通 */

h1,
.h1,
h2,
.h2,
h3,
.h3 {
    margin: 0;
    padding: 0;
}

h2 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 0;
    padding: 11px 20px;
    color: #fff;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    background-color: #f3416e;
}

h3 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 12px;
    padding: 2px 0 8px;
    color: #f23f6c;
    background: url(../img/common/line-red.gif) repeat-x left bottom;
}

h4 {
    font-size: 1.3rem;
    font-weight: bold;
    margin-bottom: 12px;
    padding: 2px 0 6px;
    color: #393939;
    border-bottom: solid 2px #E6E6E6;
}

h5 {
    font-weight: bold;
    padding: 0;
    margin: 0;
    color: #f3416e;
}

.h2 {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 20px;
    padding: 5px 10px;
    color: #fff;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    background-color: #f3416e;
    background-image: none;
}


/* 商品カタログ */

.product-detail .category-name {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 0;
    padding: 11px 20px;
    color: #fff;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    background-color: #f3416e;
    line-height: 1.1;
}

.product-detail .product-class {
    font-size: 1.3rem;
    font-weight: bold;
}

.product-detail .product h2 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 12px;
    padding: 4px 0 8px;
    color: #f23f6c;
    background: #fff url(../img/common/line-red.gif) repeat-x left bottom;
}

.product-detail .product h3 {
    font-size: 1.3rem;
    font-weight: bold;
    margin-bottom: 8px;
    color: #393939;
    background-image: none;
    padding: 0;
}

.product-detail .product-ex h3 {
    font-size: 1.2rem;
    line-height: 1.2;
    margin-bottom: 2px;
    color: #f23f6c;
    padding: 5px 0;
}

.product-detail .product-link h3 {
    margin-bottom: 10px;
    padding: 5px 0;
    border-bottom: solid 2px #f64157;
}


/* 会社案内 */

.company .main h2 {
    color: #3E529E;
    background: #fff url(../img/common/line-blue.gif) repeat-x left bottom;
    margin-bottom: 18px;
    padding: 2px 0 8px;
}

.company .main h4 {
    font-size: 1.3rem;
    border-bottom: 2px solid #38549C;
    margin-bottom: 20px;
}

.company .main h2.company-top,
.company .main .category-name {
    color: #fff;
    background-color: #3E529E;
    background-image: none;
    margin-bottom: 0;
    padding: 11px 20px;
}

.company .main .category-name {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 0;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    line-height: 1.1;
}

.company .main h3.company-lead {
    color: #f3416e;
    background: none;
    margin-bottom: 10px;
}

.news-releases h3 {
    text-align: center;
    background-image: none;
    margin: 5px 0 8px!important;
    padding-bottom: 0;
}

.news-releases h4 {
    text-align: left;
    margin-top: 30px;
}

.news-releases h5 {
    text-align: left;
    font-size: 1.3rem;
    padding: 0 0 0 10px;
    margin-bottom: 10px;
    color: #393939;
    border-left: solid 3px #003399;
}


/* 採用情報 */

.recruit .main h2 {
    color: #3E529E;
    background: #fff url(../img/common/line-blue.gif) repeat-x left bottom;
    margin-bottom: 18px;
    padding: 2px 0 8px;
}

.recruit .main h3 {
    color: #393939;
    border-bottom: 2px solid #38549C;
    margin-bottom: 20px;
    background: none;
    font-size: 1.9rem;
}

.recruit .main h2.recruit-top,
.recruit .main .category-name {
    color: #fff;
    background-color: #3E529E;
    background-image: none;
    margin-bottom: 0;
    padding: 11px 20px;
}

.recruit .main .category-name {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 0;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    line-height: 1.1;
}

.recruit .main h3.recruit-lead {
    color: #f3416e;
    background: none;
    margin-bottom: 10px;
}


/* cm */

.cm h4 {
    color: #F43D6C;
    padding: 2px 0 2px 12px;
    border-bottom: none;
    margin-bottom: 8px;
    background-image: url(../img/common/ico-arrow-red.png);
    background-repeat: no-repeat;
    background-position: 2px 4px;
}


/* オンラインショップ */

.shopping h4 {
    font-weight: bold;
    margin-bottom: 6px;
    padding: 2px 0 6px;
    color: #393939;
    border-bottom: none;
}

/* consumer */
.consumer-info h4{
    font-size: 1.3rem;
    font-weight: bold;
    color: #39529A;
    padding: 0 0 6px 0;
    margin: 0 0 10px;
    border-bottom: solid 2px #39529A;
}

/* Q&A */

.qa-h4-wrap h4 {
    width: 87%;
    float: right;
    display: block;
    font-size: 1.4rem;
    line-height: 1.4;
    margin: 0;
    border-bottom: none;
    padding: 0;
}

.qa h3 {
    font-size: 1.6rem;
}

/* 緊急のお知らせ */

.information h2.category-info {
    color: #fff;
    background-color: #3E529E;
    background-image: none;
    margin-bottom: 0;
    padding: 11px 20px;
}

.information h3 {
    text-align: center;
    background-image: none;
    margin: 5px 0 8px!important;
    padding-bottom: 0;
}

.information h4 {
    text-align: left;
    margin-top: 30px;
}

.information h5 {
    text-align: left;
    font-size: 1.3rem;
    padding: 0 0 0 10px;
    margin-bottom: 10px;
    color: #393939;
    border-left: solid 3px #003399;
}

/* サイドメニュー */

.side-nav h2 {
    font-size: 18px;
    font-weight: bold;
    padding: 14px 15px 10px;
    color: #fff;
    background-color: transparent;
    background-image: url(sprite-side.png);
    background-repeat: no-repeat;
    background-position: right -165px top -538px;
    margin: 0;
}

.side-nav.class-open h2 {
    background-color: transparent;
    background-image: url(sprite-side.png);
    background-repeat: no-repeat;
    background-position: right -165px top -428px;
    margin: 0;
}

/* サイトマップ */
.sitemap h3 {
    margin-bottom: 5px;
}

.sitemap h4 {
    margin: 10px 0 10px;
}

.sitemap h5 {
    display: inline-block;
    margin: 0;
    background-color: #f3416e;
    color: #fff;
    padding: 3px 10px;
    border-radius: 4px;
}

/* 404 */

.file404 h2{
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 10px;
    padding: 0;
    color: #fff;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    background-color: #fff;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and ( min--moz-device-pixel-ratio: 2),
only screen and ( -o-min-device-pixel-ratio: 2/1),
only screen and ( min-device-pixel-ratio: 2),
only screen and ( min-resolution: 192dpi),
only screen and ( min-resolution: 2dppx) {
    .side-nav h2,
    .side-nav.class-open h2 {
        background-image: url(sprite-side@2x.png);
        background-size: 205px 650px;
    }
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and ( min--moz-device-pixel-ratio: 2),
only screen and ( -o-min-device-pixel-ratio: 2/1),
only screen and ( min-device-pixel-ratio: 2),
only screen and ( min-resolution: 192dpi),
only screen and ( min-resolution: 2dppx) {
    .cm h4 {
        background-image: url../img/common/ico-arrow-red@2x.png);
        background-size: 5px 10px;
    }
}

@media (min-width: 480px) {}

@media (min-width: 640px) {}

@media (min-width: 768px) {
    /* 共通 */
    h2 {
        font-size: 2.0rem;
    }
    h3 {
        font-size: 2.0rem;
        margin-bottom: 18px;
    }
    h4 {
        font-size: 1.6rem;
        padding: 2px 0 8px;
    }
    /* 商品カタログ */
    .product-detail .category-name {
        font-size: 2.0rem;
    }
    .product-detail .product-class {
        font-size: 1.6rem;
    }
    .product-detail .product h2 {
        font-size: 2.0rem;
        margin-bottom: 18px;
    }
    .product-detail .product h3 {
        font-size: 1.6rem;
        margin-bottom: 8px;
    }
    .product-detail .product-ex h3 {
        font-size: 1.4rem;
        margin-bottom: 2px;
    }
    .product-detail h3 {
        margin-bottom: 20px;
    }
    /* サイドメニュー */
    .side-nav h2 {
        font-size: 18px;
        font-weight: bold;
        padding: 14px 10px 10px;
        color: #fff;
        display: block;
        background-image: none;
    }
    /* 会社案内 */
    .company .main h4 {
        font-size: 1.6rem;
    }
    .news-releases h3 {
        text-align: center;
        background-image: none;
    }
    .news-releases h5 {
        font-size: 1.6rem;
    }
    /* cm */
    .cm h4 {
        padding: 2px 0 2px 14px;
        background-position: 2px 5px;
    }
    @media only screen and (-webkit-min-device-pixel-ratio: 2),
    only screen and ( min--moz-device-pixel-ratio: 2),
    only screen and ( -o-min-device-pixel-ratio: 2/1),
    only screen and ( min-device-pixel-ratio: 2),
    only screen and ( min-resolution: 192dpi),
    only screen and ( min-resolution: 2dppx) {
        .cm h4 {
            background-image: url../img/common/ico-arrow-red@2x.png);
            background-size: 5px 10px;
        }
    }
    
    /* consumer */
    .consumer-info h4{
    font-size: 1.6rem;
    }
}

@media (min-width: 974px) {}