@charset "UTF-8";
p.brandMessage {
    text-align: center;
    font-size: 1.8rem;
    margin: 2em 0;
    line-height: 3;
}

@media only screen and (max-width: 749px) {
    p.brandMessage {
        font-size: 1.5rem;
        text-align: left;
        line-height: 1.8;
        padding: 0 3%;
    }
    p.brandMessage br {
        display: none;
    }
}

@media only screen and (max-width: 1240px) {
    .goodsList {
        padding-right: 2%;
        padding-left: 2%;
    }
}

.goodsList h2 {
    color: #5a3d35;
    font-size: 2.6rem;
    font-weight: bold;
    margin-top: 3em;
    text-align: left;
    margin-bottom: 0;
}

@media only screen and (max-width: 749px) {
    .goodsList h2 {
        font-size: 1.8rem;
        margin-top: 2.0em;
    }
}

.goodsList div.itemText {
    color: #777;
    margin-bottom: 1.5em;
}

@media only screen and (max-width: 749px) {
    .goodsList div.itemText {
        font-size: 1.3rem;
        line-height: 1.7;
    }
}

@media only screen and (max-width: 749px) {
    .goodsList .matrix-body {
        width: 100vw;
        max-width: 100%;
        overflow-x: auto;
    }
}

.goodsList .matrix-body-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media only screen and (max-width: 749px) {
    .goodsList .matrix-body-inner {
        min-width: 790px;
        overflow-x: scroll;
        padding-bottom: 1em;
        padding-right: 5%;
    }
}

.goodsList .matrix-body-inner>div {
    margin-right: 22px;
}

@media only screen and (max-width: 1240px) {
    .goodsList .matrix-body-inner>div {
        margin-right: 1.8%;
    }
}

@media only screen and (max-width: 749px) {
    .goodsList .matrix-body-inner>div {
        margin-right: 10px;
    }
}

.goodsList .matrix-body-inner>div:last-child {
    margin-right: 0;
}

.goodsList .resultsRow {
    width: 18.5%;
}

@media only screen and (max-width: 749px) {
    .goodsList .resultsRow {
        min-width: 135px;
    }
}

.goodsList .resultsRow .moreLink a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #e9e4e3;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #62504b;
    font-size: 1.6rem;
}

@media all and (-ms-high-contrast: none) {
    .goodsList .resultsRow .moreLink a {
        min-height: auto;
        height: 222px;
    }
}

@media only screen and (max-width: 749px) {
    .goodsList .resultsRow .moreLink a {
        font-size: 1.2rem;
    }
}

.goodsList .resultsRow .moreLink a span {
    letter-spacing: 0.1em;
    position: relative;
}

.goodsList .resultsRow .moreLink a span:after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    position: absolute;
    right: -20px;
    top: calc(50% - 2px);
    border-right: 1px #62504b solid;
    border-bottom: 1px #62504b solid;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.goodsList .resultsRow .moreLink a:hover {
    text-decoration: none;
    background-color: #62504b;
    color: #fff;
}

.goodsList .resultsRow .moreLink a:hover span:after {
    border-color: #fff;
}

.goodsList .goodsImg img {
    border: 1px #c0c0c0 solid;
    width: 100%;
}

.goodsList .goodsName {
    display: block;
    text-align: center;
    line-height: 1.6;
    margin-top: 10px;
}

@media only screen and (max-width: 749px) {
    .goodsList .goodsName {
        font-size: 1.0rem;
    }
}

.goodsList .priceItemWrap {
    text-align: center;
}

.goodsList .priceItemWrap span {
    line-height: 1;
}

.goodsList .priceItemWrap .price {
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: 0.1em;
}

@media only screen and (max-width: 749px) {
    .goodsList .priceItemWrap .price {
        font-size: 1.2rem;
    }
}

.goodsList .priceItemWrap .suffixLabel {
    font-size: 1.2rem;
}

@media only screen and (max-width: 749px) {
    .goodsList .priceItemWrap .suffixLabel {
        font-size: 1.0rem;
    }
}

.goodsList.category {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

.goodsList.category .matrix-head {
    text-align: center;
}

.goodsList.category .matrix-head h2 {
    text-align: center;
}

.goodsList.category .matrix-body .resultsRow {
    width: 18.5%;
    margin-bottom: 4em;
}

.goodsList.results .matrix-body .resultsRow {
    width: 18.5%;
    margin-bottom: 4em;
}

.goodsList .goodsItem:nth-of-type(4n) {
    margin-right: 1.8%;
}

@media only screen and (max-width: 749px) {
    .goodsList.brand_category .goodsList .matrix-body {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .goodsList.brand_category .goodsList .matrix-body .matrix-body-inner {
        min-width: auto;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding-right: 0;
    }
    .goodsList.brand_category .goodsList .matrix-body .matrix-body-inner:after {
        content: "";
        display: block;
        width: 48.5%;
    }
    .goodsList.brand_category .goodsList .matrix-body .resultsRow {
        width: 48.5%;
        margin: 0;
        margin-bottom: 2em;
        min-width: auto;
    }
    .goodsList.brand_category .goodsList .matrix-body .resultsRow .priceItemWrap {
        line-height: 1.5;
    }
}

h1.category {
    font-size: 3.0rem;
    text-align: center;
    font-weight: 500;
    letter-spacing: 0.1em;
    margin-bottom: 2em;
}

@media only screen and (max-width: 749px) {
    h1.category {
        font-size: 2.0rem;
        margin-top: 2em;
    }
}

h1.category p.itemText {
    font-size: 1.6rem;
    color: #777777;
}

@media only screen and (max-width: 749px) {
    h1.category p.itemText {
        font-size: 1.3rem;
    }
}

#worries {
    background-color: #f7f7f7;
    padding: 4em 2em 1em 2em;
    margin-top: 8em;
}

@media only screen and (max-width: 749px) {
    #worries {
        margin-top: 4em;
        padding: 2em 5% 2em 5%;
    }
}

#worries h2 {
    text-align: center;
}

@media only screen and (max-width: 749px) {
    #worries h2 {
        margin-bottom: 0.5em;
    }
}

#worries h2 span {
    color: inherit;
    font-size: 2.4rem;
    text-align: center;
    margin-bottom: 2em;
    line-height: 2;
}

@media only screen and (max-width: 749px) {
    #worries h2 span {
        font-size: 1.8rem;
    }
}

#worries h2 span {
    display: inline-block;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 2em;
    letter-spacing: 0.1em;
}

@media only screen and (max-width: 749px) {
    #worries h2 span {
        padding-left: 1.5em;
        margin-bottom: 0;
    }
}

#worries h2 span.icn01 {
    background-image: url(../../perfectone/img/top/icn_worries01.png);
}

@media only screen and (max-width: 749px) {
    #worries h2 span.icn01 {
        background-size: 18px auto;
    }
}

#worries h2 span.icn02 {
    background-image: url(../../perfectone/img/top/icn_worries02.png);
    padding-left: 1.8em;
}

@media only screen and (max-width: 749px) {
    #worries h2 span.icn02 {
        background-size: 18px auto;
    }
}

#worries .block {
    margin-bottom: 3em;
}

@media only screen and (max-width: 749px) {
    #worries .block {
        margin-bottom: 0;
    }
}

#worries .block:last-child {
    margin-top: 1.0em;
}

#worries ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media only screen and (max-width: 749px) {
    #worries ul {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

#worries ul li {
    width: 23.9%;
    margin-right: 1.4%;
    margin-bottom: 16px;
}

@media only screen and (max-width: 749px) {
    #worries ul li {
        width: 48.5%;
        margin-right: 0;
        margin-bottom: 10px;
    }
}

#worries ul li:nth-child(4n) {
    margin-right: 0;
}

#worries ul li a {
    display: block;
    border: 1px #b9b9b9 solid;
    background-color: #fff;
    text-align: center;
    padding: 0.7em;
    border-radius: 3px;
    position: relative;
    text-decoration: none;
}

@media only screen and (max-width: 749px) {
    #worries ul li a {
        font-size: 1.2rem;
    }
}

#worries ul li a:before {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-right: 1px #312b2a solid;
    border-bottom: 1px #312b2a solid;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    right: 15px;
    top: calc(50% - 4px);
}

#worries p.note {
    text-align: right;
    font-size: 1.2rem;
}

#ranking {
    background-color: #fff;
}

.contents section {
    margin-top: 10em;
}

@media only screen and (max-width: 749px) {
    .contents section {
        margin-top: 0;
    }
}

#contentSec h2,
#bnrCntents h2,
#browsingGoods h2 {
    font-size: 3.0rem;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.1em;
    margin-bottom: 1em;
}

@media only screen and (max-width: 749px) {
    #contentSec h2,
    #bnrCntents h2,
    #browsingGoods h2 {
        font-size: 2.4rem;
    }
}

#contentSec h2 span,
#bnrCntents h2 span,
#browsingGoods h2 span {
    font-size: 1.4rem;
    color: #7f7b71;
    display: block;
    letter-spacing: 0.2em;
}

@media only screen and (max-width: 749px) {
    #contentSec h2 span,
    #bnrCntents h2 span,
    #browsingGoods h2 span {
        font-size: 1.2rem;
    }
}

footer .footer_sns,
footer .footer_sns_bnr {
    display: none;
}

@media only screen and (max-width: 749px) {
    #breadcrumb {
        width: calc(100% + 10vw);
        margin-left: -5vw;
    }
    .rankingSec {
        margin-top: 4em !important;
    }
}

.seeMoreItemWrap {
    display: inline-block;
}


/*# sourceMappingURL=GoodsList.css.map */

#contents {
    max-width: none;
    width: 100%;
}

#contents .topGroupName {
    float: none;
}

#contents.one_column_box_w960 {
    max-width: 960px;
    margin: 5vw auto;
}

@media only screen and (max-width: 749px) {
    #contents {
        min-width: 320px;
    }
}


/* トップページ */

#top_fv {
    position: relative;
    overflow: hidden;
}

.topSlide {
	background: #fff;
    width: 100%;
    height: auto;
}

.topSlide::before {
    content: '';
    width: 100%;
    height: 100%;
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 100;
}

.topSlide.slick-initialized::before {
    display: none;
}

.topSlide .slick-slide {
	background: #eaeaec;
}

.topSlide .slick-slide a {
    width: 100%;
    height: 500px;
    display: block;
    position: relative;
    overflow: hidden;
}

@media only screen and (min-width:1921px) {
    .topSlide .slick-slide a {
        width: 1920px;
    }
}

.topSlide .slick-slide a img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    height: 100%;
    width: auto;
    max-width: none !important;
}

.topSlide .slick-slide a img:hover {
    opacity: 1;
}

.topSlide .slick-dots li {
    width: 10px;
    height: 10px;
    margin: 0 10px;
}

.topSlide .slick-dots li button {
    width: 10px;
    height: 10px;
    padding: 0;
}

.topSlide .slick-dots li button:before {
    line-height: 10px;
    width: 10px;
    height: 10px;
    background: #000;
}

.page_ttl01 {
    margin-bottom: 20px;
    font-size: 30px;
    letter-spacing: .2em;
    font-weight: 700;
}

.page_ttl01 span {
    font-size: 14px;
    margin-left: 10px;
    vertical-align: baseline;
    color: #7f7b71;
    letter-spacing: .3em;
}

.page_ttl02 {
    text-align: center;
    margin-bottom: 40px;
    font-size: 3.0rem;
    font-weight: 500;
    letter-spacing: 0.1em;
}

.page_ttl02 span {
    display: block;
    font-size: 14px;
    color: #7f7b71;
    letter-spacing: 0.2em;
}

#wrap .page_ttl02.inst img {
    vertical-align: middle;
    width: 25px;
    margin-right: 10px;
}

.page_ttl03 {
    margin-bottom: 20px;
    font-size: 30px;
    letter-spacing: .2em;
    font-weight: 700;
    line-height: 1.2em;
}

.page_ttl03 span {
    font-size: 14px;
    color: #7f7b71;
    letter-spacing: .3em;
    display: block;
}

.top_txt01 {
    font-size: 26px;
    font-weight: 600;
    line-height: 1.8em;
    letter-spacing: .2em;
    margin-bottom: 30px;
}

.top_txt02 {
    font-size: 18px;
    font-weight: 600;
    line-height: 2em;
    letter-spacing: .15em;
}

.top_news {
    background: #f7f7f7;
}

.top_news .inner {
    width: 1000px;
    margin: auto;
    padding: 40px 0;
}

.top_news h2 {
    font-size: 26px;
    margin-bottom: 10px;
    font-weight: 700;
    letter-spacing: .2em;
}

.top_news dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin-bottom: 20px;
}

.top_news dl dt {
    color: #808080;
    width: 110px;
    padding: 10px 0;
    border-bottom: 1px solid #b9b9b9;
    font-size: 12px;
    line-height: 24px;
}

.top_news dl dd {
    width: 890px;
    padding: 10px 0;
    border-bottom: 1px solid #b9b9b9;
    font-size: 14px;
    line-height: 24px;
}

.top_news dl dd a {
    font-size: 1.4rem;
    line-height: 24px;
}

.top_news .btn {
    text-align: right;
}

.top_news .btn a {
    display: inline-block;
    padding: 5px 50px;
    background: #312b2a;
    color: #fff;
    text-decoration: none;
    border: 1px solid #312b2a;
    border-radius: 5px;
    position: relative;
}

.top_news .btn a::after {
    content: '';
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    right: 20px;
    top: calc(50% - 4px);
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.top_news .btn a:hover {
    background: #fff;
    color: #312b2a;
}

.top_news .btn a:hover::after {
    border-right: 1px solid #312b2a;
    border-bottom: 1px solid #312b2a;
}

.top_sec01 {
    width: 1200px;
    margin: auto;
    margin: 80px auto;
}

.top_sec01 .inner {
    padding: 60px 110px;
    background: #f7f7f7;
}

.top_sec02 {
    width: 100%;
    padding: 180px 0;
    background-image: url(../img/top/img02_pc.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.top_sec02 .inner {
    width: 1200px;
    margin: auto;
}

.top_sec03 {
    margin: 80px auto;
}

.top_sec03 .inner {
    width: 1200px;
    margin: auto;
}

.top_sec04 {
    padding: 80px 0;
    background: #f2efee;
}

.top_sec04 .inner {
    width: 1200px;
    margin: auto;
}

.top_beginners_guide li {
    width: 300px;
    margin: auto 15px;
}

.top_beginners_guide li a {
    display: block;
    text-decoration: none;
}

.top_beginners_guide li a:hover {
    opacity: .7;
}

.top_beginners_guide li span {
    display: block;
}

.top_beginners_guide li .image {
    margin-bottom: 20px;
}

.top_beginners_guide li .ico {
    display: inline-block;
    background: #fff;
    border: 1px solid #999999;
    color: #999999;
    padding: 5px 10px;
    font-size: 11px;
    line-height: 1em;
}

.top_beginners_guide li .title {
    margin: 5px 0;
    font-size: 14px;
    color: #333333;
    letter-spacing: -.1em;
}

.top_beginners_guide li .title::after {
    content: '';
    margin-left: 5px;
    display: inline-block;
    width: 6px;
    height: 6px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
    vertical-align: baseline;
}

.top_beginners_guide li .text {
    font-size: 12px;
    color: #808080;
}

.top_beginners_guide li .price1 {
    font-size: 12px;
    color: #808080;
    text-align: right;
    line-height: 1.2em;
}

.top_beginners_guide li .price1 sub {
    font-size: 10px;
    vertical-align: baseline;
}

.top_beginners_guide li .price2 {
    font-size: 20px;
    color: #b90d36;
    text-align: right;
    line-height: 1.2em;
}

.top_beginners_guide li .price2 sub {
    font-size: 12px;
    vertical-align: baseline;
}

.top_beginners_guide .slick-prev {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -30px;
    margin: auto;
    width: 30px;
    height: 30px;
    background: transparent;
    border: none;
    padding: 0;
    border-radius: 0;
    border-bottom: 1px solid #333;
    border-right: 1px solid #333;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    z-index: 1;
}

.top_beginners_guide .slick-next {
    position: absolute;
    top: 0;
    right: -30px;
    bottom: 0;
    margin: auto;
    width: 30px;
    height: 30px;
    background: transparent;
    border: none;
    padding: 0;
    border-radius: 0;
    border-bottom: 1px solid #333;
    border-right: 1px solid #333;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    z-index: 1;
}

.top_beginners_guide .slick-prev:before,
.top_beginners_guide .slick-next:before {
    content: '';
}

.top_campaign_bnr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 1200px;
    margin: auto;
}

.top_campaign_bnr li {
    width: 585px;
    margin-bottom: 30px;
}

.top_campaign_bnr li a:hover {
    opacity: .7;
}

.top_campaign_bnr a{
    display: inline-block;
}

.top_campaign_bnr img{
    pointer-events: none;
}

.top_btn01 {
    width: 296px;
    margin: 20px auto auto;
}

.top_btn01 a {
    display: block;
    text-align: center;
    background: #62504b;
    color: #fff;
    padding: 8px;
    border-radius: 5px;
    position: relative;
    text-decoration: none;
    border: 1px solid #62504b;
    border-radius: 3px;
}

.top_btn01 a::after {
    content: '';
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    right: 20px;
    top: calc(50% - 4px);
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.top_btn01 a:hover {
    background: #fff;
    color: #62504b;
}

.top_lineup li {
    margin-bottom: 30px;
}

.top_shop {
    width: 1200px;
    margin: 80px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.top_shop .shop_box01 {
    width: 50%;
    text-align: center;
}

.top_app {
    position: relative;
}

.top_app::after {
    content: '';
    width: 100%;
    height: 110%;
    background: #f7f7f7;
    position: absolute;
    left: 0;
    top: -15%;
    z-index: -1;
}

.top_app .inner {
    width: 800px;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.top_app .app_box01 {
    width: 250px;
    text-align: center;
}

.top_app .app_box02 {
    width: 500px;
    text-align: center;
}

.top_app .page_ttl02 {
    margin-bottom: 0px;
    font-size: 26px;
}

.top_app .top_app_txt01 {
    margin-bottom: 30px;
    color: #7f7b71;
    font-size: 16px;
}

.top_app .qr {
    width: 400px;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.top_app .qr li {
    width: 180px;
}

.top_app .qr li p {
    margin: 5px auto;
}

.top_app .qr li a:hover {
    opacity: .7;
}

.top_contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.top_contents li {
    width: 380px;
}

.top_contents li a {
    display: block;
    text-decoration: none;
}

.top_contents a:hover {
    opacity: .7;
}

.top_contents li span {
    display: block;
}

.top_contents li .title {
    font-size: 18px;
    margin: 10px auto auto;
}

.top_contents li .text {
    font-size: 14px;
    color: #999999;
}

.top_recommend {
    width: 1000px;
    margin: auto;
    display: flex;
    justify-content: space-between;
}

.top_recommend li {
    width: 490px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.3);
}

.top_recommend li .name {
    font-size: 24px;
    font-weight: 700;
    padding-top: 20px;
    line-height: 1.6em;
    text-align: center;
}

.top_recommend li .price {
    font-size: 18px;
}

.top_recommend li .price span {
    font-size: 12px;
}

.top_recommend li .txt {
    font-size: 16px;
    padding: 10px 20px;
    line-height: 1.6em;
}

.top_recommend li a {
    display: block;
    margin: 30px auto;
    width: 326px;
    border: 1px solid #242424;
    color: #242424;
    font-size: 18px;
    padding: 10px;
    text-align: center;
    position: relative;
}

.top_recommend li a::after {
    position: absolute;
    content: '';
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    right: 20px;
    top: calc(50% - 4px);
    border-right: 1px solid #242424;
    border-bottom: 1px solid #242424;
}

.top_recommend li a:hover {
    background: #242424;
    color: #fff;
    text-decoration: none;
}

.top_recommend li a:hover::after {
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.search_inner {
    width: 1200px;
    margin: auto;
    background: #f9f9f9;
    text-align: center;
    padding: 60px 40px;
}

.search_inner h2 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 30px;
}

.search_inner ul {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}

.search_inner ul:last-child {
    margin-bottom: 0;
}

.search_inner ul li {
    width: 360px;
}

.search_inner ul li a {
    display: block;
    border: 1px solid #242424;
    background: #fff;
    color: #242424;
    font-size: 16px;
    padding: 10px;
    text-align: center;
    position: relative;
}

.search_inner ul li a::after {
    position: absolute;
    content: '';
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    right: 20px;
    top: calc(50% - 4px);
    border-right: 1px solid #242424;
    border-bottom: 1px solid #242424;
}

.search_inner li a:hover {
    background: #242424;
    color: #fff;
    text-decoration: none;
}

.search_inner li a:hover::after {
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.about_ttl01 {
    margin-bottom: 30px;
    position: relative;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    margin: 50px auto 20px;
    width: 1070px;
}

.about_ttl01::before {
    display: block;
    content: '';
    position: absolute;
    width: 420px;
    height: 1px;
    background: #b9b9b9;
    top: 50%;
    left: 0;
}

.about_ttl01::after {
    display: block;
    content: '';
    position: absolute;
    width: 420px;
    height: 1px;
    background: #b9b9b9;
    top: 50%;
    right: 0;
}

.about_txt01 {
    margin-top: 20px;
    font-size: 12px;
    text-align: right;
}

.about_txt02 {
    font-size: 22px;
    line-height: 1.8em;
    letter-spacing: .2em;
    margin-bottom: 30px;
    text-align: center;
}

.about_txt03 {
    font-size: 16px;
    line-height: 2em;
    letter-spacing: .2em;
    text-align: center;
}

.about_img {
    text-align: center;
}

#store {
    background: #f8f2c3;
    padding: 100px 0;
}

.store_txt01 {
    text-align: center;
    line-height: 2em;
    margin-bottom: 30px;
}

.store_list {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 1120px;
    margin: auto;
}

.store_list li {
    width: 23.6%;
    font-size: 18px;
    background: #fff;
    line-height: 1em;
    padding: 1em;
    text-align: center;
    border-radius: 2.6em;
    margin: 1em 0.7% auto;
    letter-spacing: .1em;
}

.store_list li:nth-of-type(3){
    padding: 0.5em;
}

.store_acc{
    border-radius: 0 0 5px 5px;
    transition: .3s;
    overflow: hidden;
    max-height:150px;
    position: relative;
}

.store_acc:hover{
    cursor: pointer;
}

.store_acc.active:hover{
    cursor:auto;
}

.store_acc::before {
    content: '続きを見る +';
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    font-size: 18px;
    color: #333333;
    z-index: 2;
    text-align: center;
    padding: 20px;
}

.store_acc::after {
    content: '';
    width: 100%;
    height: 150px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #000;
    background: linear-gradient( to top, rgba(248, 242, 195, 1) 30%, rgba(248, 242, 195, 0) 100%);
    z-index: 1;
    transition: .3s;
}

.active.store_acc::before,
.active.store_acc::after  {
    opacity: 0;
}

#torikumi {
    display: flex;
    justify-content: start;
    align-items: center;
    min-width: 1200px;
}

#torikumi .image {
    width: 50%;
}

#torikumi .image img {
    width: 100%;
}

#torikumi .inner {
    width: 50%;
    max-width: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

#torikumi .inner h3 {
    font-size: 26px;
    margin-bottom: 30px;
}

#torikumi .inner p {
    font-size: 16px;
    line-height: 2em;
}

#concept .top_txt02 {
    margin-top: 2em;
}

#concept .top_txt02.first {
    margin-top: 4em;
}

@media only screen and (max-width: 749px) {
    .topSlide {
        width: 100%;
        height: auto;
    }
    .topSlide .slick-slide a {
        height: 100vw;
    }
    .topSlide .slick-slide a img {
        height: 100vw !important;
    }
    .topSlide .slick-dots {
        bottom: -30px;
    }
    .topSlide .slick-dots li {
        width: 3vw;
        height: 3vw;
        margin: 0 3vw;
    }
    .topSlide .slick-dots li button {
        width: 3vw;
        height: 3vw;
    }
    .topSlide .slick-dots li button:before {
        line-height: 3vw;
        width: 3vw;
        height: 3vw;
    }
    .top_news .inner {
        width: 100%;
        margin: auto;
        padding: 10vw 5vw;
    }
    .top_news h2 {
        font-size: 5vw;
        margin-bottom: 2vw;
        text-align: left;
    }
    .top_news dl {
        display: block;
        margin-bottom: 3vw;
    }
    .top_news dl dt {
        width: 100%;
        padding: 4vw 0 0;
        border-bottom: none;
        font-size: 3vw;
        line-height: 2em;
        letter-spacing: .1em;
    }
    .top_news dl dd {
        width: 100%;
        padding: 0 0 4vw;
        font-size: 4vw;
        line-height: 1.6em;
    }
    .top_news dl dd a {
        line-height: 1.6em;
    }
    .top_news .btn a {
        padding: 1.6vw 8vw 1.6vw 6vw;
        border-radius: 1vw;
    }
    .top_news .btn a::after {
        width: 2vw;
        height: 2vw;
        right: 3vw;
    }
    .page_ttl01 {
        margin-bottom: 2vw;
        font-size: 6vw;
        text-align: center;
    }
    .page_ttl01 span {
        font-size: 3.6vw;
        margin-left: 0;
        display: block;
    }
    .page_ttl02 {
        margin-bottom: 6vw;
        font-size: 6vw;
    }
    .page_ttl02 span {
        font-size: 3vw;
    }
    .page_ttl02.inst img {
        width: 5vw;
        margin-right: 1vw;
    }
    .page_ttl03 {
        margin-bottom: 3vw;
        font-size: 6vw;
        letter-spacing: 0;
        text-align: center;
    }
    .page_ttl03 span {
        margin-top: 3vw;
        font-size: 3vw;
    }
    .top_sec01 {
        width: 90%;
        margin: 10vw auto;
    }
    .top_sec01 .inner {
        padding: 8vw 5vw;
        border-radius: 10px;
    }
    .top_sec02 {
        padding: 18vw 0;
    }
    .top_sec02 .inner {
        width: 90%;
        margin: auto;
    }
    .top_sec03 {
        margin: 10vw auto;
    }
    .top_sec03 .inner {
        width: 100%;
    }
    .top_sec04 {
        padding: 10vw 0;
    }
    .top_sec04 .inner {
        width: 90%;
        margin: auto;
    }
    .top_beginners_guide li {
        width: 100%;
        margin: 8vw auto;
    }
    .top_beginners_guide li .image {
        margin-bottom: 2vw;
    }
    .top_beginners_guide li .ico {
        padding: 1vw 2vw;
        font-size: 3vw;
    }
    .top_beginners_guide li .title {
        margin: 1vw 0;
        font-size: 3.6vw;
    }
    .top_beginners_guide li .title::after {
        margin-left: 1vw;
        width: 1vw;
        height: 1vw;
    }
    .top_beginners_guide li .text {
        font-size: 3vw;
    }
    .top_beginners_guide li .price1 {
        font-size: 3vw;
    }
    .top_beginners_guide li .price1 sub {
        font-size: 3vw;
    }
    .top_beginners_guide li .price2 {
        font-size: 4vw;
    }
    .top_beginners_guide li .price2 sub {
        font-size: 3vw;
    }
    .top_campaign_bnr {
        display: block;
        width: 100%;
        margin: auto;
    }
    .top_campaign_bnr li {
        width: 100%;
        margin-bottom: 3vw;
    }
    .top_btn01 {
        width: 100%;
        margin: 6vw auto auto;
    }
    .top_btn01 a {
        padding: 2vw;
        border-radius: 1vw;
    }
    .top_btn01 a::after {
        width: 2vw;
        height: 2vw;
        right: 3vw;
        top: calc(50% - 1vw);
    }
    .top_txt01 {
        font-size: 4vw;
        margin-bottom: 4vw;
        text-align: center;
    }
    .top_txt02 {
        font-size: 3.1vw;
    }
    .top_lineup {
        display: block;
        margin: auto 4vw;
    }
    .top_lineup li {
        margin-bottom: 4vw;
    }
    .top_shop {
        width: 90%;
        display: block;
        margin-bottom: 12vw;
    }
    .top_shop .shop_box01 {
        width: 100%;
    }
    .top_shop p {
        color: #7f7b71;
        font-size: 4vw;
        text-align: center;
        margin: 3vw auto;
    }
    .top_app::after {
        height: 60vw;
        left: 0;
        top: 30vw;
    }
    .top_app .inner {
        width: 100%;
        display: block;
        margin-bottom: 16vw;
    }
    .top_app .app_box01 {
        display: none;
    }
    .top_app .app_box02 {
        width: 100%;
    }
    .top_app .page_ttl02 {
        margin-bottom: 4vw;
        font-size: 5vw;
    }
    .top_app .app_img {
        width: 50vw;
        margin: auto auto 4vw;
    }
    .top_app .top_app_txt01 {
        margin-bottom: 4vw;
        margin-top: 6vw;
        font-size: 4vw;
    }
    .top_app .qr {
        width: 90%;
    }
    .top_app .qr li {
        width: 47%;
        font-size: 3vw;
    }
    .top_app .qr li .code {
        display: none;
    }
    .top_app .qr li p {
        margin: 1vw auto;
    }
    .top_contents {
        display: block;
    }
    .top_contents li {
        width: 100%;
        margin-bottom: 6vw;
    }
    .top_contents li .title {
        font-size: 4vw;
        margin: 2vw auto auto;
    }
    .top_contents li .text {
        font-size: 3.6vw;
    }
    .top_recommend {
        width: 90%;
        margin: auto;
    }
    .top_recommend li {
        width: 48%;
        box-shadow: 1vw 1vw 2vw rgba(0, 0, 0, 0.3);
    }
    .top_recommend li .name {
        font-size: 3.6vw;
        padding-top: 2vw;
        padding-bottom: 1vw;
        line-height: 1.4em;
        text-align: center;
    }
    .top_recommend li .price {
        font-size: 3.6vw;
        line-height: 1.4em;
    }
    .top_recommend li .price span {
        font-size: 3vw;
    }
    .top_recommend li .txt {
        display: none;
    }
    .top_recommend li a {
        display: block;
        margin: 3vw auto auto;
        width: 100%;
        border: none;
        border-top: 1px solid #999;
        font-size: 3.6vw;
        padding: 3vw;
    }
    .top_recommend li a::after {
        width: 1.6vw;
        height: 1.6vw;
        right: 2vw;
        top: calc(50% - .8vw);
    }
    .search_inner {
        width: 100%;
        padding: 10vw 4vw;
    }
    .search_inner h2 {
        font-size: 5vw;
        margin-bottom: 6vw;
    }
    .search_inner ul {
        display: block;
        margin-bottom: 10vw;
    }
    .search_inner ul li {
        width: 100%;
        margin-bottom: 2vw;
    }
    .search_inner ul li a {
        font-size: 4vw;
        padding: 3vw;
    }
    .search_inner ul li a::after {
        width: 1.6vw;
        height: 1.6vw;
        right: 2vw;
        top: calc(50% - .8vw);
    }
    .about_ttl01 {
        margin-bottom: 4vw;
        font-size: 4vw;
        margin: 6vw auto 4vw;
        width: 90%;
    }
    .about_ttl01::before {
        width: 30vw;
    }
    .about_ttl01::after {
        width: 30vw;
    }
    .about_txt01 {
        margin: 3vw 4vw auto;
        font-size: 2.6vw;
    }
    .about_txt02 {
        font-size: 4vw;
        line-height: 1.8em;
        margin: auto 4vw 4vw;
        text-align: center;
    }
    .about_txt03 {
        font-size: 3.4vw;
        line-height: 1.8em;
    }
    .about_img {
        text-align: center;
        margin: auto 4vw;
    }
    #store {
        padding: 10vw 0;
    }
    .store_txt01 {
        text-align: center;
        line-height: 1.6em;
        margin-bottom: 4vw;
        font-size: 3.6vw;
    }
    .store_txt01 span {
        font-size: 3vw;
    }
    .store_list {
        width: 90%;
    }
    .store_list li {
        width: 46%;
        font-size: 3.2vw;
        background: #fff;
        line-height: 1em;
        padding: .8em;
        text-align: center;
        border-radius: 2.6em;
        margin: 1em 2% auto;
        letter-spacing: .1em;
    }
    .store_list li:first-child {
        margin: 1em 27% auto;
    }
    #torikumi {
        display: block;
        min-width: 0;
    }
    #torikumi .image {
        width: 100%;
    }
    #torikumi .inner {
        width: 100%;
        max-width: 100%;
        display: block;
        padding: 10vw 4vw;
        text-align: center;
    }
    #torikumi .inner h3 {
        font-size: 5vw;
        margin-bottom: 4vw;
        font-weight: 700;
    }
    #torikumi .inner p {
        font-size: 3.6vw;
        line-height: 2em;
    }
    #concept .top_txt02.first {
        margin-top: 2em;
    }
}

.top_search {
    margin: -80px 0 80px;
}

.top_search .inner {
    width: 1200px;
    margin: auto;
    padding: 80px 50px;
    background: #f9f9f9;
}

#searchResult {
    width: 960px;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#searchResult li {
    width: 24.1%;
    margin-left: 1.2%;
    margin-bottom: 50px;
}

#searchResult li:nth-child(4n+1) {
    margin-left: 0;
}

#searchResult a {
    text-align: center;
    display: block;
    text-decoration: none;
}

#searchResult a:hover {
    opacity: .7;
}

#searchResult a span {
    display: block;
}

#searchResult a .image {
    margin-bottom: 20px;
}

#searchResult .cat {
    display: inline-block;
    font-size: 12px;
    color: #999999;
    padding: 2px 5px;
    line-height: 1.2em;
    border: 1px solid #999999;
    background: #fff;
}

#searchResult a .name {
    color: #333333;
    line-height: 1.4em;
    font-size: 1.4rem;
    margin: 10px auto;
}

#searchResult a .priceWrap {
    font-size: 1.0rem;
    line-height: 1;
    letter-spacing: 0.1em;
}

#searchResult a .price {
    color: #333333;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    display: inline;
}

.searchTag1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px solid #453c3a;
    margin-bottom: 20px;
}

.searchTag1 li {
    width: 360px;
}

.searchTag1 input {
    display: none;
}

.searchTag1 li label {
    display: block;
    text-align: center;
    padding: 1em;
    background: #c9c0be;
    color: #fff;
    font-size: 16px;
    line-height: 16px;
    border-radius: 5px 5px 0 0;
    cursor: pointer;
}

.searchTag1 li label span {
    width: 15px;
    height: 15px;
    border-radius: 3px;
    border: 1px solid #fff;
    display: inline-block;
    margin-right: 10px;
    position: relative;
}

.searchTag1 li input[type=radio]:checked+label {
    background: #453c3a;
}

.searchTag1 li input[type=radio]:checked+label span::before {
    content: '';
    width: 15px;
    height: 5px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    display: block;
    -webkit-transform: rotate(-40deg);
    transform: rotate(-40deg);
    position: absolute;
    left: 2px;
    top: 0;
}

.searchTag2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 50px;
}

.searchTag2 li {
    width: 24.1%;
    margin-left: 1.2%;
    margin-bottom: 10px;
}

.searchTag2 li:nth-child(4n+1) {
    margin-left: 0;
}

.searchTag2 input {
    display: none;
}

.searchTag2 li label {
    display: block;
    text-align: left;
    padding: 1em 1em 1em 3em;
    background: #fff;
    border: 1px solid #d08c8d;
    color: #333;
    font-size: 16px;
    line-height: 16px;
    cursor: pointer;
    position: relative;
}

.searchTag2 li label::after {
    content: '';
    width: 15px;
    height: 15px;
    border-radius: 3px;
    border: 1px solid #d08c8d;
    display: inline-block;
    margin-right: 10px;
    position: absolute;
    left: 20px;
    top: calc(50% - 7px);
}

.searchTag2 li input[type=radio]:checked+label {
    background: #d08c8d;
    color: #fff;
}

.searchTag2 li input[type=radio]:checked+label::after {
    border: 1px solid #fff;
}

.searchTag2 li input[type=radio]:checked+label::before {
    content: '';
    width: 15px;
    height: 5px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    display: block;
    -webkit-transform: rotate(-40deg);
    transform: rotate(-40deg);
    position: absolute;
    left: 22px;
    top: calc(50% - 6px);
}

@media only screen and (max-width: 749px) {
    .top_search {
        margin-top: -10vw;
        margin-bottom: 0;
    }
    .top_search .inner {
        width: 100%;
        margin: auto;
        padding: 10vw 5vw;
        background: #fff;
    }
    #searchResult {
        width: 100%;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    #searchResult li {
        width: 48%;
        margin-left: 0;
        margin-bottom: 6vw;
    }
    #searchResult li:nth-child(4n+1) {
        margin-left: 0;
    }
    #searchResult a .image {
        margin-bottom: 2vw;
    }
    #searchResult .cat {
        font-size: 2vw;
        padding: 1vw 2vw;
    }
    #searchResult a .name {
        margin: 1vw auto;
        font-size: 3vw;
    }
    #searchResult a .price {
        font-size: 3vw;
    }
    .searchTag1 {
        margin-bottom: 5vw;
    }
    .searchTag1 li {
        width: 35%;
    }
    .searchTag1 li:nth-child(2) {
        width: 28%;
        margin: 0 1%;
    }
    .searchTag1 input {
        display: none;
    }
    .searchTag1 li label {
        padding: .5em 0;
        font-size: 3.6vw;
        line-height: 1.4em;
    }
    .searchTag1 li label span {
        display: none;
    }
    .searchTag2 {
        margin-bottom: 6vw;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .searchTag2 li {
        width: 48%;
        margin-left: 0;
        margin-bottom: 3vw;
    }
    .searchTag2 li label {
        padding: 4vw 3vw 4vw 6vw;
        font-size: 3.6vw;
        line-height: 1em;
        cursor: pointer;
        position: relative;
    }
    .searchTag2 li label::after {
        width: 3vw;
        height: 3vw;
        margin-right: 2vw;
        left: 2vw;
        top: calc(50% - 1.5vw);
    }
    .searchTag2 li input[type=radio]:checked+label::before {
        width: 3vw;
        height: 1vw;
        left: 2.4vw;
        top: calc(50% - 1.2vw);
    }
}


/*# sourceMappingURL=Shop.css.map */