html {
    scroll-behavior: smooth;
    font-size: calc(100vw / 780 * 10);
}
body {
    font-family: noto-sans-cjk-jp, sans-serif;
    font-weight: 400;
    letter-spacing: .1em;
    color: #1A1311;
    -webkit-text-size-adjust: 100%;
    position: relative;
    margin: 0;
    padding: 0;
}
figure {
    display: block;
    margin: 0;
}
a, a:hover, a:visited {
    text-decoration: none;
    color: inherit;
}
.f-din {
  font-family: din-2014, sans-serif; 
}
.red-txt {
  color: #B9001D;
}
*, *:before,
*:after {
  box-sizing: border-box;
}
*:focus {
  outline: none;
}
@media only screen and (max-width: 899px) {
    .pc-only {
        display: none;
    }
}
@media only screen and (min-width: 900px) {
    html {
        font-size: calc(100vw / 1920 * 10);
    }
    .sp-only, #fix-nav {
        display: none !important;
    }
    a[href^="tel:"], .ac-menu {
        pointer-events: none;
    }
}

/* header */
.header ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.header p {
    margin: 0;
}
.header-top .txt {
    font-size: 2.4rem;
    line-height: 1.3;
    padding: 2rem 10.2rem 2rem 2rem;
}
.top-menu {
    display: flex;
    column-gap: 2.8rem;
}
.top-menu li a {
    display: grid;
    place-content: center;
}
.top-menu li a span {
    font-size: 2rem;
    padding-top: 4.6rem;
    position: relative;
}
.top-menu li span:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 4rem;
    height: 4rem;
}
.top-menu li.contact a span:before {
    background: url(https://shopnet.itembox.design/item/img/common/icon-mail-gr.svg) 0 / contain no-repeat; 
}
.top-menu li.mypage a span:before {
    background: url(https://shopnet.itembox.design/item/img/common/icon-mypage.svg) 0 / contain no-repeat;
}
.top-menu li.cart a span:before {
    background: url(https://shopnet.itembox.design/item/img/common/icon-cart.svg) 0 / contain no-repeat;
}
.header .logo {
    display: block;
    width: 35rem;
    margin: 0;
}
.header .logo img {
    height: auto;
    vertical-align: bottom;
}
.header-inner .contact-wrap,
.header-inner .keyword-wrap,
.global-nav {
    display: none;
}
.menu-btn {
    width: 10rem;
    height: 10rem;
    background-color: #8A8C89;
    transition: all 0.4s ease;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 13;
    line-height: 1;
    cursor: pointer;
}
.menu-btn:before {
    content: "MENU";
    color: #fff;
    font-family: din-2014, sans-serif; 
    font-size: 2rem;
    font-weight: 400;
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
}
.menu-btn > span {
    width: 39.2%;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    transition: all 0.4s ease;
}
.menu-btn > span:nth-of-type(1) {
    top: 3rem;
}
.menu-btn > span:nth-of-type(2) {
    top: 4rem;
}
.menu-btn > span:nth-of-type(3) {
    top: 5rem;
}

/* header.fix */
.header.fix {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
    background-color: #fff;
}

.header.fix .header-top .txt,
.header .sidebar,
.fix-only {
    display: none;
}
@media only screen and (max-width: 899px) {
    .header {
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between;
        align-items: center;
        padding: 1rem 13.5rem 1rem 3rem;
        height: 10rem;
    }
    .header-inner,
    .header.openNav .header-top .txt {
        display: none;
    }
    .header.fix .header-mid,
    .header.openNav .header-mid {
        background-color: #fff;
        display: grid;
        align-content: center;
        position: relative;
        z-index: 11;
    }
}

/* header.openNav */
.menu-btn.openNav > span:nth-of-type(1) {
  transform: translateX(-45%) rotate(-45deg);
  top: 40%;
}
.menu-btn.openNav > span:nth-of-type(2) {
  opacity: 0;
}
.menu-btn.openNav > span:nth-of-type(3) {
  transform: translateX(-45%) rotate(45deg);
  top: 40%;
}

@media only screen and (max-width: 899px) {
    .header.openNav .header-inner .contact-wrap,
    .header.openNav .header-inner .keyword-wrap,
    .header.openNav .global-nav,
    .header.openNav .sidebar {
        display: block;
    }
    .header.openNav .header-inner {
        background-color: rgba(117,120,107,.9);
        position: fixed;
        top: 10rem;
        right: 0;
        width: 82%;
        height: 100%;
        display: block;
        z-index: 10;
        padding: 6rem 4rem 16rem;
        overflow-y: scroll;
    }
    .global-nav .global-menu {
        padding: 0 6rem;
    }
    .global-nav .global-menu > li:not(:last-child) {
        border-bottom: 1px solid #fff;
    }
    .global-nav .global-menu > li > a,
    .global-nav .nav-ttl {
        display: block;
        font-size: 3.2rem;
        line-height: 2.5;
        padding: 2.5rem 0;
        color: #fff;
    }
    .global-nav .global-menu > li > .nav-ttl {
        padding-bottom: 0;
    }
    .global-nav .cat-menu .nav-ttl {
        font-size: 2.8rem;
        line-height: 2;
        font-weight: 600;
        padding: 1.5rem 0 1.5rem 3.5rem;
    }
    .global-nav .cat-menu > li:not(:last-child) {
        border-bottom: 1px dashed #E0E0E0;
    }
    .global-nav .cat-child-menu {
        padding-bottom: 1.5rem;
    }
    .global-nav .cat-child-menu li a {
        font-size: 2.4rem;
        line-height: 2.1;
        color: #fff;
        padding-left: 6rem;
    }
    .global-nav .cat-grandchild-menu li a:before {
        content: "ー";
        color: #C0C2BD;
    }
}

@media only screen and (min-width: 900px) {
    .top-menu li a span {
        font-size: 1.2rem;
        padding: 0 0 0 2.6rem;
    }
    .top-menu li a span:before {
        width: 2rem;
        height: 2rem;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
    }
    .header.fix {
        display: grid;
        grid-template-columns: 1fr auto;
        column-gap: 2.8rem;
        border-bottom: 1px solid #D9D9D9;
        background-color: #fff;
        padding-right: 7rem;
    }
    .header.fix .fix-only {
        display: block;
    }
    .header.fix .contact.pc-only,
    .header.fix .logo {
        display: none;
    }
    .header.fix .header-top {
        order: 3;
        border-bottom: none;
    }
    .header.fix .top-menu li a {
        height: 4rem;
    }
    .header.fix .menu-btn {
        display: block;
        width: 7rem;
        height: 7rem;
    }
    .header.fix .menu-btn:before {
        font-size: 1.5rem;
        bottom: 1rem;
    }
    .header.fix .menu-btn > span:nth-of-type(2) {
        top: 2.5rem;
    }
    .header.fix .menu-btn > span:nth-of-type(3) {
        top: 3.5rem;
    }
    .header.fix .menu-btn.openNav > span:nth-of-type(3) {
        top: 40%;
    }
    .header.fix .header-mid {
        padding: 0 0 0 2.8rem;
        border: none;
        order: 1;
        display: flex;
        justify-content: flex-start;
        column-gap: 37rem;
    }
    .header.fix .fix-logo {
        width: 25.9rem;
        height: 7rem;
        display: grid;
        place-content: center;
    }
    .header.fix .fix-logo img {
        vertical-align: bottom;
        width: 100%;
        height: auto;
    }
    .header.fix .header-mid .contact-wrap,
    .header.fix .header-inner,
    .header.fix .global-nav {
        display: none;
    }
    .header.openNav .top-menu {
        display: flex;
    }
    .header.fix.openNav .header-inner {
        display: block;
        position: absolute;
        top: 7rem;
        right: 0;
        width: 34rem;
        height: 100vh;
        background-color: rgba(117,120,107,.8);
        padding: 5.6rem 0 3.3rem;
    }
    .header.openNav .global-nav {
        display: block;
        background-color: transparent;
    }
    .header.openNav .global-nav .global-menu {
        display: flex;
        flex-direction: column;
        text-align: right;
        padding: 0;
    }
    .header.openNav .global-nav .global-menu li a {
        color: #fff;
        padding: 0;
    }
    .header.openNav .global-nav .global-menu li a:hover {
        background: rgba(255,255,255,.3);
    }
    .header.openNav .global-nav .global-menu li a span {
        display: block;
        margin-right: 6.8rem;
        padding: 1.5rem 3rem 1.5rem 0;
        position: relative;
    }
    .header.openNav .global-nav .global-menu li a span:after {
        content: "";
        width: 1rem;
        height: 1rem;
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%) rotate(-45deg);
    }
    .header.fix.openNav .header-mid .contact-wrap {
        display: block;
        position: fixed;
        bottom: 3rem;
        right: 2.5rem;
        z-index: 1;
        color: #fff;
    }
    .header.fix.openNav .header-mid .contact-wrap .tel dt {
        border-bottom: 1px solid #fff;
        padding-bottom: 1rem;
        margin-bottom: 1rem;
    }
    .header-top {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0 3rem 0 6rem;
    }
    .header-top .txt {
        padding: 1.2rem 0 1.8rem;
        font-size: 1.4rem;
    }
    .header .menu-btn {
        display: none;
    }
    .header-mid {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0 6rem 1.4rem;
        column-gap: 2.8rem;
    }
    .header-mid .logo {
        width: 32rem;
    }
    .header-inner {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .header .global-nav {
        display: block;
        width: 100%;
        background-color: #75786B;
    }
    .header .global-nav .global-menu {
        max-width: none;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        column-gap: 5rem;
        border-top: none;
        padding: 0 2.8rem;
    }
    .header .global-nav .global-menu li a {
        display: block;
        font-size: 1.6rem;
        line-height: 2;
        padding: 1rem 2rem;
        color: #fff;
    }
    .header .global-nav .global-menu li a:hover {
        background-color: rgba(255,255,255,.3);
    }
}

/* contact-wrap */
.contact-wrap .tel {
    text-align: center;
    margin: 0;
}
.contact-wrap .tel dt {
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: .5rem;
}
.contact-wrap .tel dd {
    margin: 0;
}
.contact-wrap .tel dd a {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1;
}
.contact-wrap .tel dd a:before {
    content: "";
    width: 2.8rem;
    height: 2.8rem;
    background: url(https://shopnet.itembox.design/item/img/common/icon-tel.svg) 0 / contain no-repeat;
    display: inline-block;
    margin-right: 1rem;
}
.contact-wrap .tel dd .txt {
    font-size: 1.1rem;
    font-weight: 600;
    text-align: center;
    margin-top: .5rem;
}
.contact-wrap .tel dd .txt span {
    font-weight: 400;
    margin-left: 1em;
}

/* keyword-wrap */
.keyword-wrap {
    border: 1px solid #C0C2BD;
    border-radius: 1rem;
    position: relative;
}
.keyword-wrap:after {
    /* content: ""; */
    width: 1.6rem;
    height: 1.6rem;
    border-right: 1px solid #585B50;
    border-bottom: 1px solid #585B50;
    position: absolute;
    top: 17%;
    right: 4.2rem;
    transform: rotate(45deg);
}
.keyword-wrap select {
    background-color: #ECE9DE;
    border: none;
    border-radius: 1rem 1rem 0 0;
    padding: 0 8rem 0 2.4rem;
    font-size: 2.8rem;
    height: 8rem;
}
.keyword-wrap form {
    position: relative;
    width: 100%;
}
.keyword-wrap form input[type="text"] {
    background-color: #F5F6F7;
    border: none;
    border-radius: 1rem;
    /* border-radius: 0 0 1rem 1rem; */
    font-size: 2.8rem;
    padding: 0 8rem 0 2.4rem;
    width: 100%;
    height: 8rem;
}
.keyword-wrap form input::placeholder {
    color: #000;
}
.keyword-wrap form button[type="submit"] {
    text-indent: -10000px;
    border: none;
    padding: 0;
    display: inline-block;
    background: url(https://shopnet.itembox.design/item/img/common/icon-search.svg) 0 / contain no-repeat;
    width: 4rem;
    height: 4rem;
    position: absolute;
    right: 3rem;
    top: 50%;
    /* top: 72%; */
    transform: translateY(-50%);
}
@media only screen and (min-width: 900px) {
    .keyword-wrap {
        border-radius: .5rem;
    }
    .keyword-wrap:after {
        width: 1rem;
        height: 1rem;
        top: 30%;
        right: initial;
        left: 14rem;
    }
    .keyword-wrap form {
        display: block;
        width: 60rem;
        /* display: grid; */
        grid-template-columns: 18rem 42rem;
    }
    .keyword-wrap select {
        border-radius: .5rem 0 0 .5rem;
        font-size: 1.4rem;
        height: 4rem;
    }
    .keyword-wrap form input[type="text"] {
        font-size: 1.4rem;
        border-radius: 0 .5rem .5rem 0;
        height: 4rem;
    }
    .keyword-wrap form button[type="submit"] {
        width: 2rem;
        height: 2rem;
        top: 50%;
    }
} 

/* sidebar */
.sidebar {
    width: 68rem;
    margin: auto;
}
.fs-l-main .sidebar .bnr-list {
    display: grid;
    row-gap: 1rem;
    margin-bottom: 4rem;
}
.sidebar .bnr-list img {
    width: 100%;
    height: auto;
}
.side-nav {
    background-color: #F7F7F7;
    border-radius: 1.5rem;
    padding: 2rem 6rem 1rem;
    margin-bottom: 4rem;
}
.side-nav .cat-menu > li {
    padding: 2rem 0;
}
.side-nav .cat-menu > li:not(:last-child) {
    border-bottom: 1px solid #E0E0E0;
}
.side-nav .nav-ttl {
    font-size: 2.8rem;
    font-weight: 600;
    cursor: pointer;
    padding-left: 6rem;
    position: relative;
}
.side-nav .nav-ttl:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    background-position: 0;
    background-size: contain;
    background-repeat: no-repeat;
}
.side-nav .cat-post .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-post.svg);
    width: 2.9rem;
    height: 4rem;
    left: .5rem;
}
.side-nav .cat-delivery-box .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-delivery-box.svg);
    width: 2.5rem;
    height: 3.6rem;
    left: 1rem;
}
.side-nav .cat-pole .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-pole.svg);
    width: 1.7rem;
    height: 3.8rem;
    left: 1.3rem;
}
.side-nav .cat-name .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-name.svg);
    width: 3.6rem;
    height: 1.5rem;
    left: .2rem;
}
.side-nav .cat-water .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-water.svg);
    width: 3.1rem;
    height: 3.5rem;
    left: .5rem;
}
.side-nav .cat-garden-light .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-light.svg);
    width: 3.3rem;
    height: 3.5rem;
}
.side-nav .cat-fence .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-fence.svg);
    width: 4.1rem;
    height: 2.1rem;
}
.side-nav .cat-gate .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-gate.svg);
    width: 3.9rem;
    height: 2.3rem;
}
.side-nav .cat-nureen .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-nureen.svg);
    width: 4.1rem;
    height: 1.7rem;
}
.side-nav .cat-storage .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-storage.svg);
    width: 3.1rem;
    height: 2.9rem;
    left: .5rem;
}
.side-nav .cat-parking .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-parking.svg);
    width: 2.1rem;
    height: 3.1rem;
    left: 1rem;
}
.side-nav .cat-carport .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-carport.svg);
    width: 3.3rem;
    height: 3.5rem;
}
.side-nav .cat-garage .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-garage.svg);
    width: 4.1rem;
    height: 3.1rem;
}
.side-nav .cat-wooddeck .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-wooddeck.svg);
    width: 4.4rem;
    height: 1.1rem;
}
.side-nav .cat-garden-furniture .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-garden-furniture.svg);
    width: 4.5rem;
    height: 2.3rem;
}
.side-nav .cat-garden-kitchen .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-garden-kitchen.svg);
    width: 2.5rem;
    height: 3.7rem;
    left: 1rem;
}
.side-nav .cat-garden .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-garden.svg);
    width: 3.5rem;
    height: 3.2rem;
}
.side-nav .cat-diy .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-diy.svg);
    width: 3.6rem;
    height: 2.4rem;
}
.side-nav .cat-gardening .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-gardening.svg);
    width: 2.4rem;
    height: 3.2rem;
    left: 1rem;
}
.side-nav .cat-other .nav-ttl:after {
    background-image: url(https://shopnet.itembox.design/item/img/common/icon-other.svg);
    width: 2.4rem;
    height: 3.2rem;
    left: 1.5rem;
}
.fs-l-main .sidebar .side-nav .cat-child-menu {
    margin-top: 2rem;
    padding-left: 6rem;
}
.side-nav .cat-child-menu > li > a {
    font-size: 2.4rem;
    line-height: 2;
}
.side-nav .cat-grandchild-menu > li > a {
    font-size: 2.2rem;
    line-height: 2;
}
.side-nav .cat-grandchild-menu > li > a:before {
    content: "ー";
    color: #C0C2BD;
}
.fs-l-main .sidebar .side-nav + .bnr-list {
    width: 56rem;
    margin: auto;
}
@media only screen and (max-width: 899px) {
    .side-nav .nav-ttl.ac-menu:before {
        background: url(https://shopnet.itembox.design/item/img/common/icon-plus.svg) 0 / contain no-repeat;
    }
    .side-nav .nav-ttl.ac-menu.active:before {
        background: url(https://shopnet.itembox.design/item/img/common/icon-minus.svg) 0 / contain no-repeat;
    }
}
@media only screen and (min-width: 900px) {
    .sidebar {
        width: 25rem;
        margin: 0;
    }
    .fs-l-main .sidebar .bnr-list {
        margin-bottom: 3rem;
    }
    .side-nav {
        padding: 1rem 1.5rem 0;
        margin-bottom: 3rem;
    }
    .side-nav .cat-menu > li {
        padding: 1.5rem 0;
    }
    .side-nav .nav-ttl {
        font-size: 1.4rem;
        padding-left: 3rem;
        letter-spacing: 0;
        display: block;
        margin: .5rem 0;
    }
    .side-nav .cat-post .nav-ttl:after {
        width: 1.5rem;
        height: 2rem;
    }
    .side-nav .cat-delivery-box .nav-ttl:after {
        width: 1.3rem;
        height: 1.8rem;
    }
    .side-nav .cat-pole .nav-ttl:after {
        width: .8rem;
        height: 1.9rem;
        left: 1.1rem;
    }
    .side-nav .cat-name .nav-ttl:after {
        width: 1.8rem;
        height: .7rem;
    }
    .side-nav .cat-water .nav-ttl:after {
        width: 1.5rem;
        height: 1.8rem;
    }
    .side-nav .cat-garden-light .nav-ttl:after {
        width: 1.7rem;
        height: 1.7rem;
    }
    .side-nav .cat-fence .nav-ttl:after {
        width: 2.1rem;
        height: 1.1rem;
    }
    .side-nav .cat-gate .nav-ttl:after {
        width: 2rem;
        height: 1.2rem;
    }
    .side-nav .cat-nureen .nav-ttl:after {
        width: 2rem;
        height: .8rem;
    }
    .side-nav .cat-storage .nav-ttl:after {
        width: 1.6rem;
        height: 1.5rem;
    }
    .side-nav .cat-parking .nav-ttl:after {
        width: 1rem;
        height: 1.6rem;
    }
    .side-nav .cat-carport .nav-ttl:after {
        width: 1.6rem;
        height: 1.7rem;
    }
    .side-nav .cat-garage .nav-ttl:after {
        width: 2rem;
        height: 1.6rem;
    }
    .side-nav .cat-wooddeck .nav-ttl:after {
        width: 2.2rem;
        height: .5rem;
    }
    .side-nav .cat-garden-furniture .nav-ttl:after {
        width: 2.3rem;
        height: 1.2rem;
    }
    .side-nav .cat-garden-kitchen .nav-ttl:after {
        width: 1.3rem;
        height: 1.8rem;
    }
    .side-nav .cat-garden .nav-ttl:after {
        width: 1.7rem;
        height: 1.6rem;
    }
    .side-nav .cat-diy .nav-ttl:after {
        width: 1.7rem;
        height: 1.2rem;
    }
    .side-nav .cat-gardening .nav-ttl:after {
        width: 1.2rem;
        height: 1.6rem;
    }
    .side-nav .cat-other .nav-ttl:after {
        width: 1.2rem;
        height: 1.6rem;
    }
    .fs-l-main .sidebar .side-nav .cat-child-menu {
        padding-left: 3rem;
        margin-top: 1rem;
    }
    .side-nav .cat-child-menu > li > a {
        font-size: 1.4rem;
    }
    .side-nav .cat-child-menu li a:hover {
        color: #8FC31F;
    }
    .side-nav .cat-grandchild-menu > li > a {
        font-size: 1.2rem;
    }
    .fs-l-main .sidebar .side-nav + .bnr-list {
        width: 100%;
    }
}

/* SP fix-nav, footer-bnr */
@media only screen and (max-width: 899px) {
    #fix-nav {
        width: 100%;
        background-color: #fff;
        box-shadow: 0 0 1.5rem rgba(0, 0, 0, .2);
        padding: 1rem 1.6rem;
    }
    #fix-nav .fix-menu {
        display: grid;
        grid-template-columns: repeat(2,1fr);
        column-gap: 1.2rem;
    }
    #fix-nav .fix-menu li a {
        display: grid;
        place-content: center;
        height: 6rem;
        background-color: #9BADB8;
        border-radius: 1rem;
    }
    #fix-nav .fix-menu li a span {
        font-weight: 600;
        letter-spacing: 0;
        position: relative;
        padding-left: 4.4rem;
        color: #fff;
    }
    #fix-nav .fix-menu li a span:before {
        content: "";
        width: 3.6rem;
        height: 3.6rem;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 0;
    }
    #fix-nav .fix-menu li.mail a span {
        font-size: 2.4rem;
    }
    #fix-nav .fix-menu li.mail a span:before {
        background: url(https://shopnet.itembox.design/item/img/common/icon-mail-g.svg) 0 / contain no-repeat;
    }
    #fix-nav .fix-menu li.tel a span {
        font-size: 3.2rem;
    }
    #fix-nav .fix-menu li.tel a span:before {
        background: url(https://shopnet.itembox.design/item/img/common/icon-tel-g.svg) 0 / contain no-repeat;
    }
}

/* footer */
.footer dl, .footer dd, .footer ul, .footer p {
    margin: 0;
}
.footer ul {
    list-style: none;
    padding: 0;
}

/* footer-guide */
.footer-guide {
    background-color: #F7F7F7;
    padding: 5.8rem 3rem 8rem;
}
.footer-guide .ttl {
    text-align: center;
    font-size: 4.4rem;
    font-weight: 600;
    margin: 0 0 5.8rem;
}
.footer-guide .col-wrap {
    display: grid;
    row-gap: 2rem;
    margin-bottom: 6rem;
}
.footer-guide .col-item {
    background-color: #fff;
    padding: 6rem 4rem;
}
.footer-guide .col-item > dl > dt {
    font-size: 3.6rem;
    font-weight: 600;
    padding-left: 8rem;
    position: relative;
    margin-bottom: 4rem;
}
.footer-guide .col-item > dl > dt:before {
    content: "";
    width: 6rem;
    height: 6rem;
    position: absolute;
    top: -.5rem;
    left: 0;
}
.footer-guide .col-item:first-child > dl > dt:before {
    background: url(https://shopnet.itembox.design/item/img/common/icon-payment.svg) 0 / contain no-repeat;
}
.footer-guide .col-item:last-child > dl > dt:before {
    background: url(https://shopnet.itembox.design/item/img/common/icon-shipment.svg) 0 / contain no-repeat;
}
.footer-guide .col-item dd ul {
    font-size: 2.8rem;
    line-height: 2;
    display: grid;
    row-gap: 5rem;
}
.footer-guide .col-item dd ul li .bg-wrap {
    background-color: #F7F7F7;
    padding: 3.2rem 3.8rem;
    margin-top: 2rem;
}
.footer-guide .col-item dd ul li .bg-wrap dl {
    display: flex;
}
.footer-guide .col-item dd ul li .bg-wrap dt {
    width: 5.5em;
    position: relative;
}
.footer-guide .col-item dd ul li .bg-wrap dt:after {
    content: "：";
    position: absolute;
    top: 0;
    right: 0;
}
.footer-guide .col-item dd ul li .bg-wrap dd {
    width: calc(100% - 5.5em);
}
.footer-guide .col-item dd ul li .subttl {
    font-weight: 600;
}
.footer-guide .col-item dd ul li .img {
    display: block;
    margin: 2rem 0 0;
}
.footer-guide .col-item dd ul li .img img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}
.footer-guide .col-item dd .txt {
    font-size: 2.8rem;
    line-height: 2;
}
.footer-guide .btn-more {
    width: 64rem;
    margin: auto;
}
@media only screen and (min-width: 900px) {
    .footer-guide {
        padding: 8.7rem 0 8.4rem;
    }
    .footer-guide .ttl {
        font-size: 3.2rem;
    }
    .footer-guide .col-wrap {
        width: 120rem;
        grid-template-columns: repeat(2,1fr);
        column-gap: 3rem;
        margin: 4rem auto 5.6rem;
    }
    .footer-guide .col-item {
        padding: 5rem 6rem
    }
    .footer-guide .col-item > dl > dt {
        font-size: 2.4rem;
        padding-left: 5.4rem;
    }
    .footer-guide .col-item > dl > dt:before {
        width: 4rem;
        height: 4rem;
    }
    .footer-guide .col-item dd ul {
        font-size: 1.4rem;
        row-gap: 4rem;
    }
    .footer-guide .col-item dd ul li .bg-wrap {
        padding: 1.6rem;
    }
    .footer-guide .col-item dd ul li .subttl {
        font-size: 1.5rem;
        margin-bottom: .5rem;
    }
    .footer-guide .col-item dd ul li .img {
        margin: 1rem 0 0;
    }
    .footer-guide .col-item dd ul li:first-child .img {
        width: 37.9rem;
    }
    .footer-guide .col-item dd ul li:last-child .img {
        width: 32.8rem;
    }
    .footer-guide .col-item dd .txt {
        font-size: 1.4rem;
    }
    .footer-guide .btn-more.arrow-b {
        width: 32rem;
        padding: 1.4rem 4rem 1.4rem 1.9rem;
    }
}

/* footer-contact  */
.footer-contact {
    background: url(https://shopnet.itembox.design/item/img/common/bg-footer-top_sp.png) 0 / 100% 100% no-repeat;
    padding: 9.4rem 7rem;
    text-align: center;
}
.footer-contact .ttl {
    color: #fff;
    font-size: 4.4rem;
    font-weight: 600;
    margin: 0 0 6rem;
    letter-spacing: 0;
}
.footer-contact > .txt {
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 0;
    color: #fff;
    position: relative;
    margin-bottom: 2rem;
}
.footer-contact > .txt:before,
.footer-contact > .txt:after {
    content: "";
    width: 4.4rem;
    height: 4.4rem;
    position: absolute;
    bottom: 1rem;
}
.footer-contact > .txt:before {
    background: url(https://shopnet.itembox.design/item/img/common/icon-slash-left.svg) 0 / contain no-repeat;
    left: 0;
}
.footer-contact > .txt:after {
    background: url(https://shopnet.itembox.design/item/img/common/icon-slash-right.svg) 0 / contain no-repeat;
    right: 0;
}
.footer-contact > .txt strong {
    color: #FEF263;
}
.footer-contact .inner .ttl span:before {
    content: "";
    width: 19rem;
    height: 8.8rem;
    background: url(https://kknaruto.itembox.design/item/img/common/icon-shipping.svg) 0 / contain no-repeat;
    position: absolute;
    top: 3.5rem;
    left: 50%;
    transform: translateX(-50%);
}
.footer-contact-wrap {
    display: grid;
    row-gap: 2rem;
}
.footer-contact-wrap dt {
    background-color: #E0E0E0;
    border-radius: 2rem 2rem 0 0;
    font-size: 2.8rem;
    font-weight: 600;
    padding: 2rem 0;
}
.footer-contact-wrap dd {
    background-color: #fff;
    border-radius: 0 0 2rem 2rem;
    padding: 2.6rem 0;
}
.footer-contact-wrap dd a {
    font-weight: 500;
    padding-left: 6rem;
    position: relative;
}
.footer-contact-wrap .tel-wrap dd a {
    font-size: 6rem;
    line-height: 1;
}
.footer-contact-wrap .mail-wrap dd a {
    font-size: 4rem;
}
.footer-contact-wrap dd a:before {
    content: "";
    width: 5rem;
    height: 5rem;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    position: absolute;
}
.footer-contact-wrap .tel-wrap dd a:before {
    background: url(https://shopnet.itembox.design/item/img/common/icon-tel.svg) 0 / contain no-repeat; 
}
.footer-contact-wrap .mail-wrap dd a:before {
    background: url(https://shopnet.itembox.design/item/img/common/icon-mail.svg) 0 / contain no-repeat; 
}
.footer-contact-wrap dd .txt {
    font-size: 2.4rem;
    font-weight: 400;
    margin-top: .5rem;
}
.footer-contact-wrap dd .txt strong {
    margin-right: 1em;
    font-weight: 600;
}
@media only screen and (min-width: 900px) {
    .footer-contact {
        background: url(https://shopnet.itembox.design/item/img/common/bg-footer-top.png) center / cover no-repeat;
        padding: 7rem 2.8rem 6.9rem;
        text-align: center;
    }
    .footer-contact .ttl {
        font-size: 3.1rem;
    }
    .footer-contact > .txt {
        font-size: 1.6rem;
        letter-spacing: inherit;
        display: inline-block;
        padding: 0 4.5rem;
    }
    .footer-contact > .txt strong {
        font-size: 2rem;
        margin-right: .5em;
    }
    .footer-contact > .txt:before, .footer-contact > .txt:after {
        bottom: 1rem;
        width: 2.4rem;
        height: 2.4rem;
    }
    .footer-contact-wrap {
        grid-template-columns: repeat(2,50rem);
        place-content: center;
        column-gap: 2rem;
    }
    .footer-contact-wrap dt {
        font-size: 1.8rem;
    }
    .footer-contact-wrap .tel-wrap dd a {
        font-size: 3.6rem;
    }
    .footer-contact-wrap .mail-wrap dd a {
        font-size: 2.5rem;
    }
    .footer-contact-wrap dd a {
        padding-left: 4rem;
    }
    .footer-contact-wrap dd a:before {
        width: 2.8rem;
        height: 2.8rem;
    }
    .footer-contact-wrap dd .txt {
        font-size: 1.2rem;
    }
}

/* footer-btm */
.footer-btm {
    background-color: #8A8C89;   
}
.footer-btm .inner {
    display: flex;
    flex-direction: column-reverse;
}
.calender-wrap {
    color: #fff;
    text-align: center;
    padding: 9rem 0 13rem;
}
table.calender {
    width: 50rem;
    margin: 0 auto 5rem;
}
table.calender .month-ttl {
    font-size: 3.2rem;
    font-weight: 600;
    color: #fff;
    padding-bottom: 2rem;
}
/* 曜日タイトル */
table.calender tr.headline td {
    font-size: 2.6rem;
    font-weight: 600;
    color: #373A31;
    background-color: #F2F1F1;
    border-right: 1px solid #E0E0E0;
    padding: 2.4rem 0;
    line-height: 1;
}
/* 日にち */
table.calender td {
    font-size: 2.6rem;
    color: #333;
    background-color: #fff;
    border-bottom: 1px solid #E0E0E0;
    border-right: 1px solid #E0E0E0;
    line-height: 7rem;
}
/* 本日 */
table.calender td .Today {
    background-color: #BDEAFE;
}
/* 休業日 */
table.calender td .Sat,
table.calender td .Sun,
table.calender td .Holyday {
    color: #E44B4A;
}
/* 翌月の日にち */
table.calender td .backward {
    color: #ddd;
}
.footer .calender-color {
    display: flex;
    justify-content: center;
    margin-bottom: 4rem;
    column-gap: 4.8rem;
}
.calender-color li {
    padding-left: 6rem;
    position: relative;
}
.calender-color li:before {
    content: "";
    width: 4rem;
    height: 4rem;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.calender-color li.red:before {
    background-color: #E44B4A;
}
.calender-color li.blue:before {
    background-color: #BDEAFE;
}
.footer-nav {
    padding-bottom: 12rem;
    text-align: center;
}
.footer-nav .footer-menu {
    display: grid;
    row-gap: 2rem;
    margin-bottom: 10rem;
}
.footer-nav .footer-menu a,
.footer-nav .sns-menu a {
    font-size: 2.8rem;
    line-height: 1.8;
    color: #fff; 
}
.footer-nav .sns-menu a {
    padding-left: 7.8rem;
    position: relative;
}
.footer-nav .sns-menu a:before {
    content: "";
    width: 5.4rem;
    height: 5.4rem;
    background: url(https://shopnet.itembox.design/item/img/common/icon-instagram.svg) 0 / contain no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.copyright {
    text-align: center;
    height: 8rem;
    display: grid;
    place-content: center;
}
.copyright small {
    font-size: 2.2rem;
    letter-spacing: 0;
}
@media only screen and (min-width: 900px) {
    .footer-btm {
        padding: 10rem 0;
    }
    .footer-btm .inner {
        width: 120rem;
        margin: auto;
        display: grid;
        grid-template-columns: 1fr 65rem;
    }
    .calender-wrap {
        padding: 0;
    }
    #calender {
        display: flex;
        column-gap: 5rem;
    }
    table.calender {
        width: 30rem;
        margin-bottom: 2.8rem;
    }
    table.calender .month-ttl {
        font-size: 1.6rem;
    }
    table.calender tr.headline td {
        font-size: 1.6rem;
        padding: 1.4rem 0;
    }
    table.calender td {
        font-size: 1.7rem;
        line-height: 4.4rem;
    }
    .calender-wrap .txt-wrap {
        display: flex;
        justify-content: space-between;
    }
    .calender-color li {
        padding-left: 3rem;
    }
    .calender-color li:before {
        width: 2rem;
        height: 2rem;
    }
    .footer-nav {
        text-align: left;
        padding-bottom: 0;
    }
    .footer-nav .footer-menu {
        margin: 0;
        width: auto;
        row-gap: 3rem;
        padding: 3rem 0 14rem;
    }
    .footer-nav .footer-menu a {
        font-size: 1.4rem;
    }
    .footer-nav .sns-menu a {
        font-size: 1.4rem;
        padding-left: 4rem;
    }
    .footer-nav .sns-menu a:before {
        width: 2.7rem;
        height: 2.7rem;
    }
    .copyright {
        height: 4rem;
    }
    .copyright small {
        font-size: 1.2rem;
    }
}

/* pagetop */
#pagetop {
    font-size: 2.4rem;
    text-align: center;
    padding: 8rem 0 0;
    display: block;
    right: 3rem;
    z-index: 9;
}
#pagetop:before {
    content: "";
    width: 7.2rem;
    height: 7.2rem;
    background: url(https://shopnet.itembox.design/item/img/common/icon-pagetop.svg) 0 / 100% 100% no-repeat;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
@media only screen and (min-width: 900px) {
    #pagetop {
        font-size: 1.2rem;
        padding: 6.5rem 0 0;
        cursor: pointer;
        display: none;
    }
    #pagetop.scroll {
        bottom: 3rem !important;
    }
    #pagetop:before {
        width: 6rem;
        height: 6rem;
    }
}

/* layout */
.fs-l-main {
    display: block;
    padding: 0;
    margin: 0 0 14rem;
    max-width: none;
}
.fs-l-main .sidebar ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
@media only screen and (max-width: 899px) {
    .fs-body-custom .col2-main {
        margin-bottom: 15rem;
    }
}

@media only screen and (min-width: 900px) {
    .fs-l-main {
        margin-bottom: 13rem;
    }
    .col2-wrap {
        width: 150rem;
        margin: auto;
        display: grid;
        grid-template-columns: 25rem 1fr;
        grid-template-areas: "side main";
        column-gap: 8rem;
    }
    .fs-l-main .sidebar {
        grid-area: side;
    }
    .fs-l-main .sidebar .side-menu-flex {
        display: flex;
        flex-direction: column-reverse;
    }
    .fs-l-main .sidebar .side-menu-flex .side-nav {
        border-bottom: none;
        margin-bottom: 2rem;
    }
    .fs-l-main .col2-main {
        grid-area: main;
    }
}

/* ttl */
.underline-ttl {
    display: flex;
    flex-direction: column-reverse;
    font-size: 4.4rem;
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    margin: 0 0 12rem;
}
.underline-ttl span {
    display: block;
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1;
    position: relative;
    padding-bottom: 1rem;
    margin-bottom: 3.5rem;
}
.underline-ttl span:after {
    content: "";
    width: 7.6rem;
    height: 2px;
    background-color: #373A31;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
}
.sideline-ttl {
    width: 64rem;
    margin: 0 auto 5.4rem;
    display: flex;
    flex-direction: column-reverse;
    row-gap: 2rem;
    font-size: 3.6rem;
    font-weight: 600;
}
.sideline-ttl span {
    display: block;
    font-size: 2.4rem;
    font-weight: 500;
    padding-left: 9.6rem;
    position: relative;
}
.sideline-ttl span:before {
    content: "";
    width: 8rem;
    height: 1px;
    background-color: #707070;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
@media only screen and (min-width: 900px) {
    .underline-ttl {
        font-size: 3.2rem;
        margin-bottom: 3.6rem;
    }
    .underline-ttl span {
        font-size: 1.8rem;
        margin-bottom: 2rem;
    }
    .underline-ttl span:after {
        width: 3.8rem;
    }
    .sideline-ttl {
        font-size: 3rem;
        width: 100%;
    }
    .sideline-ttl span {
        font-size: 1.4rem;
    }
}

/* btn */
.btn-more {
    display: block;
    position: relative;
    font-size: 2.8rem;
    background-color: #fff;
}
.link-more {
    font-size: 2.8rem;
    padding-right: 6rem;
    position: relative;
    display: block;
    width: max-content;
    margin: 2rem 0 2rem auto;
}
.btn-more:after,
.link-more:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.btn-more.arrow-b {
    border: 1px solid #1A1311;
    border-radius: 7.2rem;
    padding: 2.8rem 3.3rem 2.8rem 4rem;
}
.btn-more.arrow-b:after {
    width: 4rem;
    height: 4rem;
    background: url(https://shopnet.itembox.design/item/img/common/arrow-btn.svg) 0 / 100% 100% no-repeat;
    right: 2.8rem;
}
.link-more:after {
    width: 4rem;
    height: 4rem;
    background: url(https://shopnet.itembox.design/item/img/common/arrow-wb.svg) 0 / 100% 100% no-repeat;
    right: 0;
}
.btn-flex {
    display: flex;
    flex-direction: column;
    row-gap: 4rem;
}

@media only screen and (min-width: 900px) {
    .btn-more.arrow-b {
        font-size: 1.4rem;
        padding: 1.6rem 4rem 1.6rem 3.8rem;
        width: 40rem;
        margin: auto;
    }
    .btn-more.arrow-b:after {
        width: 2rem;
        height: 2rem;
        right: 1.3rem;
    }
    .btn-more.arrow-b:hover {
        background-color: #8FC31F;
        border: 1px solid transparent;
        color: #fff;
    }
    .btn-more.arrow-b:hover:after {
        background: url(https://shopnet.itembox.design/item/img/common/arrow-gre.svg) 0 / 100% 100% no-repeat;
    }
    .link-more {
        font-size: 1.4rem;
        padding-right: 3rem;
        margin: 1rem 0;
    }
    .link-more:after {
        width: 2rem;
        height: 2rem;
    }
    .link-more:hover {
        color: #8FC31F;
    }
    .link-more:hover:after {
        background: url(https://shopnet.itembox.design/item/img/common/arrow-gr.svg) 0 / 100% 100% no-repeat;
    }
    
    .btn-flex {
        flex-direction: row;
        justify-content: center;
        column-gap: 3.5rem;
    }
}

/* list */
.gdots-list {
    list-style: none;
    padding: 0;
    margin: 4rem 0 0;
}
.gdots-list li {
    position: relative;
    line-height: 2;
    padding-left: 3rem;
}
.gdots-list li:not(:last-child) {
    margin-bottom: 3rem;
}
.gdots-list li:before {
    content: "";
    width: 2rem;
    height: 2rem;
    background-color: #C0C2BD;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 2rem;
}
.gdots-list li.txt + li.txt {
    margin-top: 2rem;
}
.dots-list, .alpha-list, .num-list, .asta-list {
    list-style: none;
    padding-left: 0;
}
.dots-list li,
.alpha-list > li,
.num-list > li,
.asta-list > li {
    font-size: 2.8rem;
    line-height: 2;
    position: relative;
}
.dots-list li {
    padding-left: 3rem;
}
.alpha-list > li {
    padding-left: 8rem;
}
.num-list > li {
    padding-left: 6rem;
}
.asta-list > li {
    padding-left: 3rem;
}
.dots-list > li:before,
.alpha-list > li:before,
.num-list > li:before,
.asta-list > li:before {
    position: absolute;
    left: 0;
    top: 0;
}
.dots-list > li:before {
    content: "・";
}
.alpha-list > li:nth-child(1):before {
    content: "( A )";
}
.alpha-list > li:nth-child(2):before {
    content: "( B )";
}
.alpha-list > li:nth-child(3):before {
    content: "( C )";
}
.num-list > li:nth-child(1):before {
    content: "１）";
}
.num-list > li:nth-child(2):before {
    content: "２）";
}
.num-list > li:nth-child(3):before {
    content: "３）";
}
.asta-list > li:before {
    content: "※";
}
.alpha-list > li + li {
    margin-top: 4rem;
}

@media only screen and (min-width: 900px) {
    .gdots-list {
        margin: 2rem 0 0;
    }
    .gdots-list li {
        padding-left: 1.5rem;
    }
    .gdots-list li:not(:last-child) {
        margin-bottom: 1.5rem;
    }
    .gdots-list li:before {
        width: 1rem;
        height: 1rem;
        top: 1rem;
    }
    .gdots-list li.txt + li.txt {
        margin-top: 1rem;
    }
    .dots-list {
        margin-left: .5rem;
    }
    .dots-list li {
        font-size: 1.4rem;
        padding-left: 1.5rem;
    }
    .alpha-list, .num-list {
        margin-bottom: 3rem;
    }
    .alpha-list > li,
    .num-list > li {
        font-size: 1.4rem;
        padding-left: 4rem;
    }
    .asta-list > li {
        font-size: 1.4rem;
        padding-left: 1.5rem;
    }
    .alpha-list > li + li {
        margin-top: 3rem;
    }
}
    
/* ac-menu */
@media only screen and (max-width: 899px) {
    .ac-menu {
        position: relative;
    }
    .ac-menu:before {
        content: "";
        width: 2.4rem;
        height: 2.4rem;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
    }
    .ac-menu:before {
        background: url(https://shopnet.itembox.design/item/img/common/icon-plus-w.svg) 0 / contain no-repeat;
    }
    .ac-menu.active:before {
        background: url(https://shopnet.itembox.design/item/img/common/icon-minus-w.svg) 0 / contain no-repeat;
    }
    .ac-toggle {
        display: none;
    }
    .ac-menu.active + .ac-toggle {
        display: block;
    }
}

/* cp-box */
@media only screen and (max-width: 899px) {
    .cp_box {
        position: relative;
    }
    .cp_box label {
	position: absolute;
	z-index: 1;
	bottom: 0;
	width: 100%;
	height: 28rem; /* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
        border-radius: 0 0 2rem 2rem;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .9) 40%, rgba(255,255,255,1) 98% );
    }
    .cp_box input:checked + label {
        background: inherit; /* 開いた時にグラデーションを消す */
        height: auto;
    }
    .cp_box label:after {
        content: 'OPEN';
        color: #9BADB8;
        font-size: 3.2rem;
        font-family: din-2014, sans-serif;
        position: absolute;
        z-index: 2;
        bottom: 5rem;
        left: calc(50% - 2rem);
        transform: translateX(-50%);
    }
    .cp_box label:before {
        content: "";
        width: 4rem;
        height: 4rem;
        background: url(https://shopnet.itembox.design/item/img/common/arrow-open.svg) 0 / contain no-repeat;
        position: absolute;
        bottom: 5.5rem;
        left: calc(50% + 5rem);
        transform: translateX(-50%);
    }
    .cp_box input {
        display: none;
    }
    .cp_box .cp_container {
        overflow: hidden;
        height: 188rem; /* 開く前に見えている部分の高さ */
        transition: all 0.5s;
        padding: 8rem 3rem 16rem;
    }
    .cp_box input:checked + label:after {
        font-family: din-2014, sans-serif;
        content: 'CLOSE';
        left: calc(50% - 3rem);
    }
    .cp_box input:checked + label:before {
        background: url(https://shopnet.itembox.design/item/img/common/arrow-close.svg) 0 / contain no-repeat;
        left: calc(50% + 6rem);
    }
    .cp_box input:checked ~ .cp_container {
        height: auto;
        transition: all 0.5s;
    }
}

/* information-wrap */
.information-wrap .inner {
    width: 72rem;
    /*margin: 0 auto 13rem;*/
	margin: 3rem auto;
}
.information-wrap .info-txt {
    display: block;
    border: 1px solid #373A31;
    position: relative;
    margin-bottom: 8rem;
}
.information-wrap .info-txt:after {
    content: "";
    width: 4rem;
    height: 4rem;
    background: url(https://shopnet.itembox.design/item/img/common/icon-attention.svg) 0 / contain no-repeat;
    position: absolute;
    top: 3.5rem;
    left: 3rem;
}
.information-wrap .info-txt > span {
    display: block;
    padding: 3.4rem 3rem 3.4rem 9.4rem;
    line-height: 1.8;
    letter-spacing: .05em;
}
.information-wrap .top-bnr-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2,1fr);
    column-gap:3rem;
    row-gap: 3.2rem;
    text-align: center;
}
.information-wrap .top-bnr-list .img img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
    margin-bottom: 1.5rem;
}
.information-wrap .top-bnr-list li {
	line-height: 0;
}
.information-wrap .top-bnr-list li span {
    /*font-size: 2.4rem;*/
	font-size: 2rem;
}
@media only screen and (min-width: 900px) {
    .information-wrap .inner {
        width: 150rem;
        margin: 0 auto 8rem;
    }
    .information-wrap .info-txt {
        width: 120rem;
        margin: 0 auto 5.5rem;
        text-align: center;
    }
    #fs_Top .information-wrap .info-txt {
        margin: 0 auto 3rem;
    }
    .information-wrap .info-txt > span {
        padding: 1rem 2rem;
        font-size: 1.6rem;
    }
    .information-wrap .info-txt:after {
        width: 2.6rem;
        height: 2.6rem;
        left: 4rem;
        top: 50%;
        transform: translateY(-50%);
    }
    .information-wrap .top-bnr-list {
        grid-template-columns: repeat(4, 1fr);
        column-gap: 1.3rem;
    }
    .information-wrap .top-bnr-list li span {
        font-size: 1.6rem;
    }
}

/* col2-bnr */
.col2-bnr {
    display: grid;
    row-gap: 3rem;
    width: 64rem;
    margin: 0 auto 16rem;
}
.col2-bnr img {
    width: 100%;
    height: auto;
}
@media only screen and (min-width: 900px) {
    .col2-bnr {
        grid-template-columns: repeat(2,1fr);
        column-gap: 2.9rem;
        width: 103rem;
        margin-bottom: 8rem;
    }
}

/* cta-bnr */
.cta-bnr {
    width: 68rem;
    margin: 0 auto 10rem;
}
.fs-body-category .cta-bnr.sp-only {
    margin: 0 auto 20rem;    
}
@media only screen and (min-width: 900px) {
    .cta-bnr {
        width: 80rem;
        margin: 0 auto 7rem;
    }
}

/* item-wrap */
.item-wrap {
    padding: 0;
    margin: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2,1fr);
}
.item-wrap li img {
    border: 1px solid #E0E0E0;
    margin-bottom: 2rem;
}
.item-wrap .item-maker {
    font-size: 2.4rem;
}
.item-wrap .item-ttl {
    font-size: 2.8rem;
    font-weight: 600;
    margin-bottom: 2rem;
}
.item-wrap .item-price {
    font-size: 2.8rem;
}
.item-wrap .item-price span {
    font-size: 2.4rem;
}
@media only screen and (min-width: 900px) {
    .item-wrap {
        grid-template-columns: repeat(4,1fr);
    }
    .item-wrap li img {
        margin-bottom: 1rem;
    }
    .item-wrap .item-maker {
        font-size: 1.2rem;
        margin: 1rem 0 0;
    }
    .item-wrap .item-ttl {
        font-size: 1.4rem;
        margin: .5rem 0 2rem;
    }
    .item-wrap .item-price {
        font-size: 1.4rem;
    }
    .item-wrap .item-price span {
        font-size: 1.2rem;
    }
}

/* ranking */
.item-wrap .slick-prev:before,
.item-wrap .slick-next:before {
    content: none;
}
.item-wrap .slick-prev, .item-wrap .slick-next {
    width: 4rem;
    height: 4rem;
    background-position: 0;
    background-size: contain;
    background-repeat: no-repeat;
    top: 100%;
}
.item-wrap .slick-prev {
    left: 1.6rem;
    background-image: url(https://shopnet.itembox.design/item/img/common/arrow-prev.svg);
}
.item-wrap .slick-next {
    right: 1.6rem;
    background-image: url(https://shopnet.itembox.design/item/img/common/arrow-next.svg);
}
@media only screen and (max-width: 899px) {
    .item-wrap .slick-dots {
        bottom: -.5rem;
        left: 50%;
        transform: translateX(-50%);
        width: 53rem;
    }
    .item-wrap .slick-dots li {
        width: 10%;
        height: 1px;
        background-color: #D9D9D9;
        margin: 0;
    }
    .item-wrap .slick-dots li.slick-active {
        background-color: #1A1311;
    }
    .item-wrap .slick-dots li button {
        width: 100%;
        height: 1px;
        padding: 0;
    }
    .item-wrap .slick-dots li button:before {
        content: none;
    }
}
@media only screen and (min-width: 900px) {
    .item-wrap .slick-prev, .item-wrap .slick-next {
        width: 3rem;
        height: 3rem;
        top: 35%;
    }
    .item-wrap .slick-prev {
        left: -3rem;
        background-image: url(https://shopnet.itembox.design/item/img/common/arrow-prev.svg);
    }
    .item-wrap .slick-next {
        right: -3rem;
        background-image: url(https://shopnet.itembox.design/item/img/common/arrow-next.svg);
    }
}

/* top ranking */
.top-ranking {
    width: 71rem;
    margin: 0 auto 14rem;
}
.top-ranking .ttl {
    text-align: center;
    display: flex;
    flex-direction: column-reverse;
    font-size: 4.4rem;
    font-weight: 600;
    row-gap: 2.6rem;
    margin: 0 0 4rem;
}
.top-ranking .ttl span {
    font-size: 2.8rem;
    width: 20rem;
    margin: auto;
    border-bottom: 1px solid #373A31;
    padding: 0 0 .5rem 5.2rem;
    position: relative;
}
.top-ranking .ttl span:before {
    content: "";
    width: 4.2rem;
    height: 2.6rem;
    background: url(https://shopnet.itembox.design/item/img/common/icon-crown.svg) 0 / contain no-repeat;
    position: absolute;
    top: .5rem;
    left: 0;
}
.top-ranking .txt {
    width: 64rem;
    margin: 0 auto 7rem;
    font-size: 3.2rem;
    line-height: 1.8;
    letter-spacing: .05em;
}
@media only screen and (max-width: 899px) {
    .top-ranking .item-wrap li.slick-slide {
        margin: 0 1.6rem;
        padding-bottom: 7.2rem;
    }
}
@media only screen and (min-width: 900px) {
    .top-ranking {
        width: 100%;
        margin: 0 auto 7rem;
    }
    .top-ranking .ttl {
        font-size: 3.2rem;
        margin: 0 0 3rem;
        row-gap: 1.7rem;
    }
    .top-ranking .ttl span {
        font-size: 1.8rem;
        width: 12.5rem;
        padding: 0 0 .5rem 3rem;
    }
    .top-ranking .ttl span:before {
        width: 2.2rem;
        height: 1.3rem;
    }
    .top-ranking .txt {
        width: 100%;
        text-align: center;
        font-size: 1.6rem;
        margin: 0 auto 5rem;
    }
}
.top-ranking .ranking-txt {
    height: 5rem;
    text-align: center;
    color: #fff;
}
.top-ranking .ranking-txt span.f-din {
    font-size: 4rem;
    font-weight: 500;
    position: relative;
    padding-left: 4.6rem;
}
.top-ranking .ranking-txt span.f-din:before {
    content: "";
    width: 3.7rem;
    height: 2.3rem;
    background: url(https://shopnet.itembox.design/item/img/common/icon-crown-w.svg) 0 / contain no-repeat;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}
.top-ranking .ranking-txt span:not(.f-din) {
    font-size: 2.4rem;
    font-weight: 600;
    margin-left: .3em;
}
.top-ranking .item-wrap li .ranking-txt {
    background-color: #C5C5C5;
    margin-bottom: 1rem;
}
.top-ranking .item-wrap li.rank01 .ranking-txt {
    background-color: #C1BA5A;
}
.top-ranking .item-wrap li.rank02 .ranking-txt {
    background-color: #9BADB8;
}
.top-ranking .item-wrap li.rank03 .ranking-txt {
    background-color: #AA7C41;
}
@media only screen and (min-width: 900px) {
    .top-ranking .item-wrap {
        column-gap: 5.8rem;
        row-gap: 4rem;
    }
    .top-ranking .item-wrap li a:hover {
        color: #8FC31F;
    }
    .top-ranking .ranking-txt {
        height: 2.5rem;
    }
    .top-ranking .ranking-txt span.f-din {
        font-size: 2rem;
        padding-left: 2.3rem;
        
        vertical-align: middle;
    }
    .top-ranking .ranking-txt span.f-din:before {
        width: 1.9rem;
        height: 1.2rem;
        top: 45%;
    }
    .top-ranking .ranking-txt span:not(.f-din) {
        font-size: 1.2rem;
        vertical-align: middle;
    }
}

/* faq */
#faq {
    width: 72rem;
    margin: 16rem auto 12rem;
    background-color: #F7F7F7;
    padding: 8rem 2rem;
}
#faq .ttl {
    text-align: center;
    font-size: 4.4rem;
    font-weight: 600;
}
#faq .ttl span {
    display: block;
    width: max-content;
    margin: 0 auto 2rem;
    font-size: 3.6rem;
    border-bottom: 2px solid #373A31; 
}
#faq .faq-wrap {
    margin-bottom: 8rem;
}
.faq-wrap .faq-item {
    background-color: #fff;
    border-radius: 5rem;
}
.faq-wrap .faq-item dt {
    padding: 3rem 5.8rem 3rem 9.2rem;
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.6;
}
.faq-wrap .faq-item dt.active {
    border-bottom: 2px dashed #E0E0E0;
}
.faq-wrap .faq-item dt:after,
.faq-wrap .faq-item dd:after {
    width: 5.2rem;
    height: 5.2rem;
    border-radius: .5rem;
    color: #fff;
    line-height: 5.2rem;
    font-family: din-2014, sans-serif;
    font-size: 3.2rem;
    position: absolute;
    left: 2rem;
    text-align: center;
}
.faq-wrap .faq-item dt:after {
    content: "Q";
    background-color: #9BADB8;
    top: 3rem;
}
.faq-wrap .faq-item dd:after {
    content: "A";
    background-color: #E0E0E0;
    top: 5rem;
}
.faq-wrap .faq-item dd .txt {
    line-height: 1.86;
    margin: 0;
}
.faq-wrap .faq-item dd .txt .red-txt {
    display: block;
}
.faq-wrap .faq-item dd .txt a {
    color: #1F96C3;
    text-decoration: underline;
    display: inline-block;
}
#fs_Top .faq-item .dots-list {
    margin: 1.5rem 0;
}
@media only screen and (max-width: 899px) {
    .faq-wrap .faq-item .ac-menu:before {
        background: url(https://shopnet.itembox.design/item/img/common/icon-plus.svg) 0 / contain no-repeat;
        right: 2rem;
    }
    .faq-wrap .faq-item .ac-menu.active:before {
        background: url(https://shopnet.itembox.design/item/img/common/icon-minus.svg) 0 / contain no-repeat;
        right: 2rem;
    }
    .faq-wrap .faq-item dd {
        display: none;
    }
    .faq-wrap .faq-item dt.active + dd {
        display: block;
        padding: 3rem 5.8rem 6rem 9.2rem;
        position: relative;
        margin: 0;
    }
    #faq .btn-more {
        width: 64rem;
        margin: auto;
    }
}
@media only screen and (min-width: 900px) {
    #faq {
        width: 100%;
        margin: 10rem auto 9rem;
        padding: 9rem 12rem 6rem;
    }
    #faq .ttl {
        font-size: 3.2rem;
        margin: 0 0 5rem;
    }
    #faq .ttl span {
        margin: 0 auto 2rem;
        font-size: 1.8rem;
    }
    #faq .faq-wrap {
        margin-bottom: 5rem;
    }
    .faq-wrap .faq-item {
        border-radius: 1.5rem;
    }
    .faq-wrap .faq-item dt {
        border-bottom: 2px dashed #E0E0E0;
        position: relative;
        font-size: 1.6rem;
        padding: 2.4rem 7rem 2.4rem 14rem;
    }
    .faq-wrap .faq-item dd {
        position: relative;
        padding: 2.8rem 7rem 2.8rem 14rem;
        margin: 0;
    }
    .faq-wrap .faq-item dt:after, .faq-wrap .faq-item dd:after {
        width: 4rem;
        height: 4rem;
        font-size: 2rem;
        line-height: 4rem;
        left: 7rem;
    }
    .faq-wrap .faq-item dt:after {
        top: 1.7rem;
    }
    .faq-wrap .faq-item dd:after {
        top: 2.5rem;
    }
    #fs_Top .faq-item .dots-list {
        margin: 0;
    }
    #faq .btn-more {
        width: 40rem;
        margin: auto;
    }
}

/* news */
#news {
    width: 72rem;
    margin: 0 auto 9rem;
}
#news .ttl-wrap {
    display: flex;
    align-items: flex-end;
    padding: 0 2rem 0 4rem;
    margin-bottom: 1rem;
}
#news .news-ttl {
    margin: 0;
    font-size: 2.3rem;
    font-weight: 600;
}
#news .news-ttl span {
    display: block;
    font-size: 6rem;
}
#news .link-more {
    margin: 0 0 0 auto;
}
#news .news-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
#news .news-list li {
    padding: 5rem 2rem;
}
#news .news-list li:not(:last-child) {
    border-bottom: 1px solid #C0C2BD;
}
#news .news-date {
    font-size: 2.8rem;
    line-height: 2;
}
#news .news-cat {
    font-size: 2.4rem;
    line-height: 4rem;
    background-color: #EDEDED;
    border-radius: .6rem;
    display: inline-block;
    padding: 0 4rem;
    margin-left: 2rem;
}
#news .news-list .txt {
    font-size: 2.8rem;
    line-height: 1.8;
    margin: 1rem 0 0;
}
#news .news-list .txt a {
    color: #3572b0;
    text-decoration: underline;
}
@media only screen and (min-width: 900px) {
    #news {
        width: 112rem;
        margin: 0 0 0 auto;
        display: grid;
    }
    .fs-body-top #news {
        grid-template-columns: 1fr 92rem;
    }
    #news .ttl-wrap {
        align-items: flex-start;
        flex-direction: column;
        justify-content: space-between;
        padding: 0 0 2rem;
        margin-bottom: 0;
    }
    #news .news-ttl {
        font-size: 1.4rem;
    }
    #news .news-ttl span {
        font-size: 4rem;
    }
    #news .link-more {
        margin: 0;
    }
    #news .news-list li {
        padding: 1.8rem 3rem 1.8rem 2.3rem;
    }
    #news .news-list li a:hover {
        color: #8FC31F;
    }
    #news .news-list li a:hover .news-cat {
        background-color: #8FC31F;
        color: #fff;
    }
    #news .news-date,
    #news .news-list .txt {
        font-size: 1.4rem;
    }
    #news .news-list article {
        display: grid;
        grid-template-columns: max-content max-content 1fr;
        align-items: center;
    }
    #news .news-cat {
        font-size: 1.2rem;
        line-height: 2.5rem;
        margin-right: 2rem;
        padding: 0 2rem;
    }
    #news .news-list .txt {
        margin: 0;
    }
}

