/*::::::::reset::::::::*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent;
}
body {
    font-family: "Noto Sans Japanese", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
    line-height: 1.6;
    font-size: 14px;
    font-size: 1.4rem;
    background-color: #FFFFFF;
    color: #333333;
    -webkit-text-size-adjust: 100%;
}
.roboto {
    font-family: 'Roboto', sans-serif;
}
button, input, optgroup, select, textarea {
    font-family: inherit;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
nav ul, li {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
    color: #000000;
}
abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}
hr {
    margin-top: 10px;
    margin-bottom: 10px;
    border: 0;
    border-top: 1px solid #eee;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
input[type="text"], select {
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
img {
    max-width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    border: none;
}
a:hover {
    opacity: 0.8;
    transition: 0.3s;
}
.clear {
    clear: both;
    overflow: hidden;
}
.ec-layoutRole {
    width: 100%;
    transition: transform 0.3s;
    background: #fff;
    overflow: hidden;
}
.pc {
    display: none;
}
@media (min-width: 769px) {
    .pc {
        display: block;
    }
    .sp {
        display: none;
    }
}
/*::::::::reset end::::::::*/
/* カスタマイズ用CSS */
.wrap-h1-box {
    background-color: #000000;
    display: flex;
    padding: 10px;
}
.wrap-h1-box h2 {
    background: #ffffff;
    display: inline-block;
    font-size: 10px;
    padding: 8px;
    width: 84px;
    box-sizing: border-box;
}
.wrap-h1-box h1 {
    color: #FFFFFF;
    font-size: 14px;
    font-size: 1.4rem;
    max-width: 980px;
    margin: 0 auto;
    padding: 5px 5px;
    text-align: left;
    width: 100%;
    box-sizing: border-box;
}
.wrap-h1-box h1 span {
    padding-left: 50px;
    font-weight: bold;
}
.inner-header {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 10px 8px 0px;
    z-index: 999;
}
@media (min-width: 769px) {
    .inner-header {
        padding: 10px 0 0;
    }
}
.right-header {
    width: 64px;
    padding-right: 12px;
}
.can-br {
    display: block;
}
.ec-headerNaviRole {
    padding-top: 0;
}
.ec-headerNaviRole.box-pc .ec-headerRole__cart {
    position: absolute;
    top: 35px;
    right: 70px;
    width: 100%;
    text-align: right;
}
.ec-cartNaviNull.is-active {
    /* display: block; */
    /* width: 100%; */
    /* min-width: 300px; */
    right: -70px;
}
.ec-drawerRoleClose.is_active {
    right: 10px;
    left: inherit;
    top: 35px;
}
.ec-headerNavSP {
    display: block;
    border-radius: 50%;
    box-sizing: border-box;
    padding: 10px;
    width: 40px;
    height: 40px;
    font-size: 18px;
    text-align: center;
    color: black;
    background: white;
    position: fixed;
    top: 35px;
    right: 10px;
    z-index: 999999999;
    left: inherit;
}
@media (min-width: 1024px) {
    .right-header {
        min-width: 150px;
        width: auto;
    }
    .ec-cartNaviNull.is-active {
        right: 0;
    }
}
.wrap-h1-box h2 {
    display: none;
}
.wrap-h1-box {
    padding: 0px;
}
.right-header img {
    width: 100%;
}
.ttl-header-box {
    max-width: 510px;
    overflow: hidden;
}
.header-info {
    position: absolute;
    right: 0;
    background-color: #000000;
    text-align: center;
    color: #ffffff;
    min-width: 260px;
    top: -26px;
    padding-bottom: 8px;
}
.header-mail a {
    background-color: #ffffff;
    width: 90%;
    display: block;
    margin: 10px auto;
    border-radius: 50px;
    padding: 6px 6px 6px 30px;
    min-width: 200px;
    background: url(../img/bk-mail.svg) 29px center no-repeat, #ffffff;
    text-decoration: none;
    transition: 0.3s;
}
.header-tel {
    margin-bottom: 5px;
}
p.txt-open {
    font-size: 12px;
    text-align: center;
}
.ttl-header-uner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.ttl-header-uner h3 {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 18px;
}
p.box-black {
    background-color: #000000;
    color: #ffffff;
    padding: 2px 10px;
}
.ttl-header-box h2 {
    font-size: 20px;
    font-size: 2.0rem;
    margin-bottom: 8px;
}
@media (min-width: 769px) {
    .ttl-header-box h2 {
        font-size: 34px;
        font-size: 3.4rem;
    }
    .can-br {
        display: none;
    }
}
.header-f {
    display: flex;
}
.ec-headerNaviRole__nav {
    max-width: 520px;
}
.ec-headerNav__item a {
    background: rgb(2, 2, 123);
    background: -moz-linear-gradient(left, rgba(2, 2, 123, 1) 0%, rgba(0, 55, 206, 1) 100%);
    background: -webkit-linear-gradient(left, rgba(2, 2, 123, 1) 0%, rgba(0, 55, 206, 1) 100%);
    background: linear-gradient(to right, rgba(2, 2, 123, 1) 0%, rgba(0, 55, 206, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#02027b', endColorstr='#0037ce', GradientType=1);
    color: #ffffff;
    line-height: 35px;
    padding: 4px 0 8px;
    position: relative;
}
.ec-headerNav__item a::after {
    content: "";
    background: url(../img/arrow-right-wh.svg) no-repeat;
    position: absolute;
    right: 8px;
    width: 7px;
    height: 12px;
    top: 13px;
}
.ec-headerNav .ec-headerNav__item {
    margin-left: 0;
    display: inline-block;
    font-size: inherit;
    padding: 10px 5px;
}
@media (min-width: 1024px) {
    .ec-headerNav .ec-headerNav__itemLink {
        margin-right: 0;
        font-size: 14px;
        vertical-align: middle;
        color: #ffffff;
        font-weight: bold;
        padding: 0 10px;
        min-width: 160px;
        text-align: center;
    }
    .ec-headerRole__cart {
        min-width: 260px;
        position: absolute;
        right: 0;
        bottom: 10px;
        box-sizing: border-box;
    }
    .ec-cartNavi {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
        border-radius: 0;
        box-sizing: border-box;
        padding: 6px 17px;
        min-width: 140px;
        height: 35px;
        white-space: nowrap;
        cursor: pointer;
        background: #ffffff;
        border: 1px solid #e0e0e0;
    }
    .ec-categoryNaviRole {
        margin: 0 auto;
        padding-left: 0;
        padding-right: 0;
        box-sizing: border-box;
        font-size: 16px;
        line-height: 1.4;
        color: #000000;
        -webkit-text-size-adjust: 100%;
        width: 100%;
        max-width: 960px;
    }
    .ec-itemNav__nav {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        vertical-align: middle;
        margin-bottom: 10px;
    }
    .ec-itemNav__nav li a {
        text-align: center;
        border-bottom: none;
        font-weight: normal;
        color: #000000;
        line-height: 16px;
        padding: 6px 16px;
        min-width: 120px;
    }
    .ec-itemNav__nav li:last-child a {
        padding-right: 0;
    }
}
@media (min-width: 768px) {
    /*.ec-cartNaviWrap {*/
    /*    position: inherit;*/
    /*    max-width: 360px;*/
    /*    right: 0;*/
    /*}*/
    /*.ec-headerNaviRole {*/
    /*    padding-bottom: 0;*/
    /*}*/
    .ec-itemNav__nav li a {
        position: relative;
        display: inline-block;
        text-decoration: none;
    }
    .ec-itemNav__nav li a:hover, .ec-itemNav__nav li a:focus, .ec-itemNav__nav li a:active {
        background-color: transparent;
    }
    .ec-itemNav__nav li a::after {
        position: absolute;
        bottom: 2px;
        left: 0;
        content: '';
        width: 100%;
        height: 2px;
        background: #1A1C8C;
        opacity: 0;
        visibility: hidden;
        transition: .3s;
        z-index: 2;
    }
    .ec-itemNav__nav li a:hover::after {
        bottom: -1px;
        opacity: 1;
        visibility: visible;
    }
}
@media (min-width: 1024px) {
    .ec-headerNaviRole.box-pc {
        display: none;
    }
    .ec-itemNav__nav li + li {
        background: url(../img/navi-sl.svg) left center no-repeat;
        padding: 0 10px;
    }
    /*.ec-headerNaviRole {*/
    /*    padding-bottom: 40px;*/
    /*}*/
    /*.ec-cartNaviWrap {*/
    /*    position: relative;*/
    /*    max-width: inherit;*/
    /*    right: inherit;*/
    /*}*/
}
.fix-sns {
    position: fixed;
    z-index: 10;
    right: 15px;
    bottom: 15px;
}
ul.side-list-icon-sns li a img {
    pointer-events: all;
    margin-top: 15px;
    display: block;
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    transition: transform 0.2s ease-out;
}
ul.side-list-icon-sns li a:hover img {
    transform: translate(-4px, 0);
    opacity: 0.9;
}
ul.side-list-icon-sns li {
    margin-bottom: 15px;
}
/*スライダー*/
.ec-sliderRole {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
    position: relative;
    z-index: 0;
    max-height: 590px;
    margin-bottom: 30px;
}
.ec-sliderRole:before {
    z-index: 0;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.20);
    z-index: 1;
}
/*.main_visual .item.slick-slide {*/
/*    position: relative;*/
/*}*/
/*.ec-sliderRole img {*/
/*    max-width: 100%;*/
/*    max-height: 100%;*/
/*    height: 100vh;*/
/*    width: auto\9; !* ie8 *!*/
/*    margin: 0 auto;*/
/*}*/
main_visual.slick-slider {
    max-height: 300px;
    height: 300px;
}
.main_visual .slick-list {
    max-height: 300px;
    height: 300px;
}
.main_visual .slick-track {
    height: 300px;
}
.ec-sliderRole img {
    /*object-fit: cover;*/
    /*width: auto;*/
    /*height: 100%;*/
    /*margin: 0 auto;*/
    /*text-align: center;*/
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.34);
}
@media (min-width: 769px) {
    main_visual.slick-slider {
        max-height: 590px;
        height: 590px;
    }
    .main_visual .slick-list {
        max-height: 590px;
        height: 590px;
    }
    .main_visual .slick-track {
        height: 590px;
    }
    .ec-sliderRole img {
        object-fit: cover;
        width: 100%;
        height: calc(100vh - 10%);
        margin: 0 auto;
        text-align: center;
    }
}
/*.ec-sliderRole video {*/
/*    object-fit: contain;*/
/*    width: auto;*/
/*    height: 100%;*/
/*    margin: 0 auto 0;*/
/*    text-align: center;*/
/*}*/
.ec-sliderRole video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.34);
}
@media (min-width: 769px) {
    .ec-sliderRole img {
        object-fit: cover;
        width: 100%;
        height: calc(100vh - 55%);
        margin: 0 auto;
        text-align: center;
    }
}
@media (min-width: 1025px) {
    .ec-sliderRole video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transform: scale(1.34);
    }
}
.ec-sliderRole img.coverPosition {
    object-position: 100% 50%;
}
.slider-on {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    max-width: 960px;
    width: 100%;
    z-index: 3;
}
.slider-on h3 {
    font-size: 30px;
    font-size: 3.0rem;
    font-weight: bold;
    margin-bottom: 10px;
    color: #ffffff;
}
.slider-on h2 {
    font-size: 32px;
    font-size: 3.2rem;
    color: #ffffff;
    margin-top: 10px;
}
.ec-slide-role {
    max-width: 880px;
    width: 100%;
    margin: 70px auto 100px;
    overflow: hidden;
}
.ec-layoutRole__main .ec-slide-role {
    max-width: 880px;
    width: 100%;
    margin: 70px auto 100px;
    overflow: inherit;
}
.ec-layoutRole__main .item {
    padding: 0 10px;
}
button {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.slide-arrow {
    position: absolute;
    top: 50%;
    margin-top: -15px;
}
.prev-arrow {
    left: -40px;
    width: 16px;
    height: 26px;
    z-index: 10;
}
.next-arrow {
    right: -40px;
    width: 16px;
    height: 26px;
    z-index: 10;
}
.ec-slide-role .slick-slide img {
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 280px;
}
.ec-headerNaviRole__search {
    max-width: 1000px;
    margin: 60px auto;
    width: 90%;
}
.ec-headerSearch .ec-headerSearch__category .ec-select select {
    max-width: inherit;
    height: 36px;
}
@media (min-width: 769px) {
    .ec-headerNaviRole__search {
        width: 100%;
    }
}
@media (min-width: 768px) {
    .slider-on h2 {
        font-size: 70px;
        font-size: 7.0rem;
        color: #ffffff;
    }
}
.ec-headerSearch .ec-headerSearch__category .ec-select select {
    color: #222222;
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
    position: relative;
    border: 0;
    background: #ffffff;
    color: #666666;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    border: 1px solid #cccccc;
    margin-bottom: 8px;
}
.ec-headerSearch .ec-headerSearch__keyword {
    position: relative;
    color: #525263;
    border: 1px solid #ccc;
    background-color: #ffffff;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}
@media (min-width: 769px) {
    .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
        max-width: 320px;
    }
}
.ec-headerSearch .ec-headerSearch__keyword input[type="search"] {
    width: 100%;
    height: 36px;
    font-size: 19.2px;
    font-size: 1.4rem;
    border: 0 none;
    padding: 0;
    box-shadow: none;
    background: none;
    box-sizing: border-box;
    margin-bottom: 0;
}
.ec-headerSearch .ec-headerSearch__keywordBtn {
    border: none;
    background: none;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-55%);
    display: block;
    white-space: nowrap;
    z-index: 1;
    background-color: #02027B;
    height: 38px;
    bottom: 0;
    box-sizing: border-box;
    top: 20px;
    color: #ffffff;
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search:before {
    position: absolute;
    top: 1.0em;
    right: 1.0em;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #222;
    pointer-events: none;
}
.ec-headerSearch .ec-headerSearch__keyword .ec-icon {
    width: inherit;
    height: inherit;
    padding: 10px 20px;
}
@media (min-width: 769px) {
    .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
        border-top-right-radius: inherit;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }
    .ec-headerSearch .ec-headerSearch__keyword {
        float: right;
        width: 67%;
        border-bottom-left-radius: inherit;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        padding-left: 15px;
        background-color: #fff;
    }
    .ec-headerSearch .ec-headerSearch__category {
        float: left;
        width: 32%;
        max-width: 320px;
    }
}
body#page_homepage .ec-layoutRole__header, body#page_help_about .ec-layoutRole__header {
    margin-bottom: 0;
}
.ec-layoutRole__header {
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
    margin-bottom: 30px;
}
.ec-pageHeader h1 {
    margin: 0 0 8px;
    border-bottom: none;
    border-top: none;
    padding: 8px 10px 9px;
    font-size: 16px;
    font-weight: bold;
}
@media (min-width: 769px) {
    .ec-layoutRole__header {
        margin-bottom: 60px;
    }
    .ec-pageHeader h1 {
        border-top: none;
        border-bottom: none;
        margin: 10px 24px 48px;
        padding: 8px;
        font-size: 24px;
        font-weight: bold;
    }
}
/*新着情報*/
.ec-w100-role {
    overflow: hidden;
}
.ec-newsRole {
    position: relative;
    background: #E7EDF2;
    z-index: 1;
    color: #ffffff;
    min-height: 460px;
    background: url(../img/bk-news.svg) right top no-repeat, linear-gradient(90deg, #E7EDF2 0%, #E7EDF2 100%);
    background-size: cover;
}
.ec-newsRole .ttl-box-n {
    position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 35px;
    margin-bottom: 35px;
    color: #000000;
}
.ttl-box-n {
    position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    /* height: 65px; */
    margin-bottom: 15px;
    color: #000000;
}
.ttl-box-n h2 {
    position: absolute;
    bottom: 0;
    font-weight: bold;
    font-size: 32px;
    font-size: 3.2rem;
}
.ttl-box-n h2:before {
    background-color: #02027B;
    content: '';
    position: absolute;
    left: 0px;
    bottom: -12px;
    display: inline-block;
    width: 56px;
    height: 4px;
}
.ec-newsRole .ec-newsRole__newsTitle {
    color: #3B4043;
}
.content-news {
    display: none;
}
@media (min-width: 769px) {
    .content-news {
        display: block;
    }
    .ec-newsRole {
        min-height: 460px;
        background: url(../img/bk-news.svg) center top no-repeat, linear-gradient(90deg, #E7EDF2 0%, #E7EDF2 55%, #ffffff 30%, #ffffff 100%);
        background-size: contain;
    }
}
.inner {
    max-width: 960px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.box-flex {
    width: 100%;
}
@media (min-width: 769px) {
    .box-flex {
        width: 70%;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }
    .ec-newsRole .ec-newsRole__news {
        border: none;
        padding: 20px 0;
        width: 80%;
    }
    .content-news {
        position: absolute;
        right: 0;
        top: 60px;
        z-index: 3;
    }
}
@media (min-width: 970px) {
    .inner {
        width: 100%;
    }
    .content-news {
        position: absolute;
        right: 0;
        top: inherit;
        z-index: 3;
        bottom: 0;
        width: 42%;
    }
    .ec-newsRole {
        background-size: cover;
    }
}
@media (min-width: 1199px) {
    .ec-newsRole {
        background-size: contain;
    }
}
/*商品を探す*/
.ttl-pt {
    position: relative;
    background-color: #000000;
    color: #fff;
    overflow: hidden;
    padding: 10px;
    margin-bottom: 15px;
    font-size: 18px;
}
.ttl-pt:before {
    background-color: rgba(255, 255, 255, 1);
    content: '';
    display: block;
    transform: rotate(120deg);
    position: absolute;
    bottom: -65px;
    right: -200px;
    width: 200px;
    height: 200px;
}
.ttl-box h3 {
    font-size: 30px;
    font-size: 3rem;
    color: #E7EDF2;
    position: absolute;
}
.contents-product .ec-shelfGrid .ec-shelfGrid__item {
    width: 50%;
    padding: 0 7px;
    font-size: 14px;
}
@media (min-width: 640px) {
    .contents-product .ec-shelfGrid .ec-shelfGrid__item {
        width: 33%;
        padding: 0 7px;
    }
}
@media (min-width: 769px) {
    .ttl-box h3 {
        font-size: 70px;
        font-size: 7.0rem;
        color: #E7EDF2;
        position: absolute;
    }
    .contents-product .ec-shelfGrid .ec-shelfGrid__item {
        width: 20%;
        padding: 0 7px;
    }
}
.ttl-box {
    position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 65px;
    margin-bottom: 45px;
}
.ttl-box h2 {
    position: absolute;
    bottom: 0;
    font-weight: bold;
    font-size: 28px;
    font-size: 2.8rem;
    color: #333;
}
.ttl-box h2:before {
    background-color: #02027B;
    content: '';
    position: absolute;
    left: 0px;
    bottom: -12px;
    display: inline-block;
    width: 56px;
    height: 4px;
}
.mtb10 {
    margin-top: 10px;
}
.mtb15 {
    margin-top: 15px;
}
.mgb10 {
    margin-bottom: 10px;
}
.mgb40 {
    margin-bottom: 40px;
}
.mgb60 {
    margin-bottom: 60px;
}
.mgb100 {
    margin-bottom: 60px;
}
@media (min-width: 769px) {
    .mgb100 {
        margin-bottom: 100px;
    }
}
.ec-shelfRole {
    max-width: 990px;
}
/*新着商品・おすすめ商品*/
.top-product a.ec-blockBtn--action.add-cart {
    margin-top: 15px;
    background-color: #E7EDF2;
    border: none;
    border-radius: 50px;
    color: #02027B;
    font-size: 16px;
    position: relative;
    padding: 0 16px 0 0;
}
.top-product button.ec-blockBtn--action {
    margin-top: 15px;
    background-color: #E7EDF2;
    border: none;
    border-radius: 50px;
    color: #02027B;
    font-size: 16px;
    position: relative;
    padding: 0 16px 0 0;
}
body#page_homepage .ec-blockBtn--action {
    line-height: 46px;
    height: 46px;
}

/*button.ec-blockBtn--action.add-cart::after {*/
/*    content: "";*/
/*    background: url(../img/bk-bnr.svg) right center no-repeat;*/
/*}*/
button.ec-blockBtn--action.add-cart::after {
    background: url(../img/icon-arrow-blue.svg) no-repeat;
    width: 10px;
    height: 15px;
    position: absolute;
    top: 22px;
    right: 15px;
    content: "";
}
.top-product a.ec-blockBtn--action.add-cart::after {
    background: url(../img/icon-arrow-blue.svg) no-repeat;
    width: 10px;
    height: 15px;
    position: absolute;
    top: 16px;
    right: 15px;
    content: "";
}
.ec-newsRole .ec-newsRole__newsCloseBtn {
    background: none;
}
.ec-inlineBtn--top {
    color: #02027B;
    border: 2px solid #02027B;
    width: 100px;
    background: url(../img/img-allow-n.svg) 66px center no-repeat, #E7EDF2;
    padding: 10px 10px 10px 0;
    transition: 0.3s;
    margin-top: 30px;
}
.ec-newsRole__newsItem.is_active .ec-newsRole__newsDescription {
    margin: 5px 0 15px;
    color: #333;
}
/*カスタムブログ*/
.wrap-bnr {
    background: #E7EDF2;
    z-index: 1;
    color: #ffffff;
    max-height: 460px;
    background-size: contain;
    overflow: hidden;
    padding: 63px 0;
}
@media (min-width: 769px) {
    .wrap-bnr {
        background: url(../img/bk-bnr.svg) center top no-repeat, linear-gradient(90deg, #ffffff 0%, #FFFFFF 40%, #E7EDF2 40%, #E7EDF2 100%);
    }
}
.box-bnr {}
/*Instagram*/
.ttl-center {
    text-align: center;
    margin: 0 auto 30px;
}
.ttl-center h2 {
    font-size: 28px;
    font-size: 2.8rem;
}
.ttl-center img {
    width: auto;
}
.ec-categoryRole.inner {
    background-color: transparent;
    margin: 0 auto 100px;
    padding: 0;
}
ul.list-instagram {
    max-width: 960px;
    width: 100%;
    margin: 0 auto 60px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
ul.list-instagram li {
    margin-bottom: 15px;
    width: 48%;
}
@media (min-width: 769px) {
    ul.list-instagram li {
        width: auto;
    }
}
.ct-instagram {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #e6e6e6;
    display: block;
    position: relative;
    overflow: hidden;
    padding-top: 100%;
}
.ct-instagram img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: contain;
    background-color: #efefef;
    border: 1px solid #efefef;
}
.ec-categoryRole .ec-categoryRole__listItem {
    padding: 0 15px;
}
.ec-categoryRole.wrap-instagram .ec-categoryRole__listItem:not(:last-of-type) {
    margin-right: 0;
}
@media (min-width: 768px) {
    .ec-categoryRole .ec-categoryRole__listItem {
        width: calc(100% / 4);
    }
}
.btn-more {
    display: block;
    text-align: center;
}
.btn-more a {
    display: block;
    padding: 9px 20px 9px 0;
    margin: 0 auto;
    color: #02027B;
    border: 2px solid #02027B;
    width: 115px;
    background: url(../img/img-allow-n.svg) 72px center no-repeat, #FFFFFF;
    transition: 0.3s;
}
ul.list-icon-sns {
    max-width: 290px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
/*お問い合わせバナー*/
.bnr-contact {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
ul.list-official-site {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
ul.list-official-site li {
    margin-bottom: 30px;
    max-width: 470px;
    width: 470px;
    height: 255px;
}
ul.list-official-site li h3 {
    font-size: 48px;
    font-size: 4.8rem;
    font-weight: bold;
    position: absolute;
    top: 15px;
    width: 100%;
    left: 15px;
}
li.bnr-official-01 a {
    background: url(../img/bnr-official-01.jpg) center bottom no-repeat;
    background-size: cover;
    color: #ffffff;
    /* padding: 60px 0; */
    display: block;
    position: relative;
    /* width: 100%; */
    width: 100%;
    height: 255px;
}
li.bnr-official-02 a {
    background: url(../img/bnr-official-02.jpg) center bottom no-repeat;
    background-size: cover;
    color: #ffffff;
    /* padding: 60px 0; */
    display: block;
    position: relative;
    /* width: 100%; */
    width: 100%;
    height: 255px;
}
ul.list-official-site li h3 span {
    display: block;
    font-size: 20px;
    font-weight: bold;
    line-height: 2.8rem;
    padding: 0 15px 0 0;
}
.txt-obtn {
    position: absolute;
    bottom: 1px;
    left: 15px;
    width: 280px;
}
.txt-obtn p {
    background: url(../img/icon-arrow-bk.svg) 250px center no-repeat #ffffff;
    font-size: 28px;
    font-size: 2.8rem;
    color: #000000;
    font-weight: bold;
    padding: 6px 15px;
}
/*::::::::定休日カレンダー::::::::*/
.wrap-cal {
    display: flex;
    justify-content: center;
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
    flex-wrap: wrap;
}
.apg_sc_table {
    border-collapse: collapse;
    border-spacing: 0;
    line-height: 1.5;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    float: left;
}
.apg_sc_table th, .apg_sc_table td {
    border: 1px solid #DFDFDF;
}
.apg_sc_table thead th {
    padding: 10px;
    font-weight: bold;
    vertical-align: top;
    color: #fff;
    background: #efefef;
}
.apg_sc_table tbody th {
    background: #333333;
    line-height: 2.0em;
    text-align: center;
    color: #ffffff;
    font-weight: normal;
    font-size: 14px;
}
.apg_sc_table td {
    padding: 6px 6px;
    vertical-align: top;
    text-align: center;
    background-color: #fff;
    font-size: 14px;
}
/* ★休日のカラーはここで設定しています。*/
.apg_sc_table .apg_sc_holiday {
    background: #F9626B !important;
}
.apg_sc_table .apg_sc_saturday {
    /*background: #BDE2E8;*/
}
.apg_sc_table .apg_sc_sunday, .apg_sc_table .apg_sc_sunday {
    /*background: #ECC6C7;*/
}
@media only screen and (max-width: 767px) {
    .apg_sc_table {
        float: none;
        margin-top: 20px;
        margin-right: auto;
    }
}
.list-cal {
    max-width: 710px;
    margin-left: auto;
    margin-right: auto;
    background-color: #F6F6F6;
    padding: 15px;
}
@media only screen and (min-width: 769px) {
    .list-cal {
        padding: 30px 45px;
    }
}
.list-cal ul {
    list-style: disc;
}
.list-cal ul li {
    list-style: disc;
    padding-left: 15px;
    list-style-position: inside;
}
/*公式サイトバナー*/
.ec-footerRole {
    background: url(../img/bk-footer.jpg) center bottom no-repeat;
    background-size: cover;
    color: #ffffff;
    padding: 60px 0;
}
/*フッター*/
.ec-footerRole {
    color: #FFFFFF;
}
h3.ttl-footer {
    font-size: 18px;
    font-size: 1.8rem;
    border-bottom: 1px solid #ffffff;
    padding-bottom: 8px;
    margin-bottom: 15px;
}
.ttl-footer a {
    color: #ffffff;
}
.wrap-footer-list {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}
.wrap-footer-list::after {
    display: block;
    content: "";
    width: 33.33333%;
}
.f-list {
    padding: 0 15px;
    width: 33.33333%;
}
.f-list::after {
    display: block;
    content:"";
    width: 33.33333%;
}

/*ul.list-f-01, ul.list-f-02, ul.list-f-03 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  padding: 0;
  margin-bottom: 40px;
}*/
ul.list-f-01 li a, ul.list-f-02 li a, ul.list-f-03 li a {
    color: #ffffff;
}
ul.list-f-01 li {
    /*width: 30%;*/
    text-align: left;
    margin-bottom: 0;
}
ul.list-f-02 li, ul.list-f-03 li {
    width: 50%;
    text-align: left;
    margin-bottom: 5px;
}
ul.list-f-01 li a::before, ul.list-f-02 li a::before, ul.list-f-03 li a::before {
    content: "－";
    padding-right: 5px;
    font-size: 16px;
    font-size: 1.6rem;
}
.footer-bottom {
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
    color: #ffffff;
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
}
.footer-bottom a {
    color: #ffffff;
}
.footer-inner-link {
    max-width: 200px;
    width: 20%;
}
ul.ec-footerNavi {
    width: 30%;
    text-align: left;
}
ul.ec-footerNavi li {
    margin-bottom: 10px;
}
.ec-footerNavi a::before {
    content: "－";
    padding-right: 5px;
    font-size: 16px;
    font-size: 1.6rem;
}
ul.list-f-link li {
    margin-bottom: 10px;
}
ul.list-f-link li a::before {
    content: "▶";
    padding-right: 5px;
    font-size: 16px;
    font-size: 1.6rem;
}
ul.list-lo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
}
ul.list-lo li {
    width: 48%;
    text-align: center;
    margin: 0 0 15px;
}
ul.list-lo li a {
    border: 1px solid #ffffff;
    width: 100%;
    display: block;
    padding: 18px 20px 18px 0px;
    position: relative;
    transition: 0.3s;
}
ul.list-lo li a:hover {
    background-color: rgba(255, 255, 255, 0.2);
    text-decoration: none;
}
ul.list-lo li a::after {
    background: url(../img/icon-arrow-wh.svg) no-repeat;
    width: 10px;
    height: 15px;
    position: absolute;
    top: 23px;
    right: 45px;
    content: "";
}
.footer-info {}
.footer-contents {
    width: 50%;
}
.copyright {
    font-size: 12px;
}
.link-blog a {
    display: block;
    border: 1px solid #ffffff;
    text-align: center;
    padding: 18px 20px 18px 0px;
    position: relative;
    transition: 0.3s;
}
.link-blog a:hover {
    background-color: rgba(255, 255, 255, 0.2);
    text-decoration: none;
}
.link-blog a::after {
    background: url(../img/icon-arrow-wh.svg) no-repeat;
    width: 10px;
    height: 15px;
    position: absolute;
    top: 23px;
    right: 45px;
    content: "";
}
.link-blog {
    margin-bottom: 30px;
}
.footer-sns {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
ul.list-f-sns {
    display: flex;
    justify-content: flex-end;
    width: 70%;
}
.ttl-f {
    width: 30%;
}
.ttl-f h3 {
    font-size: 16px;
    letter-spacing: 0.10em;
}
ul.list-f-sns li + li {
    padding-left: 45px;
}
.footer-info-bottom {
    text-align: center;
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px solid #cccc;
    padding-top: 25px;
}
.footer-logo {
    margin-bottom: 25px;
}
.footer-otherlink {
    text-align: center;
}
a.txt-tel {
    margin-bottom: 15px;
    display: block;
}
span.mini-txt {
    display: block;
    font-size: 13px;
}
p.txt-footer {
    font-size: 16px;
    font-size: 1.6rem;
}
.footer-bottom-sp {
    width: 90%;
    margin: 0 auto;
    max-width: 980px;
}
.footer-bottom-sp a {
    color: #ffffff;
}
.footer-bottom-sp .footer-contents {
    width: 100%;
}
.footer-bottom-sp .footer-inner-link, .footer-bottom-sp ul.ec-footerNavi {
    width: 70%;
    margin: 15px auto;
    max-width: inherit;
}
ul.list-lo-sp li a {
    border: 1px solid #ffffff;
    width: 100%;
    display: block;
    padding: 10px;
    text-align: center;
}
ul.list-lo-sp li {
    margin-bottom: 15px;
}
.footer-sns-sp {
    display: block;
    text-align: center;
}
.ttl-f-sp {
    width: 90%;
    margin: 0 auto 30px;
    text-align: center;
}
ul.list-f-sns-sp {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-wrap: wrap;
}
ul.list-f-sns-sp li {
    width: 30%;
    margin-bottom: 30px;
}
ul.list-clink li {
    margin-bottom: 10px;
}
@media (min-width: 769px) {
    .ec-footer-wh .inner {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        padding: 30px 0 15px;
    }
    .footer-info-bottom {
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        border-bottom: none;
        padding: 0;
    }
    .fotter-tel {
        padding-left: 15px;
    }
    .footer-otherlink {
        text-align: right;
    }

    ul.list-clink {
        margin-bottom: 30px;
    }
    .footer-bottom-sp {
        display: none;
    }
}
.pc-none {
    display: block;
}
.sp-none {
    display: none;
}
.sp-i-none {
    display: none;
}
.sp-f-none {
    display: none;
}
@media (min-width: 769px) {
    .sp-none {
        display: block;
    }
    .sp-i-none {
        display: inline-block;
    }
    .sp-f-none {
        display: flex;
    }
    .pc-none {
        display: none;
    }
}
/*-------------------
スマホナビ
---------------------*/
.ec-drawerRole .ec-headerLinkArea ul li a {
    color: #ffffff;
    border-bottom: 1px solid #fff;
    display: block;
    padding: 8px 15px;
    font-size: 14px;
}
.ec-drawerRole {
    overflow-y: scroll;
    background: black;
    width: 300px;
    height: 100vh;
    transform: translateX(-300px);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    transition: z-index 0ms 1ms;
}
.ec-drawerRole .ec-headerLinkArea ul {
    margin-top: 80px;
    border-top: 1px solid #fff;
}
.ec-drawerRoleClose.is_active {
    right: 10px;
    left: inherit;
    top: 35px;
    z-index: 99999999999;
}
.ec-drawerRole.is_active .ec-headerNav .ec-headerNav__itemLink {
    display: none;
    margin-right: 5px;
    font-size: 14px;
    vertical-align: middle;
    color: #ffffff;
    display: block;
}
.ec-drawerRole.is_active .ec-headerNav__item {
    display: block;
    max-width: 230px;
    margin: 0 auto;
}
.ec-drawerRole.is_active .ec-headerNav__item a {
    background: rgb(2, 2, 123);
    background: -moz-linear-gradient(left, rgba(2, 2, 123, 1) 0%, rgba(0, 55, 206, 1) 100%);
    background: -webkit-linear-gradient(left, rgba(2, 2, 123, 1) 0%, rgba(0, 55, 206, 1) 100%);
    background: linear-gradient(to right, rgba(2, 2, 123, 1) 0%, rgba(0, 55, 206, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#02027b', endColorstr='#0037ce', GradientType=1);
    color: #ffffff;
    line-height: 35px;
    padding: 4px 0 8px;
    position: relative;
}
.ec-drawerRole.is_active .ec-headerNav-sp .ec-headerNav__item a {
    width: 230px;
    display: block;
    margin-bottom: 15px;
    padding: 3px 15px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}
.ec-headerNav-sp {
    background-color: #ffffff;
    padding: 30px 0;
}
.sp-info {
    background-color: #ffffff;
    text-align: center;
    color: #020B7B;
    font-size: 14px;
    padding: 0 0 30px;
}
ul.list-sp-info {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 30px auto;
}
ul.list-sp-info li {
    padding: 0 10px;
}
.sp-sns {
    background-color: #ffffff;
}
ul.sp-list-icon-sns {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 230px;
    margin: 0 auto;
    padding-bottom: 60px;
}
ul.sp-list-icon-sns li {
    padding: 0 10px;
}
/*-------------------
商品一覧ページ
---------------------*/
.ec-headerNaviRole__search {
    max-width: 960px;
    margin: 30px auto;
    width: 90%;
    box-sizing: border-box;
}
.ec-searchnavRole {
    max-width: 980px;
}
body#page_product_list .ec-blockBtn--action {
    border: 1px solid #ffffff;
    width: 100%;
    display: block;
    padding: 0 20px 20px 0px;
    position: relative;
    transition: 0.3s;
    border-radius: 50px;
    background-color: #9F2B34;
    line-height: 40px;
    height: 40px;
}
.ec-blockBtn--action {
    border: 1px solid #ffffff;
    width: 100%;
    display: block;
    padding: 0 20px;
    position: relative;
    transition: 0.3s;
    border-radius: 50px;
    background-color: #9F2B34;
    line-height: 56px;
    height: 56px;
}
.product_page button.ec-blockBtn--action.add-cart::after {
    background: url(../img/icon-arrow-wh.svg) no-repeat;
    width: 8px;
    height: 12px;
    position: absolute;
    top: 14px;
    right: 12px;
    content: "";
    background-size: contain;
}
body#page_product_detail .ec-blockBtn--action {
    border: 1px solid #ffffff;
    width: 100%;
    display: block;
    padding: 0 20px;
    position: relative;
    transition: 0.3s;
    border-radius: 50px;
    background-color: #9F2B34;
    line-height: 56px;
    height: 55px;
    margin-top: 20px;
}
body#page_product_detail button.ec-blockBtn--action.add-cart::after {
    background: url(../img/icon-arrow-wh.svg) no-repeat;
    width: 10px;
    height: 15px;
    position: absolute;
    top: 19px;
    right: 12px;
    content: "";
    background-size: contain;
}
ol.ec-topicpath {
    color: #222;
}
.wrap-relative {
    background-color: #E7EDF2;
    padding: 20px 20px 10px;
    margin-bottom: 20px;
}
@media (min-width: 768px) {
    .wrap-relative {
        margin-bottom: 0;
    }
}
.wrap-relative li.ec-shelfGrid__item a {
    background-color: #fff;
    padding: 5px 20px 5px 10px;
    font-size: 13px;
    word-break: break-all;
    height: 100%;
    display: flex;
    align-items: center;
    border-radius: 5px;
    position: relative;
}
.wrap-relative li.ec-shelfGrid__item a::after {
    background: url(../img/icon-arrow-blue.svg) no-repeat;
    width: 7px;
    height: 12px;
    position: absolute;
    top: 8px;
    right: 7px;
    content: "";
    background-size: contain;
}
.wrap-relative .ec-shelfGrid .ec-shelfGrid__item {
    margin-bottom: 10px;
}
.ec-pageCategoryList {
    display: none !important;
}
.ec-productRole__actions .ec-select select {
    width: 100%;
    font-size: 12px;
}
.ec-numberInput {
    font-size: 12px;
}
.ec-numberInput input[type='number'] {
    display: inline-block;
    width: auto;
    max-width: 100px;
    text-align: right;
    font-size: 12px;
    height: 30px;
}
p.price02-default {
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 10px;
    margin-top: 10px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    word-break: keep-all;
}
p.price02-default span.mini-txt {
    font-weight: normal;
    font-size: 14px;
}
.price-box {
    display: flex;
    align-items: baseline;
}
p.ec-shelfGrid__item-image.product-all {
    position: relative;
    height: 150px;
    overflow: hidden;
}
p.ec-shelfGrid__item-image.product-all img {
    position: absolute;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    height: auto;
    width: auto;
}
p.name-product {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    min-height: 50px;
    font-size: 14px;
}
.ec-shelfGrid .ec-shelfGrid__item-image.product-all {
    height: 150px;
}
@media (min-width: 768px) {
    .ec-shelfGrid .ec-shelfGrid__item-image.product-all {
        height: 220px;
    }
    p.ec-shelfGrid__item-image.product-all {
        position: relative;
        height: 220px;
    }
}
.ec-sameCategoryProductRole__listItem a:hover, .ec-sameCategoryProductRole__listItem a:hover img {
    text-decoration: none;
    opacity: 0.8;
    transition: 0.3s;
}
@media (min-width: 768px) {
    .ec-shelfGrid .ec-shelfGrid__item {
        padding: 0 16px;
        width: 25%;
    }
}
.ec-sameCategoryProductRole {
    padding: 30px 0 30px;
}
.ec-sameCategoryProductItemRole__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.ec-sameCategoryProductRole__listItem {
    margin-bottom: 4%;
    width: 48%;
    height: auto;
}
/*.ec-sameCategoryProductRole__listItem:nth-child(odd) {*/
/*    margin-right: 4%; }*/
.ec-sameCategoryProductRole__listItemTitle {
    margin: 8px 0;
    font-size: 14px;
    font-weight: normal;
    color: black;
}
.ec-sameCategoryProductItemRole__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}
.ec-sameCategoryProductRole__listItem {
    margin-bottom: 15px;
    width: calc(100% / 2);
    padding: 5px;
}
@media (min-width: 768px) {
    .ec-sameCategoryProductRole__listItem {
        margin-bottom: 15px;
        width: calc(100% / 4);
        padding: 0 15px;
    }
}
.ec-sameCategoryProductRole p.price02-default {
    font-size: 16px;
}
.ec-select label {
    font-size: 14px;
    font-weight: normal;
}
/*-------------------
商品詳細ページ
---------------------*/
.mgt60 {
    margin-top: 60px;
}
.ec-productRole .ec-productRole__title .ec-headingTitle {
    font-size: 28px;
    font-size: 2.8rem;
    color: #02027B;
    border-bottom: 1px solid #707070;
    padding-bottom: 10px;
    font-weight: bold;
}
.ec-productRole .ec-productRole__tags {
    margin-top: 0;
    padding: 0;
    padding-bottom: 16px;
    border-bottom: none;
}
.ec-productRole {
    max-width: 990px;
    margin-bottom: 50px;
    border-bottom: 1px solid #ADBAC3;
    padding-bottom: 50px;
}
body#page_product_detail .ec-productRole {
    margin-bottom: 0;
}
body#page_product_detail .ec-sliderItemRole {
    padding-right: 0;
    padding-left: 0;
}
@media (min-width: 980px) {
    .ec-sliderItemRole {
        padding-left: 0;
        padding-right: 20px;
    }
}
@media (min-width: 768px) {

    body#page_product_detail .ec-grid2 {
        display: flex;
    }
}
.ec-productRole .ec-productRole__code {
    padding: 14px 0;
    border-bottom: 1px solid #E0E0E0;
}
.ec-productRole .ec-productRole__category {
    padding: 14px 0;
    border-bottom: 1px solid #e0e0e0;
}
.ec-productRole .ec-productRole__category a {
    color: #222222;
}
.ec-productRole .ec-productRole__category li::before {
    content: "■";
}
.ec-productRole .ec-productRole__price {
    padding: 14px 0 0;
    border-bottom: none;
    color: #222222;
    font-size: 28px;
}
.ec-productRole .ec-productRole__code {
    padding: 0 0 14px;
    border-bottom: 1px solid #E0E0E0;
    color: #222;
}
.ec-productRole .ec-productRole__code span {
    font-weight: bold;
}
.ec-productRole .ec-productRole__actions .ec-select select {
    min-width: 280px;
    /* max-width: 350px; */
    width: 100%;
}
.ec-productRole .ec-productRole__btn {
    width: 100%;
    margin-bottom: 16px;
    min-width: 280px;
}
button#favorite {
    background-color: #02027B;
    border: 1px solid #02027B;
    border-radius: 50px;
    position: relative;
}
button#favorite::after {
    background: url(../img/icon-arrow-wh.svg) no-repeat;
    width: 10px;
    height: 15px;
    position: absolute;
    top: 20px;
    right: 12px;
    content: "";
}
body#page_product_detail .ec-productRole .ec-sliderItemRole img {
    max-height: 500px;
    width: auto;
    margin: 0 auto;
}
body#page_product_detail .ec-sliderItemRole .slideThumb {
    width: 25%;
    text-align: center;
    padding: 0 8px;
    position: relative;
    min-height: 90px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
body#page_product_detail .ec-sliderItemRole .item_nav {
    margin: 0 -5px auto;
}
body#page_product_detail .ec-sliderItemRole .slideThumb img {
    max-height: 90px;
    margin: 0 auto;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    margin: auto;
    padding: 0 5px;
}
body#page_product_detail .ec-sliderItemRole .slick-track {
    display: flex;
}
body#page_product_detail .ec-sliderItemRole .slick-track.slick-track .slick-slide {
    display: flex;
    height: auto;
    align-items: center;
    justify-content: center;
}
.plg-nlab_product-image-text {
    display: block;
    min-height: 76px;
    background: #E7EDF2!important;
    margin: 5px 0;
    padding: 15px!important;
    word-wrap: break-word;
    width: 100%;
    color: #333;
    font-size: 14px;
}
.ec-detail-select label {
    font-size: 12px;
}
.wrap-handling-files {
    margin-top: 15px;
}
.ec-numberInput span {
    margin-right: 10px;
}
.wrap-handling-files .wrap-handling-file {
    margin-bottom: 5px;
}
/*::::::::よくある質問::::::::*/
.faq_category {
    margin-bottom: 50px;
    margin-top: 50px;
}
.faq_category .faq_category_list a {
    background: #E7EDF2;
    transition: all 0.3s ease;
    border-color: transparent;
    display: block;
    color: #02027B;
    text-decoration: none;
    text-align: center;
    min-width: 120px;
    padding: 18px 10px 25px;
    margin-bottom: 15px;
    font-size: 18px;
    max-width: 310px;
    width: 100%;
    position: relative;
}
.faq_category_list a::after {
    content: "";
    background: url(../img/icon-under-blue.svg) no-repeat;
    position: absolute;
    bottom: 10px;
    left: 50%;
    right: 50%;
    width: 15px;
    height: 9px;
}
.faq_category .faq_category_list:last-child a {
    margin-right: 0;
}
.faq_category .faq_category_list a:hover {
    transition: all 0.3s ease;
    opacity: 0.5;
}
#faq_wrap .qa_list a {
    color: #FFF;
    text-decoration: underline;
    text-decoration-color: #ffffff;
    padding: 0 5px;
}
#faq_wrap .qa_list a:hover {
    text-decoration-color: #f18700;
    transition: 0.3s;
}
ul.list-answer li {
    list-style: disc;
    list-style-position: outside;
    margin-bottom: 5px;
}
ul.list-answer {
    padding-left: 18px;
    margin: 10px auto;
}
@media only screen and (min-width: 768px) {
    .faq_category {
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }
    .faq_category .faq_category_list a {
        margin-right: 20px;
        margin-bottom: 0;
    }
    .faq_category li {
        width: 33.333333%;
    }
}
.question {
    border-bottom: 1px solid #fff;
    position: relative;
    padding: 25px 50px 20px 85px;
}
.question:before {
    content: "";
    background: url(../img/ico-question.svg) no-repeat;
    position: absolute;
    top: 50%;
    left: 20px;
    width: 41px;
    height: 41px;
    margin-top: -18px;
}
.question:after {
    content: "";
    background: url(../img/ico-arrow.svg) no-repeat;
    position: absolute;
    top: 50%;
    right: 20px;
    width: 17px;
    height: 10px;
    margin-top: -4px;
    transform: scale(1, 1);
}
.question.active:after {
    transform: scale(1, -1);
}
.answer {
    display: none;
    position: relative;
    padding: 20px;
    background: #E7EDF2;
    margin-left: 19px;
    width: 88%;
}
@media (min-width: 789px) {
    .answer {
        padding: 25px 50px 20px 50px;
        margin-left: 85px;
    }
}
.qa_list {
    margin-bottom: 55px;
}
.txt-add {
    padding-left: 1.5rem;
    display: inline-block;
}

.txt-add::before {
    content: "※";
    margin-left: -1.5rem;
}
/*::::::::お問い合わせ::::::::*/
.ec-contact {
    position: relative;
    background: #E7EDF2;
    z-index: 1;
    color: #ffffff;
    min-height: 460px;
    background: url(../img/bk-contact.svg) center top no-repeat, linear-gradient(90deg, #E7EDF2 0%, #E7EDF2 100%);
    background-size: cover;
}
.content-contact {
    display: none;
}
@media (min-width: 769px) {
    .ec-contact {
        min-height: 460px;
        background: url(../img/bk-contact.svg) 30% top no-repeat, linear-gradient(90deg, #E7EDF2 0%, #E7EDF2 35%, #ffffff 30%, #ffffff 100%);
        background-size: contain;
        margin-top: 60px;
    }
    .content-contact {
        display: block;
    }
    .content-contact {
        position: absolute;
        top: 60px;
        z-index: 3;
        left: 50%;
    }
}
.ttl-blue-box h2 {
    font-size: 60px;
    font-size: 6.0rem;
    color: #02027B;
    margin-bottom: 15px;
}
.ttl-blue-box h3 {
    font-size: 16px;
    font-size: 1.6rem;
    color: #02027B;
}
.ttl-blue-box {
    margin-bottom: 30px;
}
p.top-txt {
    font-size: 22px;
    font-size: 2.2rem;
    color: #000000;
    margin-bottom: 30px;
}
.box-contact {
    max-width: inherit;
    width: 100%;
    color: #000000;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 188%;
    position: absolute;
    z-index: 1;
    top: 60px;
}
@media (min-width: 1024px) {
    .box-contact {
        max-width: 360px;
        width: 360px;
    }
}
.ec-newsRole__news {
    position: relative;
}
.mgb150 {
    margin-bottom: 150px;
}
.box-tel {
    max-width: 370px;
    margin: 0 auto;
    text-align: center;
}
p.txt-contact {
    background-color: #000000;
    border-radius: 50px;
    color: #ffffff;
    margin: 0 auto 30px;
    padding: 21px 0;
    font-size: 20px;
    font-weight: bold;
}
dl.list-tel {
    display: flex;
    font-size: 18px;
    justify-content: space-between;
}
.mgt30 {
    margin-top: 30px;
}
body#page_contact button.ec-blockBtn--action {
    background-color: #02027B;
    font-size: 18px;
    margin-top: 60px;
}
body#page_contact button.ec-blockBtn--action::after {
    background: url(../img/icon-contact.svg) no-repeat;
    width: 16px;
    height: 10px;
    position: absolute;
    top: 23px;
    right: 15px;
    content: "";
}
body#page_contact .ec-borderedDefs dl {
    border-bottom: none;
}
body#page_contact .ec-borderedDefs {
    border-top: none;
}
body#page_contact .contact-caution-txt{
    border: 1px solid #EC0303;
    color: #EC0303;
    padding: 10px;
    font-size: 18px;
}
@media (min-width: 769px) {
    body#page_contact .contact-caution-txt{
        padding: 15px 0;
        font-size: 22px;
        text-align: center;
    }
}
/*::::::::ショッピングガイド::::::::*/
body#page_help_about {
    font-size: 16px;
}
.main-about {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
    position: relative;
    z-index: 0;
    height: 290px;
    background: url(../img/main-about.jpg) no-repeat;
    background-size: cover;
    margin-bottom: 100px;
}
.main-about:before {
    z-index: 0;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.20);
    z-index: 1;
}
.ttl-about h3 {
    font-size: 20px;
    color: #02027B;
    font-weight: bold;
}
.ttl-about h1 {
    margin-bottom: 15px;
}
.ttl-about {
    margin-bottom: 30px;
}
.about-contents02 {
    background: url(../img/bk-about01.svg) no-repeat left top;
    position: relative;
}
.inner-about02 {
    max-width: 365px;
    padding-top: 60px;
    line-height: 188%;
    padding-bottom: 60px;
}
.img-about {
    margin-bottom: 60px;
    text-align: center;
}
@media (min-width: 1024px) {
    .about-contents02 {
        background-size: contain;
    }
    .img-about {
        position: absolute;
        left: 45%;
        top: 60px;
    }
    .inner-about02 {
        max-width: 365px;
        padding-top: 60px;
        line-height: 188%;
        padding-bottom: 60px;
        margin-bottom: 140px;
    }
    .img-about {
        margin-bottom: 0;
    }
}
@media (min-width: 1360px) {
    .about-contents02 {
        background-size: 56%;
    }
}
@media (max-width: 780px) {
    body#page_help_about .slider-inner {
        padding: 20px;
    }
}
.ttl-blue {
    color: #02027B;
    margin-bottom: 30px;
}
.ttl-blue h2 {
    font-size: 60px;
    margin-bottom: 15px;
    font-weight: bold;
}
.ttl-blue h3 {
    font-size: 16px;
    font-weight: bold;
}
ul.list-about {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin-bottom: 60px;
    flex-wrap: wrap;
}
@media (min-width: 1024px) {
    ul.list-about {
        justify-content: space-between;
    }
}
ul.list-about li {
    color: #ffffff;
    width: 220px;
    height: 220px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    position: relative;
    z-index: 1;
    margin: 5px auto;
}
ul.list-about li:before {
    z-index: 0;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 2;
}
li.list-a01 {
    background: url(../img/point-01.jpg) no-repeat left top;
}
li.list-a02 {
    background: url(../img/point-02.jpg) no-repeat left top;
}
li.list-a03 {
    background: url(../img/point-03.jpg) no-repeat left top;
}
li.list-a04 {
    background: url(../img/point-04.jpg) no-repeat left top;
}
.inner-la {
    position: absolute;
    z-index: 3;
}
.ttl-la span {
    display: block;
    font-size: 20px;
    color: #9F2B34;
}
.ttl-la {
    font-size: 60px;
    font-weight: bold;
    line-height: 4.2rem;
    margin-bottom: 25px;
}
.inner-la h3 {
    font-size: 22px;
    line-height: 2.8rem;
    font-weight: bold;
}
h3.ttl-blue-03 {
    font-size: 40px;
    font-weight: bold;
    color: #02027B;
    margin-bottom: 30px;
}
h3.ttl-blue-03 span {
    font-size: 32px;
}
.contetns-abottom p {
    margin-bottom: 10px;
}
.about-contents03 {
    background: url(../img/bk-about02.svg) no-repeat right bottom;
    background-size: auto;
    position: relative;
    padding-bottom: 60px;
    margin-bottom: 100px;
}
.slider-on h4 {
    font-size: 24px;
    font-size: 2.4rem;
    color: #FFFFFF;
    font-weight: bold;
}
.mgb30 {
    margin-bottom: 30px;
}
.ec-borderedDefs dt {
    color: #2950A3;
    font-weight: normal;
    padding-top: 14px;
}
.ec-borderedDefs dt .ec-label {
    font-weight: 500;
}
.ec-borderedDefs dd {}
.ec-borderedDefs dl {
    padding: 10px 0 15px;
}
.ec-pager .ec-pager__item--active {
    background: #02027B;
    color: #fff;
    border-radius: 50px;
    padding: 0;
    min-width: 20px;
    border: 1px solid #02027B;
}
.ec-pager .ec-pager__item a, .ec-pager .ec-pager__item--active a {
    color: inherit;
    display: block;
    line-height: inherit;
    padding: 3px 8px;
    text-decoration: none;
}
.ec-pager .ec-pager__item, .ec-pager .ec-pager__item--active {
    display: inline-block;
    min-width: 29px;
    padding: 0 3px 0 2px;
    text-align: center;
    position: relative;
}
.ec-pager .ec-pager__item {
    border: 1px solid #02027B;
    border-radius: 50px;
    color: #02027B;
}

#product_review_area .ec-rectHeading {
    display: flex;
    align-items: center;
    width: 100%;
}
#product_review_area .ec-rectHeading h4 {
    font-size: 17px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
span.chevron.pull-right {
    font-size: 12px;
}
span.count-r {
    font-size: 13px;
}
.innerh4 {
    display: flex;
    align-items: center;
}
body#page_product_detail #product_review_area .recommend_average {
    margin-left: 0;
    color: #DE5D50;
    font-size: 13px;
}
@media (min-width: 769px) {
    span.chevron.pull-right {
        font-size: 16px;
    }
    span.count-r {
        font-size: 17px;
        padding: 0 10px;
    }
    #product_review_area .recommend_average {
        margin-left: 16px;
        color: #DE5D50;
        font-size: 18px;
    }
    #product_review_area .ec-rectHeading h4 {
        background: #E7EDF2;
        padding: 8px 12px;
        font-size: 18px;
        font-weight: bold;
    }
}
#product_review_area .recommend_average {
    margin-left: 16px;
    color: #2950A3;
}
#product_review_area .ec-inlineBtn--action {
    color: #fff;
    background-color: #2950A3;
    border-color: #2950A3;
}
div#reviewContent {
    font-size: 14px;
    font-weight: normal;
}
#product_review_area .ec-role {
    padding-left: 0;
    padding-right: 0;
}
#product_review_area .review_list {
    padding-left: 0!important;
}
a.ec-blockBtn--cancel {
    border-radius: 50px;
}
.wrap-map {
    max-width: 740px;
    margin: 0 auto 60px;
}
/* --------------------------------
	特定商取引
-------------------------------- */
body#page_help_tradelaw a {}
h4.ttl-t {
    color: #525263;
    font-size: 16px;
    display: block;
    margin-bottom: 10px;
}
h4.ttl-t.mgb30 {
    margin-bottom: 30px;
}
h4.ttl-t::before {
    content: "■"
}
span.txt-gray {
    font-size: 14px;
    color: #666;
}
ul.list-circle {
    list-style: circle;
    padding-left: 20px;
    margin-bottom: 30px;
}
ul.list-circle li {
    line-height: initial;
    list-style: disc;
    list-style-position: outside;
    margin-bottom: 3px;
}
ul.list-circle li a {
    color: #3F80C4;
    text-decoration: underline;
}
body#page_help_tradelaw dd p {
    margin-bottom: 5px;
}
.l-box {
    margin-bottom: 30px;
}
body#page_help_tradelaw .ec-borderedDefs dt {
    color: #525263;
    background-color: #e5e5e5;
    padding: 14px;
}
body#page_help_tradelaw .ec-borderedDefs dt .ec-label {
    font-weight: bold;
    margin-bottom: 0;
}
body#page_help_tradelaw .ec-borderedDefs dd {
    padding: 15px 5px;
    width: 100%;
    line-height: initial;
}
@media (min-width: 769px) {
    body#page_help_tradelaw .ec-borderedDefs dt {
        width: 25%;
    }
    body#page_help_tradelaw .ec-borderedDefs dd {
        width: 75%;
        padding: 0;
    }
    body#page_help_tradelaw .ec-borderedDefs dt.pd-0 {
        padding: 0;
    }
    body#page_help_tradelaw .ec-borderedDefs dt {
        font-size: 15px;
        color: #525263;
        align-items: flex-start;
        display: flex;
        background-color: transparent;
        padding: 0;
    }
    .l-box {
        padding-left: 30px;
    }
}
body#page_help_tradelaw .ec-borderedDefs dl {
    padding: 15px 0;
}
body#page_help_tradelaw dd p.mgb30 {
    margin-bottom: 30px;
}
table.table-al th, table.table-al td {
    border: 1px solid #e5e5e5;
    padding: 8px;
    line-height: initial;
}
table.table-al th {
    background-color: #f5f5f5;
    text-align: center;
}
table.table-al td {
    text-align: right;
}
table.table-al {
    width: 100%;
}
/* --------------------------------
	pagetop
-------------------------------- */
.ec-blockTopBtn i {
    display: block;
    text-align: center;
    font-size: 21px;
}
.ec-blockTopBtn {
    padding: 10px;
    width: 60px;
    height: 60px;
    cursor: pointer;
    line-height: initial;
    border-radius: 50px;
    transition: 0.3s;
    z-index: 99999;
}
.ec-blockTopBtn:hover {
    opacity: 0.7;
}
@media (min-width: 769px) {
    .ec-blockTopBtn {
        right: 50px;
        bottom: 30px;
    }
}
.ec-halfInput .col-md-6 input[type='text']:first-child {
    width: 100%;
}
body#page_entry button.ec-blockBtn--action {
    height: 56px;
    line-height: 56px;
    padding: 0 20px;
    margin-top: 10px;
}
#page_entry button.ec-blockBtn--cancel {
    border-radius: 50px;
}
body#page_cart a.ec-blockBtn--action {
    line-height: 56px;
    min-height: 56px;
    padding: 0 10px;
}
body#page_shopping button.ec-blockBtn--action,body#page_shopping_confirm button.ec-blockBtn--action {
    line-height: 56px;
    min-height: 56px;
    padding: 0 10px;
}
body#page_shopping .ec-rectHeading,body#page_shopping_confirm .ec-rectHeading {
    padding: 20px 0;
}
.paypal-button.paypal-button.paypal-button-color-gold {
    border-radius: 50px;
}
.ec-cartNaviIsset.is-active a.ec-blockBtn--action,body#page_product_list .ec-cartNaviIsset.is-active a.ec-blockBtn--action {
    line-height: 56px;
    height: 56px;
    padding: 0 15px;
}
.ec-cartNaviWrap a.ec-blockBtn.ec-cartNavi--cancel {
    border-radius: 50px;
}
.ec-orderDelivery__address p.delivery-label {
    margin-top: 45px;
}
.ec-orderDelivery__item p.delivery-label, .ec-orderDelivery__address p.delivery-label {
    font-weight: bold;
    font-size: 17px;
    margin-bottom: 15px;
}