/* breadcrumb */
.fs-c-breadcrumb {
    background-color: #F5F6F7;
    margin: 0 0 10rem;
    padding: 2.4rem 4rem;
    display: flex;
}
.fs-c-breadcrumb__list {
    padding: 0;
    font-size: 2.2rem;
    line-height: 1.8;
}
.fs-c-breadcrumb__list li:first-child a {
    position: relative;
    padding-left: 3rem;
}
.fs-c-breadcrumb__list li:first-child a:before {
    content: "";
    width: 2.2rem;
    height: 2rem;
    background: url(https://kknaruto.itembox.design/item/img/common/icon-home.svg) 0 / contain no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.fs-c-breadcrumb__listItem + .fs-c-breadcrumb__listItem::before {
    content: "";
    width: 2rem;
    height: 1px;
    background-color: #1A1311;
    display: inline-block;
    vertical-align: middle;
    margin: 0 .5em;
}
@media only screen and (min-width: 900px) {
    .fs-c-breadcrumb {
        background-color: #fff;
        width: 150rem;
        margin: 0 auto 12rem;
        padding: 1.4rem 0;
    }
    .fs-c-breadcrumb__list {
        font-size: 1.2rem;
    }
    .fs-c-breadcrumb__list li:first-child a {
        padding-left: 1.8rem;
    }
    .fs-c-breadcrumb__list li:first-child a:before {
        width: 1.2rem;
        height: 1.1rem;
    }
}

/* ttl */
.page-ttl {
    font-size: 3.2rem;
    font-weight: 600;
    display: flex;
    flex-direction: column-reverse;
    text-align: center;
    margin: 0 0 10rem;
}
.page-ttl span {
    font-size: 7rem;
    font-weight: 500;
}
@media only screen and (min-width: 900px) {
    .page-ttl {
        font-size: 2.2rem;
        margin: 0 0 13.6rem;
    }
    .page-ttl span {
        font-size: 5rem;
    }
}

/* page-nav */
.page-nav {
    background-color: #F5F6F7;
    width: 68rem;
    margin: 0 auto 14rem;
    padding: 10%;
}
.page-nav .ttl {
    font-size: 3.2rem;
    text-align: center;
    margin: -2rem 0 5rem;
}
.page-nav .page-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    row-gap: 1.4rem;
}
.page-nav .page-menu li a {
    display: grid;
    background-color: #fff;
    padding: 2rem 3.4rem;
    position: relative;
    font-size: 2.8rem;
}
.page-nav .page-menu li a:after {
    content: "";
    width: 1.4rem;
    height: 1.4rem;
    border-right: 1px solid #1A1311;
    border-bottom: 1px solid #1A1311;
    top: 50%;
    right: 3.4rem;
    transform: translateY(-50%) rotate(-45deg);
    position: absolute;
}
@media only screen and (min-width: 900px) {
    .page-nav {
        width: 100%;
        margin: 0 auto 10rem;
        padding: 7.6rem 8.5rem;
    }
    .fs-body-category .page-nav {
        display: grid;
        grid-template-columns: auto 1fr;
        column-gap: 8rem;
        padding: 5.9rem 8.3rem 5.9rem 5.3rem;
    }
    .page-nav .ttl {
        font-size: 1.8rem;
        text-align: left;
        margin: .5rem 0 0;
    }
    .page-nav .page-menu {
        grid-template-columns: repeat(3,1fr);
        column-gap: 1rem;
        row-gap: 1rem;
        align-items: stretch;
    }
    .page-nav .page-menu li a {
        height: 100%;
        padding: 1.5rem 2.4rem 1.5rem 1.7rem;
        align-items: center;
        font-size: 1.4rem;
    }
    .fs-body-category .page-nav .page-menu li a {
        padding: 1.8rem 2.4rem 1.8rem 3rem;
    }
    .page-nav .page-menu li a:after {
        width: .7rem;
        height: .7rem;
        right: 1.7rem;
    }
}

/* article */
.article-wrap {
    width: 70rem;
    margin: 0 auto 14rem;
    scroll-margin-top: 11rem;
}
.article-wrap .article-ttl {
    font-size: 4.4rem;
    font-weight: 600;
    border-bottom: 1px solid #1A1311;
    padding: 0 3.2rem 2rem;
    margin: 0 0 4rem;
}
.article-wrap .inner {
    padding: 0 3.2rem;
}
.article-wrap .sec-ttl {
    font-size: 3.6rem;
    font-weight: 600;
    margin: 6rem 0 2rem;
    padding-top: 5rem;
    border-top: 1px solid #D9D9D9;
}
.article-wrap .sec-subttl {
    margin: 4rem 0 2rem;
    font-size: 2.8rem;
    font-weight: 600;
}
.article-wrap .sec-subttl + .txt,
.article-wrap .sec-subttl + .txt + .txt,
.article-wrap .sec-subttl + .ydots-list {
    padding-left: 4rem;
}
.article-wrap .txt {
    margin: 0;
    font-size: 2.8rem;
    line-height: 2;
}
.article-wrap .txt a {
    display: inline-block;
    text-decoration: underline;
    color: #3572b0;
    word-break: break-all;
}
.article-wrap .txt + .img {
    margin-top: 3rem;
    display: block;
}
.article-wrap .txt + .txt,
.article-wrap .txt + .btn-more {
    margin-top: 4rem;
}
.article-wrap .btn-more {
    width: 64rem;
}
.article-wrap .page-table {
    border: 1px solid #1A1311;
    border-collapse: collapse;
    width: 100%;
    margin-top: 4rem;
    font-size: 2.8rem;
    line-height: 2;
}
.article-wrap .page-table tr:not(:last-child) {
    border-bottom: 1px solid #D9D9D9;
}
.article-wrap .page-table th {
    background-color: #F5F6F7;
    text-align: center;
    font-weight: 600;
    padding: 2rem 0;
    width: 20rem;
}
.article-wrap .page-table td {
    padding: 2rem 3.2rem;
    min-width: 53%;
}
.article-wrap .page-table + .txt {
    margin-top: 2rem;
}
.article-wrap .page-box {
    background-color: #F5F6F7;
    padding: 4rem 4.6rem;
    margin-top: 3rem;
}
.article-wrap .page-box .guide-list {
    font-size: 2.8rem;
    line-height: 2;
}
.article-wrap .page-box .guide-list dt p {
    font-weight: 600;
    margin: 0;
}
.article-wrap .page-box .guide-list dd {
    margin: 0;
}
.article-wrap .flex {
    display: grid;
    row-gap: 7rem;
}
.article-wrap .flex-item strong {
    display: block;
    margin-bottom: 1rem;
}
.article-wrap .flex-item img {
    width: 100%;
}
.article-wrap img {
    width: 56rem;
    height: auto;
}
@media only screen and (min-width: 900px) {
    .article-wrap {
        width: 100%;
        margin: 0 auto 10rem;
        scroll-margin-top: 8rem;
    }
    .article-wrap .article-ttl {
        font-size: 3rem;
        padding: 0 0 2rem;
        margin: 0 0 4rem;
    }
    .article-wrap .inner {
        padding: 0 7.7rem;
    }
    .article-wrap .sec-ttl {
        font-size: 2.2rem;
        margin-top: 4rem;
        padding-top: 3.5rem;
    }
    .article-wrap .sec-subttl {
        margin: 3rem 0 1rem;
        font-size: 1.4rem;
    }
    .article-wrap .txt {
        font-size: 1.4rem;
    }
    .article-wrap .txt + .txt {
        margin-top: 2rem;
    }
    .article-wrap .txt + .btn-more {
        margin-top: 3rem;
    }
    .article-wrap .btn-more {
        width: 32rem;
    }
    .article-wrap .page-table {
        max-width: 85rem;
        font-size: 1.4rem;
        margin-top: 2rem;
    }
    .article-wrap .page-table th {
        width: 18rem;
        padding: 1rem 0;
    }
    .article-wrap .page-table td {
        width: auto;
        padding: 1rem 1.6rem;
    }
    .article-wrap .page-box {
        margin-top: 3rem;
        padding: 1.5% 3%;
    }
    .article-wrap .page-box .guide-list {
        display: flex;
        font-size: 1.4rem;
    }
    .article-wrap .page-box .guide-list dt {
        width: 19.3rem;
        position: relative;
    }
    .article-wrap .page-box .guide-list dt p {
        display: inline-block;
        background-color: #F5F6F7;
        position: relative;
        padding-right: .5em;
        z-index: 2;
    }
    .article-wrap .page-box .guide-list dt:after {
        content: "";
        width: 96%;
        height: 1px;
        background-color: transparent;
        border-bottom: 1px dotted #1A1311;
        position: absolute;
        top: 1.5rem;
        left: 0;
        z-index: 1;
    }
    .article-wrap .page-box .guide-list dd {
        width: calc(100% - 19.3rem);
    }
    .article-wrap .flex {
        display: flex;
        flex-wrap: wrap;
        column-gap: 4rem;
    }
    .article-wrap .flex-item {
        width: calc(50% - 2rem);
    }
    .article-wrap .flex-item strong {
        font-size: 1.6rem;
    }
    .article-wrap img {
        width: 28rem;
    }
}

/* guide */
.article-wrap .flow-list {
    list-style: none;
    padding: 0 4.6rem 0 0;
    margin: 4rem 0 0;
    display: grid;
    grid-template-columns: repeat(2,1fr);
    column-gap: 6.4rem;
    row-gap: 5rem;
    counter-reset: list 0;
}
.article-wrap .flow-list li {
    background: linear-gradient(-50deg, #F5F6F7 0%, #F5F6F7 85%, #D9D9D9 85%, #D9D9D9 100%);
    padding: 2.8rem 2.8rem 4rem;
    position: relative;
    counter-increment: list 1;
}
.article-wrap .flow-list li:before,
.article-wrap .flow-list li:after,
.article-wrap .step-list li .img:before,
.article-wrap .step-list li .img:after {
    font-family: "Jost", sans-serif;
    position: absolute;
    z-index: 2;
}
.article-wrap .flow-list li:before {
    content: "Flow";
    font-size: 2.2rem;
    top: 1.6rem;
    left: 2rem;
}
.article-wrap .flow-list li:after {
    font-size: 3.6rem;
    font-weight: 500;
    top: 4rem;
    left: 2rem;
    content: counter(list, decimal-leading-zero);
}
.article-wrap .flow-list li div {
    position: relative;
    height: 100%;
}
.article-wrap .flow-list li:not(:last-child) div:after {
    content: "";
    width: 2rem;
    height: 2rem;
    background-color: #1A1311;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    position: absolute;
    top: 50%;
    right: -7rem;
    transform: translateY(-50%);
}
.article-wrap .flow-list li p {
    margin: 0 0 2rem;
    text-align: center;
    font-size: 2.8rem;
    font-weight: 600;
    position: relative;
    padding-top: 12rem;
}
.article-wrap .flow-list li p:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 9.2rem;
    height: 9.2rem;
    z-index: 1;
}
.article-wrap .flow-list li:nth-child(1) p:before {
    background: url(https://kknaruto.itembox.design/item/img/guide/icon-flow01.svg) 0 / contain no-repeat;
}
.article-wrap .flow-list li:nth-child(2) p:before {
    background: url(https://kknaruto.itembox.design/item/img/guide/icon-flow02.svg) 0 / contain no-repeat;
}
.article-wrap .flow-list li:nth-child(3) p:before {
    background: url(https://kknaruto.itembox.design/item/img/guide/icon-flow03.svg) 0 / contain no-repeat;
}
.article-wrap .flow-list li:nth-child(4) p:before {
    background: url(https://kknaruto.itembox.design/item/img/guide/icon-flow04.svg) 0 / contain no-repeat;
}
.article-wrap .flow-list li span {
    font-size: 2.4rem;
    line-height: 1.8;
}
@media only screen and (min-width: 900px) {
    .article-wrap .flow-list {
        margin: 3rem 0 0;
        padding: 0;
        grid-template-columns: repeat(4,1fr);
        column-gap: 4rem;
    }
    .article-wrap .flow-list li {
        padding: 2.9rem 1.4rem 2rem;
    }
    .article-wrap .flow-list li:before {
        font-size: 1.1rem;
        top: 1.8rem;
        left: 2rem;
    }
    .article-wrap .flow-list li:after {
        font-size: 1.8rem;
        top: 3rem;
        left: 2rem;
    }
    .article-wrap .flow-list li p {
        padding-top: 10rem;
        font-size: 1.6rem;
        margin: 0 0 1rem;
    }
    .article-wrap .flow-list li p:before {
        width: 8rem;
        height: 8rem;
    }
    .article-wrap .flow-list li:not(:last-child) div:after {
        width: 1rem;
        height: 1rem;
        right: -3.5rem;
    }
    .article-wrap .flow-list li:not(:last-child) p:after {
        top: 70%;
    }
    .article-wrap .flow-list li span {
        display: block;
        text-align: center;
        font-size: 1.2rem;
        letter-spacing: 0;
    }
}

.article-wrap .step-list {
    list-style: none;
    margin: 4rem 0 0;
    padding: 0;
    text-align: center;
    display: grid;
    row-gap: 10rem;
    counter-reset: step 0;
}
.article-wrap .step-list li {
    padding: 5rem 0 0;
    position: relative;
    counter-increment: step 1;
}
.article-wrap .step-list li:before,
.article-wrap .step-list li:after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.article-wrap .step-list li:before {
    width: 10rem;
    height: 10rem;
    background-color: #002A57;
    border-radius: 50%;
    top: 0;
    z-index: 1;
}
.article-wrap .step-list li:not(:last-child):after {
    width: 2rem;
    height: 2rem;
    background-color: #1A1311;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    top: calc(100% + 4rem);
}
.article-wrap .step-list li .img {
    display: block;
    position: relative;
    margin-bottom: 3rem;
}
.article-wrap .step-list li .img:before,
.article-wrap .step-list li .img:after {
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
}
.article-wrap .step-list li .img:before {
    content: "STEP";
    font-size: 2rem;
    top: -3rem;
}
.article-wrap .step-list li .img:after {
    font-size: 3.6rem;
    font-weight: 500;
    top: -1rem;
    content: counter(step);
}
.article-wrap .step-list li .img img {
    width: 26rem;
}
@media only screen and (min-width: 900px) {
    .article-wrap .step-list {
        display: flex;
        flex-wrap: wrap;
        column-gap: 8rem;
        row-gap: 4.6rem;
        padding: 0 4.6rem 2.3rem;
        text-align: left;
        margin: 2rem 0 0;
    }
    .article-wrap .step-list li {
        width: calc(31% - 4rem);
        min-width: 20rem;
    }
    .article-wrap .step-list li:before {
        width: 5rem;
        height: 5rem;
        top: 2.5rem;
    }
    .article-wrap .step-list li:not(:last-child):after {
        transform: none;
        left: calc(100% + 3.5rem);
        top: 46%;
        clip-path: polygon(0 0, 0% 100%, 100% 50%);
        width: 1rem;
        height: 1rem;
    }
    .article-wrap .step-list li .img {
        margin-bottom: 1.5rem;
    }
    .article-wrap .step-list li .img:before {
        font-size: 1rem;
        top: -1.5rem;
    }
    .article-wrap .step-list li .img:after {
        font-size: 1.8rem;
        top: -.5rem;
    }
    .article-wrap .step-list li .img img {
        width: 100%;
    }
}

/* faq */
.article-wrap .faq-list {
    margin: 0;
}
.article-wrap .faq-list + .faq-list {
    position: relative;
    padding-top: 5rem;
    margin-top: 5rem;
}
.article-wrap .faq-list + .faq-list:after {
    content: "";
    width: 108%;
    height: 1px;
    background-color: #D9D9D9;
    position: absolute;
    top: 0;
    left: -4%;
}
.article-wrap .faq-ttl {
    font-size: 3.2rem;
    line-height: 1.6;
    padding: 0 5rem 0 5rem;
    position: relative;
    margin-bottom: 1rem;
}
.article-wrap .ac-menu:before {
    top: 50%;
}
.article-wrap .faq-ttl:after,
.article-wrap .faq-list dd:before {
    font-family: "Jost", sans-serif;
    font-size: 4rem;
    font-weight: 500;
    position: absolute;
    left: 0;
}
.article-wrap .faq-ttl:after {
    content: "Q";
    top: -.4rem;
}
.article-wrap .faq-list dd {
    margin: 0;
    padding: 2rem 4rem 0 5rem;
    position: relative;
}
.article-wrap .faq-list dd:before {
    content: "A";
    color: #D9D9D9;
    top: 2rem;
}
.article-wrap .faq-list dd .btn-more.arrow-w {
    display: inline-block;
    border-bottom: 1px solid #707070;
    padding-bottom: 1rem;
    width: auto;
}
.article-wrap .faq-list dd .btn-more.arrow-w:after {
    top: 35%;
}
@media only screen and (min-width: 900px) {
    .article-wrap .faq-list + .faq-list {
        padding-top: 4rem;
        margin-top: 4rem;
    }
    .article-wrap .faq-list + .faq-list:after {
        width: 115%;
        left: -7.6%;
    }
    .article-wrap .faq-ttl {
        font-size: 1.8rem;
        padding: 0 0 0 5rem;
        margin-bottom: 3rem;
    }
    
    .article-wrap .faq-ttl:after,
    .article-wrap .faq-list dd:before {
        font-size: 3rem;
        top: -.8rem;
    }
    .article-wrap .faq-list dd {
        padding: 0 0 0 5rem;
    }
}

/* policy */
.article-wrap .policy-txt {
    padding-left: 4rem;
}
.article-wrap ol {
    padding-left: 4rem;
    font-size: 2.8rem;
}
.article-wrap ol li {
    line-height: 2;
}
.article-wrap ol li + li {
    margin-top: 2.6rem;
}
@media only screen and (min-width: 900px) {
    .article-wrap .policy-txt {
        padding-left: 2rem;
    }
    .article-wrap ol {
        padding-left: 2rem;
        font-size: 1.4rem;
    }
    .article-wrap ol li + li {
        margin-top: 1rem;
    }
}

/* law */
.scroll-wrap .page-table {
    border: 1px solid #D9D9D9;
}
@media only screen and (max-width: 899px) {
    .scroll-wrap {
        width: 100%;
        overflow-x: scroll;
        padding-bottom: 4rem;
    }
    .scroll-wrap .page-table {
        width: 200%;
    }
    .scroll-wrap .page-table th {
        width: 35rem;
    }
    .scroll-txt {
        text-align: right;
        color: #B3B3B3;
        font-size: 2.2rem;
        margin: 2rem 0;
    }
    .scroll-wrap .simplebar-track.simplebar-horizontal {
        height: 4rem;
    }
    .simplebar-track {
        background: #D9D9D9;
    }
    .scroll-wrap .simplebar-track .simplebar-scrollbar::before {
        background-color: #fff;
        height: 1.2rem;
        opacity: 1;
        border-radius: 5px;
        top: 50%;
        transform: translateY(-50%);
        left: 2rem;
    }
}
@media only screen and (min-width: 900px) {
    .scroll-wrap .page-table {
        max-width: 100%;
        margin-bottom: 1rem;
    }
    .article-wrap.law .page-table td {
        padding: 1.6rem 2em;
    }
}
/* company */
.company-wrap .page-table {
    border: 1px solid #D9D9D9;
}
.company-wrap .page-table dl,
.company-wrap .page-table dd {
    margin: 0;
}
.company-wrap .page-table dl + dl {
    margin-top: 4rem;
}
.company-wrap .page-table iframe {
    width: 100%;
    margin-top: 2rem;
    height: 30rem;
}
@media only screen and (max-width: 899px) {
    .company-wrap .page-table tr:nth-of-type(odd) {
        background-color: #F5F6F7;
    }
    .company-wrap .page-table th {
        font-size: 3.2rem;
        text-align: left;
        padding: 5rem 3.2rem 1rem;
        background-color: transparent;
    }
    .company-wrap .page-table th,
    .company-wrap .page-table td {
        display: block;
        width: 100%;
        max-width: none;
    }
    .company-wrap .page-table td {
        padding: 0 3.2rem 5rem;
    }
    .article-wrap.company-wrap .page-table tr:not(:last-child) {
        border-bottom: none;
    }
}
@media only screen and (min-width: 900px) {
    .company-wrap .page-table {
        max-width: 100%;
    }
    .company-wrap .page-table th {
        font-size: 1.6rem;
        width: 40rem;
        padding: 3rem 0;
        vertical-align: baseline;
    }
    .company-wrap .page-table td {
        padding: 3rem 4rem;
    }
    .company-wrap .page-table dl {
        display: flex;
    }
    .company-wrap .page-table dt {
        width: 13rem;
    }
    .company-wrap .page-table dd {
        width: calc(100% - 40rem);
    }
    .company-wrap .page-table dl + dl {
        margin-top: .5rem;
    }
    .company-wrap .page-table iframe {
        height: 28rem;
    }
}
/* contact*/
.contact-wrap .contact-ttl {
    text-align: center;
    font-size: 3.6rem;
    margin: 0 0 6rem;
}
.contact-wrap .contact-ttl + .txt {
    text-align: center;
    margin-bottom: 4rem;
}
.contact-wrap form {
    background-color: #F5F6F7;
    padding: 10rem 4rem 11.6rem;
}
.contact-wrap form .contact-item {
    margin-bottom: 6rem;
}
.contact-wrap form dl,
.contact-wrap form dd {
    margin: 0;
}
.contact-wrap form dt {
    font-size: 3.2rem;
    margin-bottom: 2.6rem;
}
.contact-wrap form dt .required,
.contact-wrap form dt .option {
    font-size: 2.4rem;
    text-align: center;
    padding: .6rem 1em;
    margin-left: 2.2rem;
    border-radius: 3px;
    color: #fff;
}
.contact-wrap form dt .required {
    background-color: #B9001D;
}
.contact-wrap form dt .option {
    background-color: #B3B3B3;
}
.contact-wrap form .contact-item input,
.contact-wrap form textarea {
    width: 100%;
    border: none;
    appearance: none;
    font-size: 3.2rem;
    padding: 3rem;
}
.contact-wrap form .contact-item input::placeholder,
.contact-wrap form textarea::placeholder {
    color: #CCCCCC;
}
.contact-wrap form textarea {
    height: 40rem;
}
.contact-wrap .agree-check {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin: 7rem 0;
}
.contact-wrap .agree-check input {
    width: 4.8rem;
    height: 4.8rem;
    border: 1px solid #B3B3B3;
    margin-top: .4rem;
}
.contact-wrap .agree-check p {
    margin: 0 0 0 3.5rem;
    font-size: 2.8rem;
    line-height: 2; 
}
.contact-wrap .agree-check p a {
    color: #0584D1;
    text-decoration: underline;
}
.contact-wrap .btn-more {
    width: 56rem;
    margin: auto;
    background-color: #fff;
    padding: 0;
}
.contact-wrap .btn-more input {
    width: 100%;
    height: 100%;
    background-color: transparent;
    border: none;
    padding: 2.8rem 0;
    cursor: pointer;
}
@media only screen and (min-width: 900px) {
    .contact-wrap .contact-ttl {
        font-size: 3rem;
        margin-bottom: 4.5rem;
    }
    .contact-wrap .contact-ttl + .txt {
        font-size: 1.6rem;
        margin-bottom: 4.5rem;
    }
    .contact-wrap form {
        padding: 9rem 13.9rem 9.6rem;
    }
    .contact-wrap form .contact-item {
        margin-bottom: 5rem;
    }
    .contact-wrap form dt {
        font-size: 1.6rem;
        margin-bottom: 1.5rem;
    }
    .contact-wrap form dt .required, .contact-wrap form dt .option {
        font-size: 1.2rem;
        padding: .3rem 1em;
        margin-left: 1.1rem;
    }
    .contact-wrap form .contact-item input, .contact-wrap form textarea {
        padding: 2rem 2.5rem;
        font-size: 1.6rem;
    }
    .contact-wrap form textarea {
        height: 20rem;
    }
    .contact-wrap .agree-check {
        margin: 6.9rem 0 6rem;
    }
    .contact-wrap .agree-check input {
        width: 2.4rem;
        height: 2.4rem;
        margin-top: .5rem;
    }
    .contact-wrap .agree-check p {
        margin: 0 0 0 1.7rem;
    }
    .contact-wrap .agree-check p,
    .contact-wrap .btn-more {
        font-size: 1.6rem;
    }
    .contact-wrap .btn-more {
        width: 35rem;
    }
    .contact-wrap .btn-more input {
        padding: 1.4rem 0;
    }
}

/* member */
.member-inner {
    width: 68rem;
    margin: auto;
}
.member-inner .member-top {
    margin: 0 0 2rem;
}
.member-inner img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}
.member-inner ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}
.member-inner .benefit-list {
    counter-reset: number 0;
}
.member-inner .benefit-list > li {
    background-color: #F5F6F7;
    counter-increment: number 1;
    padding: 10rem 5.6rem;
}
.member-inner .benefit-list > li + li {
    margin-top: 2rem;
}
.member-inner .benefit-list > li .img {
    display: block;
    width: 52rem;
    margin: 0 auto 4rem;
}
.member-inner .benefit-list .ttl {
    font-size: 3.6rem;
    line-height: 1.6;
    text-align: center;
    margin: 0 0 6rem;
    position: relative;
    padding-top: 8rem;
}
.member-inner .benefit-list .ttl:before {
    content: "特典";
    width: 15rem;
    height: 5.8rem;
    display: grid;
    place-content: center;
    color: #fff;
    font-size: 2.4rem;
    background-color: #003E80;
    border-radius: 3.8rem;
    padding-right: 3rem;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.member-inner .benefit-list .ttl:after {
    content: counter(number);
    font-family: "Jost", sans-serif;
    font-size: 4rem;
    font-weight: 500;
    color: #EEDC80;
    position: absolute;
    top: 0;
    left: calc(50% + 3rem);
    transform: translateX(-50%);
}
.member-inner .benefit-list .txt {
    font-size: 2.8rem;
    line-height: 2;
}
.member-inner .benefit-list .txt-s {
    font-size: 2.4rem;
    line-height: 2;
    letter-spacing: 0;
    text-align: center;
}
.member-inner .rank-table {
    border-collapse: collapse;
    width: 180%;
    text-align: center;
    margin-top: 3rem;
}
.member-inner .rank-table th {
    background-color: #EEDC80;
    width: 29%;
    padding: 2.4rem 0;
}
.member-inner .rank-table tr:not(:last-child) th {
    border-bottom: 1px solid #fff;
}
.member-inner .rank-table th p {
    margin: 0;
    font-size: 2.8rem;
    display: inline-block;
}
.member-inner .rank-table th span {
    display: block;
    font-size: 2rem;
    text-align: right;
}
.member-inner .rank-table td {
    width: 17%;
    background-color: #fff;
    font-size: 2.8rem;
}
.member-inner .rank-table tr:not(:last-child) td {
    border-bottom: 1px solid #D9D9D9;
}
.member-inner .rank-table td:not(:last-child) {
    border-right: 1px solid #D9D9D9;
}
.member-inner .rank-table td figure {
    padding: 5rem 0;
}
.member-inner .rank-table td figure img {
    width: 8.8rem;
    margin-bottom: 1rem;
}
.member-inner .rank-table td figcaption {
    font-size: 2.4rem;
}
.member-inner .benefit-list .sub-list {
    text-align: center;
    display: grid;
    row-gap: 2rem;
    margin-bottom: 4rem;
}
.member-inner .benefit-list .sub-list li {
    background-color: #fff;
    border-radius: 50%;
    width: 32rem;
    height: 32rem;
    display: grid;
    place-content: center;
    margin: auto;
    font-size: 2.8rem;
    line-height: 1.8;
}
.member-inner .benefit-list .sub-list li strong {
    font-size: 3.6rem;
    color: #7D1047;
}
@media only screen and (min-width: 900px) {
    .member-inner {
        width: 100%;
    }
    .member-inner .member-top {
        margin: -7rem 0 3rem;
    }
    .member-inner .benefit-list > li {
        padding: 7rem 8%;
    }
    .member-inner .benefit-list > li + li {
        margin-top: 3rem;
    }
    .member-inner .benefit-list .ttl {
        padding: 0 0 0 12rem;
        font-size: 3rem;
        display: block;
        width: max-content;
        margin: 0 auto 5rem;
    }
    .member-inner .benefit-list .ttl:before {
        width: 11rem;
        height: 4.1rem;
        font-size: 1.6rem;
        left: 0;
        top: .5rem;
        transform: none; 
    }
    .member-inner .benefit-list .ttl:after {
        font-size: 2.8rem;
        left: 7rem;
        top: .3rem;
        transform: none;
    }
    .member-inner .benefit-list > li .img {
        width: 88.2rem;
    }
    .member-inner .benefit-list .txt {
        text-align: center;
    }
    .member-inner .benefit-list > li:nth-child(1) .txt {
        font-size: 1.8rem;
    }
    .member-inner .benefit-list > li:nth-child(2) .txt {
        font-size: 1.6rem;
    }
    .member-inner .rank-table {
        width: 100%;
        max-width: 85rem;
        margin: 1.5rem auto 1rem;
    }
    .member-inner .rank-table th p {
        font-size: 1.6rem;
    }
    .member-inner .rank-table th span {
        display: inline;
        font-size: 1.6rem;
    }
    .member-inner .rank-table td {
        font-size: 1.4rem;
    }
    .member-inner .rank-table td figure img {
        width: 4.4rem;
    }
    .member-inner .rank-table td figcaption {
        font-size: 1.2rem;
    }
    .member-inner .benefit-list .sub-list {
        grid-template-columns: repeat(4,1fr);
    }
    .member-inner .benefit-list .sub-list li {
        width: 22rem;
        height: 22rem;
        font-size: 1.6rem;
    }
    .member-inner .benefit-list .sub-list li strong {
        font-size: 2.2rem;
    }
    .member-inner .benefit-list .txt-s {
        font-size: 1.2rem;
    }
}
.fs-body-register .fs-c-inputInformation__message {
    display: block;
    text-align: center;
    margin: 15rem 0 4rem; 
}
.fs-body-register .fs-c-inputInformation__message .member-ttl {
    font-size: 3.6rem;
    margin: 0 0 2rem;
}
.fs-body-register .fs-c-inputInformation__message p {
    font-size: 2.8rem;
    line-height: 2;
    margin: 0;
}
.fs-body-register .fs-c-inputInformation__field {
    margin: 0 auto 10rem;
    width: 68rem;
    padding: 9.2rem 2rem 0;
    border-top: 1px solid #1A1311;
}
.fs-body-register .fs-c-inputTable tr:first-child .fs-c-inputTable__headerCell {
    margin-bottom: 3rem;
}
.fs-body-register .fs-c-inputTable__headerCell {
    margin-bottom: 2rem;
}
.fs-body-register .fs-c-inputTable__headerCell label,
.fs-body-register .fs-c-inputTable__headerCell > span {
    font-size: 3.2rem;
    font-weight: 600;
    position: relative;
}
.fs-body-register .fs-c-inputField__field--zipCode > *:first-child {
    margin-right: 0;
    width: 40rem;
    display: block;
    max-width: unset;
    min-width: unset;
    border: none;
    background: #F5F6F7;
    flex-basis: auto;
    padding: 3rem;
}
.fs-body-register .fs-c-requiredMark {
    width: 0;
}
.fs-body-register .col2-main .fs-c-requiredMark::before {
    content: "必須";
    font-size: 2.4rem;
    width: 9rem;
    height: 4.2rem;
    line-height: 4.2rem;
    background-color: #B9001D;
    border-radius: .6rem;
    color: #fff;
    position: absolute;
    top: 0;
    left: calc(100% + 1rem);
    text-align: center;
}
.fs-body-register .fs-c-inputTable > tbody > tr + tr {
    margin-top: 5.6rem;
}
.fs-body-register .fs-c-inputGroup {
    border: none;
}
.fs-body-register .fs-c-button--displayPassword {
    border: 1px solid #ccc;
    padding: 0 2rem 0 1.5rem;
}
.fs-body-register input[type=text],
.fs-body-register input[type=password],
.fs-body-register input[type=tel],
.fs-body-register select {
    border: none;
    background-color: #F5F6F7;
    padding: 3rem;
}
.fs-body-register .fs-c-dropdown {
    max-width: 40rem;
    min-width: 30%;
}
.fs-body-register .fs-c-dropdown:after {
    background: #D9D9D9;
    border-left: none;
    font-size: 5rem;
}
.fs-body-register .fs-c-radioGroup {
    flex-direction: row;
    column-gap: 4rem;
}
.fs-body-register .fs-c-radioGroup > *, .fs-c-checkboxGroup > * {
    flex-basis: auto;
}
.fs-body-register .fs-c-dropdownGroup {
    row-gap: 2rem;
}
.fs-body-register .fs-c-dropdownGroup > .fs-c-dropdown:not(:first-of-type) {
    margin-left: 8px;
}
.fs-body-register .fs-c-radioGroup + .fs-c-inputField__explanation {
    margin-top: 2rem;
    font-size: 2.4rem;
    line-height: 2;
}
.fs-body-register .fs-c-additionalCheckField + fieldset:not(.fs-c-additionalCheckField), fieldset:not(.fs-c-additionalCheckField) + .fs-c-additionalCheckField {
    margin-top: 6rem;
}
.fs-c-checkbox__checkMark {
    width: 4rem;
    height: 4rem;
    margin: 0 2rem 0 0;
}
.fs-c-checkbox__checkMark::before {
    font-size: 4rem;
}
.fs-c-memberPolicyAgreeField + .fs-c-privacyPolicyAgreeField {
    margin-top: 3.2rem;
}
.fs-c-button--confirmRegister {
    border: 1px solid #1A1311;
    border-radius: 7.2rem;
    background-color: #fff;
    color: #1A1311;
    text-align: center;
    display: block;
    position: relative;
    font-size: 2.8rem;
    width: 56rem;
    margin: auto;
}
.fs-c-button--confirmRegister:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 3.2rem;
    height: 3.2rem;
    background: url(https://kknaruto.itembox.design/item/img/common/icon-arrow.svg) 0 / 100% 100% no-repeat;
    right: 2.2rem;
}
.fs-body-register .fs-c-inputInformation__button {
    margin: 10rem 0 0;
    padding-bottom: 10rem;
    border-bottom: 1px solid #1A1311;
}
@media only screen and (min-width: 900px) {
    .fs-body-register .fs-c-inputInformation__message {
        margin: 11rem auto 3rem;
    }
    .fs-body-register .fs-c-inputInformation__message .member-ttl {
        font-size: 3rem;
        margin: 0 0 1rem;
    }
    .fs-body-register .fs-c-inputInformation__message p {
        font-size: 1.6rem;
    }
    .fs-body-register .fs-c-inputInformation__field {
        width: 100%;
        max-width: unset;
        padding: 7.5rem 12.5rem 0;
        margin: 0 auto 7rem;
    }
    .fs-body-register .fs-c-inputTable > tbody > tr + tr {
        margin-top: 3rem;
    }
    .fs-body-register .fs-c-inputTable__headerCell label, .fs-body-register .fs-c-inputTable__headerCell > span {
        font-size: 1.6rem;
    }
    .fs-body-register .fs-c-inputTable tr:first-child .fs-c-inputTable__headerCell {
        margin-bottom: 1.5rem;
    }
    .fs-body-register .col2-main .fs-c-requiredMark::before {
        font-size: 1.2rem;
        width: 4.5rem;
        height: 2.2rem;
        line-height: 2.2rem;
        left: calc(100% + .5rem);
    }
    .fs-body-register input[type=text], .fs-body-register input[type=password], .fs-body-register input[type=tel], .fs-body-register select {
        padding: 1.8rem 2.5rem;
    }
    .fs-body-register .fs-c-button--displayPassword {
        padding: 0 1rem 0 .5rem;
    }
    .fs-body-register .fs-c-dropdown:after {
        font-size: 3rem;
    }
    .fs-body-register .fs-c-inputField__field--zipCode > *:first-child {
        width: 43rem;
        padding: 1.8rem 2.5rem;
    }
    .fs-body-register .fs-c-dropdown {
        max-width: 43rem;
        min-width: 25%;
    }
    .fs-body-register .fs-c-radioGroup + .fs-c-inputField__explanation {
        font-size: 1.4rem;
    }
    .fs-body-register .fs-c-additionalCheckField + fieldset:not(.fs-c-additionalCheckField), fieldset:not(.fs-c-additionalCheckField) + .fs-c-additionalCheckField {
        margin-top: 4rem;
    }
    .fs-c-checkbox__checkMark {
        width: 2rem;
        height: 2rem;
        margin: 0 1rem 0 0;
    }
    .fs-c-checkbox__checkMark::before {
        font-size: 2rem;
    }
    .fs-c-memberPolicyAgreeField + .fs-c-privacyPolicyAgreeField {
        margin-top: 1.6rem;
    }
    .fs-body-register .fs-c-inputInformation__button {
        margin: 6rem 0 0;
        padding-bottom: 7.9rem;
    }
    .fs-c-button--confirmRegister {
        font-size: 1.6rem;
        width: 35rem;
    }
    .fs-c-button--confirmRegister:after {
        width: 2rem;
        height: 2rem;
        right: 2rem;
    }
    .fs-c-button--confirmRegister:hover {
        color: inherit;
    }
}



/* appli */
.appli-inner {
    width: 68rem;
    margin: auto;
}
.appli-inner .ttl {
    font-size: 4.4rem;
    line-height: 1.2;
    margin-top: 0;
}
.appli-inner p,
.appli-inner dl,
.appli-inner dd {
    margin: 0;
}
.appli-inner .appli-top {
    background-color: #F5F3ED;
    margin-bottom: 12rem;
    padding: 10rem 0;
    text-align: center;
}
.appli-inner .appli-top .ttl {
    margin-bottom: 4rem;
}
.appli-inner .appli-top .txt {
    font-size: 3.2rem;
    line-height: 1.8;
    margin-bottom: 6rem;
}
.appli-inner .qr-wrap {
    display: grid;
    grid-template-columns: repeat(2,max-content);
    justify-content: center;
    column-gap: 9rem;
    padding: 0 10rem;
}
.appli-inner .qr-item dt {
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.6;
    margin-bottom: 1rem;
}
.appli-inner .qr-item dd {
    display: grid;
    place-content: center;
}
.appli-inner .qr-item:nth-child(1) a img {
    width: 16.2rem;
    height: auto;
}
.appli-inner .qr-item:nth-child(2) a img {
    width: 20.3rem;
    height: auto;
}
.appli-inner .qr-item dd > img {
    margin: 0 auto 2rem;
    width: 16rem;
    height: 16rem;
}
@media only screen and (min-width: 900px) {
    .appli-inner {
        width: 100%;
    }
    .appli-inner .ttl {
        font-size: 3rem;
        line-height: 1.5;
    }
    .appli-inner .appli-top {
        display: grid;
        grid-template-columns: max-content 1fr;
        grid-template-rows: auto 1fr;
        grid-template-areas: "qr ttl" "qr txt";
        padding: 7rem 15rem;
        column-gap: 9rem;
        margin-bottom:13rem;
    }
    .appli-inner .appli-top .ttl {
        margin-bottom: 3rem;
        grid-area: ttl;
    }
    .appli-inner .appli-top .txt {
        margin-bottom: 0;
        grid-area: txt;
        font-size: 1.6rem;
    }
    .appli-inner .appli-top .qr-wrap {
        grid-area: qr;
        column-gap: 8rem;
        padding: 0;
    }
    .appli-inner .qr-item dt {
        font-size: 1.6rem;
    }
    .appli-inner .qr-item dd > img {
        width: 10rem;
        height: 10rem;
        margin: 0 auto 1rem;
    }
    .appli-inner .qr-item:nth-child(1) a img {
        width: 10.8rem;
    }
    .appli-inner .qr-item:nth-child(2) a img {
        width: 13.5rem;
    }
}
.appli-inner .function-wrap .ttl {
    margin-bottom: 6rem;
}
.appli-inner .appli-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20rem;
    text-align: center;
    display: grid;
    row-gap: 10rem;
    counter-reset: number 0;
}
.appli-inner .appli-list li {
    width: 64rem;
    margin: auto;
    border-bottom: 1px solid #1A1311;
    counter-increment: number 1;
}
.appli-inner .appli-list li .txt-wrap {
    padding-top: 14rem;
    position: relative;
}
.appli-inner .appli-list li .txt-wrap:before,
.appli-inner .appli-list li .txt-wrap:after {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
}
.appli-inner .appli-list li .txt-wrap:before {
    content: "機能";
    width: 11.6rem;
    height: 11.6rem;
    background-color: #7D1047;
    border-radius: 50%;
    font-size: 2.2rem;
    padding-top: 1.6rem;
    top: 0;
}
.appli-inner .appli-list li .txt-wrap:after {
    content: counter(number);
    font-family: "Jost", sans-serif;
    font-size: 4rem;
    font-weight: 500;
    top: 4.6rem;
}
.appli-inner .appli-list .list-ttl {
    font-size: 3.6rem;
    line-height: 1.5;
    display: inline;
    background: linear-gradient(transparent 70%, #EEDC80 0%);
}
.appli-inner .appli-list .txt {
    font-size: 2.8rem;
    line-height: 2;
    margin: 2rem 0 4rem;
}
.appli-inner .appli-list .img-wrap {
    display: flex;
    justify-content: center;
    column-gap: 2rem;
    padding: 0 4rem;
}
.appli-inner .appli-list .img {
    display: block;
    width: 40rem;
    margin: auto;
}
.appli-inner .appli-list img {
    vertical-align: bottom;
    width: 100%;
    height: auto;
}
.appli-inner .function-wrap .bg-box {
    background-color: #F5F6F7;
    padding: 8rem 0;
    margin-bottom: 18rem;
    text-align: center;
}
.appli-inner .function-wrap .bg-box .box-ttl {
    margin: 0 auto 5rem;
    font-size: 4.4rem;
    text-align: center;
    display: block;
    width: max-content;
    padding-right: 18rem;
    position: relative;
}
.appli-inner .function-wrap .bg-box .box-ttl:after {
    content: "";
    width: 16.4rem;
    height: 19.4rem;
    background: url(https://kknaruto.itembox.design/item/img/appli/illust.png) 0 / contain no-repeat;
    position: absolute;
    right: 0;
    top: 30%;
    transform: translateY(-50%);
}
@media only screen and (min-width: 900px) {
    .appli-inner .function-wrap .ttl {
        margin-bottom: 5rem;
    }
    .appli-inner .appli-list {
        display: flex;
        flex-wrap: wrap;
        column-gap: 2rem;
        row-gap: 6rem;
        margin: 0 0 15rem;
    }
    .appli-inner .appli-list li {
        display: grid;
        grid-template-rows: auto 1fr;
        padding: 0 2rem;
        column-gap: 2rem;
        grid-template-areas: "img txt";
        margin: 0;
    }
    .appli-inner .appli-list li:not(:last-child) {
        grid-template-columns: 20rem 1fr;
        flex: 1;
    }
    .appli-inner .appli-list li .txt-wrap {
        padding-top: 7rem;
    }
    .appli-inner .appli-list li:not(:last-child) .txt-wrap {
        grid-area: txt;
    }
    .appli-inner .appli-list li .txt-wrap:before {
        width: 5.8rem;
        height: 5.8rem;
        font-size: 1.1rem;
        padding-top: .8rem;
    }
    .appli-inner .appli-list li .txt-wrap:after {
        font-size: 2rem;
        top: 2.3rem;
    }
    .appli-inner .appli-list .img {
        width: 20rem;
    }
    .appli-inner .appli-list li:not(:last-child) .img,
    .appli-inner .appli-list li:last-child .img-wrap {
        grid-area: img;
    }
    .appli-inner .appli-list li:last-child {
        width: 100%;
        grid-template-columns: 41.5rem 1fr;
    }
    .appli-inner .appli-list li div {
        padding-top: 6.6rem;
    }
    .appli-inner .appli-list .list-ttl {
        font-size: 2.2rem;
    }
    .appli-inner .appli-list .txt {
        font-size: 1.6rem;
        letter-spacing: 0;
        margin: 2rem 0 0;
    }
    .appli-inner .appli-list .img-wrap {
        padding: 0;
    }
    .appli-inner .function-wrap .bg-box {
        position: relative;
        padding: 4rem 0 5rem;
        margin-bottom: 13rem;
    }
    .appli-inner .function-wrap .bg-box:after {
        content: "";
        width: 20.5rem;
        height: 24.3rem;
        background: url(https://kknaruto.itembox.design/item/img/appli/illust.png) 0 / contain no-repeat;
        position: absolute;
        bottom: 0;
        right: 9.7rem;
    }
    .appli-inner .function-wrap .bg-box .box-ttl {
        font-size: 3rem;
        padding: 0;
        margin: 0 auto 4.8rem;
    }
    .appli-inner .function-wrap .bg-box .box-ttl:after {
        content: none;
    }
    .appli-inner .function-wrap .qr-wrap {
        width: 80rem;
        padding: 0 0 0 20.2rem;
        column-gap: 10.2rem;
        grid-template-columns: 23.6rem 26rem;
    }
    .appli-inner .function-wrap .qr-wrap .qr-item {
        display: grid;
        position: relative;
        padding-left: 12.7rem;
    }
    .appli-inner .function-wrap .qr-wrap .qr-item dt {
        text-align: left;
        margin-top: .8rem;
    }
    .appli-inner .function-wrap .qr-wrap .qr-item dd > img {
        position: absolute;
        top: 0;
        left: 0;
        margin: 0;
    }
    .appli-inner .function-wrap .qr-wrap .qr-item dd .img {
        display: block;
        padding-bottom: 1.8rem;
    }
}

.appli-inner .howto-wrap .ttl {
    line-height: 1.4;
    margin-bottom: 6rem;
}
.appli-inner .howto-wrap .step-wrap + .step-wrap {
    margin-top: 16rem;
}
.appli-inner .howto-wrap .step-wrap dt {
    font-size: 3.6rem;
    font-weight: 600;
    margin-bottom: 4rem;
}
.appli-inner .howto-wrap .step-wrap dd .txt {
    font-size: 3.2rem;
    line-height: 1.8;
}
.appli-inner .howto-wrap .step-wrap .step-list {
    list-style: none;
    padding: 0;
    margin: 6rem 0 0;
    display: grid;
    row-gap: 14rem;
    counter-reset: number 0;
}
.appli-inner .howto-wrap .step-wrap .step-list li {
    border-bottom: 1px solid #1A1311;
    padding: 0 4rem;
    display: flex;
    flex-direction: row-reverse;
    column-gap: 3rem;
    counter-increment: number 1;
    position: relative;
}
.appli-inner .howto-wrap .step-wrap .step-list li:not(:last-child):after {
    content: "";
    width: 4.4rem;
    height: 2.4rem;
    background-color: #1A1311;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
    position: absolute;
    top: calc(100% + 6rem);
    left: 50%;
    transform: translateX(-50%);
}
.appli-inner .howto-wrap .step-wrap .step-list li .txt {
    width: 30rem;
    padding-top: 13rem;
    position: relative;
    font-size: 2.8rem;
}
.appli-inner .howto-wrap .step-wrap .step-list li .txt:before,
.appli-inner .howto-wrap .step-wrap .step-list li .txt:after {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    font-family: "Jost", sans-serif;
    font-weight: 500;
}
.appli-inner .howto-wrap .step-wrap:nth-child(2) .step-list li .txt:before,
.appli-inner .howto-wrap .step-wrap:nth-child(2) .step-list li .txt:after {
    color: #7D1047;
}
.appli-inner .howto-wrap .step-wrap:nth-child(3) .step-list li .txt:before,
.appli-inner .howto-wrap .step-wrap:nth-child(3) .step-list li .txt:after {
    color: #002A57;
}
.appli-inner .howto-wrap .step-wrap .step-list li .txt:before {
    content: "STEP";
    width: 11rem;
    height: 11rem;
    background-color: #F5F6F7;
    border-radius: 50%;
    font-size: 2rem;
    padding-top: 1.6rem;
    top: 0;
    text-align: center;
}
.appli-inner .howto-wrap .step-wrap .step-list li .txt:after {
    content: counter(number);
    font-size: 4rem;
    top: 3.6rem;
}
.appli-inner .howto-wrap .step-wrap .step-list li .img {
    width: 24rem;
    margin: auto;
}
.appli-inner .howto-wrap .step-wrap .step-list li img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}
@media only screen and (min-width: 900px) {
    .appli-inner .howto-wrap .step-wrap dt {
        font-size: 2.2rem;
        margin-bottom: 2rem;
    }
    .appli-inner .howto-wrap .step-wrap dd .txt {
        font-size: 1.6rem;
    }
    .appli-inner .howto-wrap .step-wrap .step-list {
        grid-template-columns: repeat(3,1fr);
        column-gap: 3.2rem;
    }
    .appli-inner .howto-wrap .step-wrap .step-list li {
        padding: 0 2rem;
        column-gap: 2.5rem;
    }
    .appli-inner .howto-wrap .step-wrap .step-list li:not(:last-child):after {
        width: 1.2rem;
        height: 1.2rem;
        clip-path: polygon(0 0, 0% 100%, 100% 50%);
        top: 50%;
        left: calc(100% + 1.5rem);
    }
    .appli-inner .howto-wrap .step-wrap .step-list li .txt {
        font-size: 1.4rem;
        padding-top: 9rem;
        width: 15rem;
        letter-spacing: 0;
    }
    .appli-inner .howto-wrap .step-wrap .step-list li .txt:before {
        width: 5.5rem;
        height: 5.5rem;
        font-size: 1rem;
        padding-top: .8rem;
        top: 2rem;
    }
    .appli-inner .howto-wrap .step-wrap .step-list li .txt:after {
        font-size: 2rem;
        top: 3.8rem;
    }
    .appli-inner .howto-wrap .step-wrap .step-list li .img {
        width: 15rem;
    }
}

/* category */
@media only screen and (max-width: 899px) {
    #cat-top {
        display: flex;
        flex-direction: column-reverse;
        margin-bottom: 15.4rem;
    }
    #cat-top .fs-c-breadcrumb {
        margin: 0;
    }
}

#cat-kv {
    height: 30rem;
}
#cat-kv .img img {
    width: 100%;
    height: auto
}
#cat-about {
    background-color: #F5F6F7;
    clip-path: polygon(5% 0, 100% 0, 100% 97%, 95% 100%, 0 100%, 0 3%);
    display: grid;
    grid-template-rows: 28rem auto 1fr;
    grid-template-areas: "img" "ttl" "txt";
    width:70rem;
    margin: 0 auto 14rem;
    padding: 15.8rem 5rem 12rem;
    position: relative;
}
#cat-about:before,
#cat-about:after {
    font-family: "Jost", sans-serif;
    font-weight: 500;
    color: #fff;
    position: absolute; 
}
#cat-about:before {
    content: "ABOUT THE";
    font-size: 4rem;
    top: 1.4rem;
    right: 12rem;
    letter-spacing: .2em;
}
#cat-about:after {
    content: "BRAND";
    font-size: 10rem;
    top: 2.1rem;
    right: -.5rem;
    letter-spacing: .15em;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
}
#cat-about .cat-ttl {
    margin: 6rem 0 3rem;
    font-size: 4.4rem;
    line-height: 1.2;
    text-align: center;
    grid-area: ttl;
}
#cat-about .txt {
    font-size: 3.2rem;
    line-height: 1.8;
    text-align: justify;
    grid-area: txt;
    margin: 0;
}
#cat-about .img {
    grid-area: img;
    width: 28rem;
    margin: auto;
}
#cat-about .img img {
    width: 100%;
    height: auto;
}
@media only screen and (min-width: 900px) {
    #cat-kv {
        height: 35rem;
    }
    #cat-about {
        width: 100%;
        grid-template-columns: 25rem 1fr;
        grid-template-rows: auto 1fr;
        grid-template-areas: "img ttl" "img txt";
        column-gap: 6.8rem;
        padding: 8.6rem 15.8rem 7rem 8.6rem;
        clip-path: polygon(3% 0, 100% 0, 100% 95%, 97% 100%, 0 100%, 0 5%);
        margin: 0 auto 12rem;
    }
    #cat-about:before {
        font-size: 3rem;
        top: 1.5rem;
        right: 10rem;
    }
    #cat-about:after {
        font-size: 8rem;
    }
    #cat-about .cat-ttl {
        font-size: 3rem;
        text-align: left;
        margin: 0 0 4rem;
    }
    #cat-about .txt {
        font-size: 1.6rem;
        letter-spacing: .02em;
    }
    #cat-about .img {
        width: 25rem;
        margin: 0;
    }
}

/* policy */
#item-policy {
    width: 68rem;
    margin: 14rem auto 4.8rem;
    padding: 0 2rem 10rem;
    position: relative;
}
#item-policy:after {
    content: "";
    width: 32.8rem;
    height: 15.8rem;
    background: url(https://kknaruto.itembox.design/item/img/common/bg-policy_sp.png) 0 / contain no-repeat;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}
#item-policy .underline-ttl:before {
    content: "";
    width: 62.2rem;
    height: 18.2rem;
    background: url(https://kknaruto.itembox.design/item/img/common/bg-policy-ttl_sp.png) 0 / contain no-repeat;
    position: absolute;
    top: 1rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
#item-policy .policy-wrap {
    list-style: none;
    margin: 7rem 0 0;
    padding: 0;
    display: grid;
    row-gap: 9.2rem;
    counter-reset: point 0;
}
#item-policy .policy-wrap li {
    display: grid;
    grid-template-rows: 44.5rem auto 1fr;
    grid-template-areas: "img" "ttl" "txt";
    counter-increment: point 1;
}
#item-policy .policy-wrap li .ttl {
    grid-area: ttl;
    font-size: 3.6rem;
    font-weight: 600;
    margin: 5.2rem 0 4rem;
    padding-top: 8rem;
    position: relative;
}
#item-policy .policy-wrap li .ttl:before,
#item-policy .policy-wrap li .ttl:after {
    font-family: "Jost", sans-serif;
    font-weight: 500;
    font-size: 2.4rem;
    position: absolute;
}
#item-policy .policy-wrap li .ttl:before {
    content: "POINT";
    width: 22rem;
    height: 4.4rem;
    line-height: calc(4.4rem + 1px);
    letter-spacing: .2em;
    border: 1px solid #1A1311;
    border-radius: 2.2rem;
    padding-left: 4.5rem;
    left: 0;
    top: 0;
}
#item-policy .policy-wrap li .ttl:after {
    content: counter(point, decimal-leading-zero);
    left: 15rem;
    line-height: 1;
    top: 1.2rem;
}
#item-policy .policy-wrap li .ttl strong {
    font-size: 4.4rem;
}
#item-policy .policy-wrap li .txt {
    grid-area: txt;
    font-size: 2.8rem;
    line-height: 2;
    margin: 0;
}
#item-policy .policy-wrap li .img {
    grid-area: img;
    width: 100%;
}
#item-policy .policy-wrap li .img img {
    width: 100%;
    height: auto;
}
@media only screen and (min-width: 900px) {
    #item-policy {
        width: 100%;
        padding: 0 0 14.7rem;
    }
    #item-policy:after {
        width: 42.1rem;
        height: 16.8rem;
        background: url(https://kknaruto.itembox.design/item/img/common/bg-policy.png) 0 / contain no-repeat;
    }
    #item-policy .underline-ttl {
        padding-top: 3.6rem;
    }
    #item-policy .underline-ttl:before {
        width: 70.9rem;
        height: 20.7rem;
        background: url(https://kknaruto.itembox.design/item/img/common/bg-policy-ttl.png) 0 / contain no-repeat;
    }
    #item-policy .policy-wrap {
        row-gap: 6.2rem;
    }
    #item-policy .policy-wrap li {
        column-gap: 10.8rem;
        grid-template-rows: 1fr 1fr;
    }
    #item-policy .policy-wrap li:nth-of-type(odd) {
        grid-template-columns: 57.5rem 1fr;
        grid-template-areas: "img ttl" "img txt";
    }
    #item-policy .policy-wrap li:nth-of-type(even) {
        grid-template-columns: 1fr 57.5rem;
        grid-template-areas: "ttl img " "txt img";
    }
    #item-policy .policy-wrap li .ttl {
        font-size: 2.2rem;
        margin: 0 0 5rem;
        padding-top: 4.2rem;
        align-self: end;
    }
    #item-policy .policy-wrap li .ttl:before, #item-policy .policy-wrap li .ttl:after {
        font-size: 1.2rem;
    }
    #item-policy .policy-wrap li .ttl:before {
        width: 12rem;
        height: 2.2rem;
        line-height: 2.2rem;
        padding-left: 2.5rem;
    }
    #item-policy .policy-wrap li .ttl:after {
        top: .6rem;
        left: 8rem;
    }
    #item-policy .policy-wrap li .ttl strong {
        font-size: 3rem;
    }
    #item-policy .policy-wrap li .txt {
        font-size: 1.4rem;
    }
}

/* staff recommend */
#staff-recommend {
    width: 68rem;
    margin: 0 auto 13.4rem;
}
#staff-recommend .ttl-wrap {
    padding: 7rem 0 7.5rem;
    position: relative;
    margin-bottom: 8rem;
}
#staff-recommend .ttl-wrap:before,
#staff-recommend .ttl-wrap:after {
    content: "";
    width: 100%;
    height: 1px;
    background: url(https://kknaruto.itembox.design/item/img/cat/line_sp.png) 0 / 100% 100% no-repeat;
    position: absolute;
    left: 0;
}
#staff-recommend .ttl-wrap:before {
    top: 0;
}
#staff-recommend .ttl-wrap:after {
    bottom: 0;
}
#staff-recommend .ttl-wrap .ttl {
    font-size: 3.6rem;
    font-weight: 500;
    padding: 0 3.8rem 0 25.2rem;
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    margin: 0 0 3rem;
}
#staff-recommend .ttl-wrap .ttl:before {
    content: "";
    width: 18rem;
    height: 18rem;
    background: url(https://kknaruto.itembox.design/item/img/cat/icon-staff-recommend_sp.png) 0 / contain no-repeat;
    position: absolute;
    top: 50%;
    left: 4.4rem;
    transform: translateY(-50%);
}
#staff-recommend .ttl-wrap .ttl span {
    font-size: 2.4rem;
    font-weight: 500;
    position: relative;
    letter-spacing: .2em;
    display: block;
    width: max-content;
    margin-left: .2em;
}
#staff-recommend .ttl-wrap .ttl span:after {
    content: "";
    width: 8rem;
    height: 1px;
    background-color: #707070;
    position: absolute;
    top: 50%;
    left: calc(100% + .5em);
}
#staff-recommend .ttl-wrap .txt {
    margin: 0;
    text-align: center;
    font-size: 3.2rem;
    line-height: 1.8;
}
#staff-recommend .staff-recommend-wrap {
    list-style: none;
    margin: 0;
    padding: 0;
}
#staff-recommend .staff-recommend-wrap > li {
    display: grid;
    grid-template-areas: "ttl" "img" "txt";
}
#staff-recommend .staff-recommend-wrap > li + li {
    margin-top: 8rem;
}
#staff-recommend .staff-recommend-wrap .ttl {
    margin: 0;
    font-size: 3.2rem;
    line-height: 1.6;
    text-align: center;
    grid-area: ttl;
    padding: 2rem 0;
    position: relative;
    background-color: #F5F6F7;
    margin-bottom: 5rem;
}
#staff-recommend .staff-recommend-wrap .ttl:after {
    content: "";
    width: 3.8rem;
    height: 3.2rem;
    background-color: #F5F6F7;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
}
#staff-recommend .staff-recommend-wrap .txt {
    margin: 3rem 0 0;
    font-size: 2.8rem;
    line-height: 2;
}
#staff-recommend .staff-recommend-wrap li:not(.col-img2-menu) .txt {
    grid-area: txt;
}
#staff-recommend .staff-recommend-wrap li > .img,
#staff-recommend .staff-recommend-wrap .img-wrap {
    grid-area: img;
}
#staff-recommend .staff-recommend-wrap li > .img {
    width: 40rem;
    margin: auto;
}
#staff-recommend .staff-recommend-wrap .img-wrap {
    display: flex;
    column-gap: 2px;
}
#staff-recommend .staff-recommend-wrap .img img {
    width: 100%;
    height: auto;
}
#staff-recommend .staff-recommend-wrap .menu-list {
    list-style: none;
    margin: 4rem 0 0;
    padding: 0; 
    counter-reset: menu 0;
}
#staff-recommend .staff-recommend-wrap .menu-list li {
    counter-increment: menu 1;
    position: relative;
    padding-top: 5.4rem;
    font-size: 2.8rem;
    line-height: 2;
}
#staff-recommend .staff-recommend-wrap .menu-list li:before,
#staff-recommend .staff-recommend-wrap .menu-list li:after {
    position: absolute;
    font-family: "Jost", sans-serif;
    font-size: 2.2rem;
    color: #fff;
}
#staff-recommend .staff-recommend-wrap .menu-list li:before {
    content: "menu";
    background-color: #7D1047;
    border-radius: 2rem;
    width: 14rem;
    height: 4rem;
    line-height: 4rem;
    top: 0;
    left: 0;
    padding-left: 2.5rem;
}
#staff-recommend .staff-recommend-wrap .menu-list li:after {
    content: counter(menu, decimal-leading-zero);
    top: -.1em;
    left: 9rem;
}
#staff-recommend .staff-recommend-wrap .menu-list li strong {
    font-weight: normal;
    background: linear-gradient(transparent 70%, #EEDC80 0%);
}
#staff-recommend .staff-recommend-wrap .menu-list li + li {
    margin-top: 4rem;
}
@media only screen and (min-width: 900px) {
    #staff-recommend {
        width: 100%;
        margin: 0 0 15rem;
    }
    #staff-recommend .ttl-wrap {
        padding: 4.8rem 0;
        margin-bottom: 6rem;
    }
    #staff-recommend .ttl-wrap:before, #staff-recommend .ttl-wrap:after {
        background: url(https://kknaruto.itembox.design/item/img/cat/line.png) 0 / 100% 100% no-repeat;
    }
    #staff-recommend .ttl-wrap .ttl {
        width: 51.2rem;
        margin: 0 auto 3rem;;
        padding: 0 0 0 13rem;
        font-size: 3rem;
        letter-spacing: .03em;
    }
    #staff-recommend .ttl-wrap .ttl:before {
        width: 10rem;
        height: 10rem;
        left: 0;
    }
    #staff-recommend .staff-recommend-wrap .ttl:after {
        width: 1.9rem;
        height: 1.6rem;
        top: 98%;
    }
    #staff-recommend .ttl-wrap .ttl span {
        font-size: 1.4rem;
    }
    #staff-recommend .ttl-wrap .ttl span:after {
        width: 5.9rem;
    }
    #staff-recommend .ttl-wrap .txt {
        font-size: 1.8rem;
    }
    #staff-recommend .staff-recommend-wrap {
        display: flex;
        flex-wrap: wrap;
        column-gap: 5rem;
        row-gap: 5rem;
    }
    #staff-recommend .staff-recommend-wrap > li:not(.col-img1-menu) {
        grid-template-areas: "ttl ttl" "img txt";
        grid-template-rows: auto 1fr;
        column-gap: 2rem;
    }
    #staff-recommend .staff-recommend-wrap li.col-img1 {
        width: calc(50% - 2.5rem);
        grid-template-columns: 33rem 1fr;
    }
    #staff-recommend .staff-recommend-wrap li.col-img2 {
        grid-template-columns: 90.5rem 1fr;
        width: 100%;
    }
    #staff-recommend .staff-recommend-wrap li.col-img1-menu {
        grid-template-columns: 45rem 1fr;
        grid-template-rows: auto auto auto 1fr;
        grid-template-areas: "ttl ttl" "img txt";
        column-gap: 2.6rem;
        width: 100%;
    }
    #staff-recommend .staff-recommend-wrap li.col-img1-menu .img {
        width: 45rem;
    }
    #staff-recommend .staff-recommend-wrap li.col-img1 .img {
        width: 33rem;
    }
    #staff-recommend .staff-recommend-wrap li > .img {
        margin: 0;
    }
    #staff-recommend .staff-recommend-wrap > li + li {
        margin-top: 0;
    }
    #staff-recommend .staff-recommend-wrap .img-wrap {
        column-gap: 5px;
    }
    #staff-recommend .staff-recommend-wrap .img-wrap .img { 
        width: 50%;
    }
    #staff-recommend .staff-recommend-wrap .ttl {
        font-size: 1.8rem;
        padding: 1rem 0;
        margin-bottom: 2.5rem;
    }
    #staff-recommend .staff-recommend-wrap .txt {
        font-size: 1.4rem;
        margin: 0;
    }
    #staff-recommend .staff-recommend-wrap li.col-img1-menu .txt-wrap {
        display: flex;
        flex-direction: column;
        row-gap: 2rem;
    }
    #staff-recommend .staff-recommend-wrap .menu-list {
        margin: 0;
    }
    #staff-recommend .staff-recommend-wrap .menu-list li {
        font-size: 1.4rem;
        padding: 0 0 0 8rem;
        letter-spacing: .05em;
    }
    #staff-recommend .staff-recommend-wrap .menu-list li:before,
    #staff-recommend .staff-recommend-wrap .menu-list li:after {
        font-size: 1.1rem;
        top: 50%;
        transform: translateY(-50%);
    }
    #staff-recommend .staff-recommend-wrap .menu-list li:before {
        width: 7rem;
        height: 2rem;
        line-height: 2rem;
        padding-left: 1rem;
    }
    #staff-recommend .staff-recommend-wrap .menu-list li:after {
        left: 4.5rem;
    }
    #staff-recommend .staff-recommend-wrap .menu-list li + li {
        margin-top: 2rem;
    }
}
.fs-body-category .cat-flex {
    display: flex;
    flex-direction: column;
    row-gap: 2rem;
}
.fs-body-category .fs-c-reviewStars::before {
    font-size: 2.8rem;
}
.fs-body-category .fs-c-rating__value,
.fs-body-category .productRating .fs-c-rating + div {
    font-size: 2.2rem;
    line-height: 1.4;
}
.fs-body-category .fs-c-rating__value,
.fs-body-category .productRating .fs-c-rating + div {
    color: #7D1047;
}
@media only screen and (min-width: 900px) {
    .fs-body-category .cat-flex {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        row-gap: 1rem;
    }
    .fs-body-category .fs-c-reviewStars::before {
        font-size: 1.4rem;
        line-height: normal;
    }
    .fs-body-category .fs-c-rating__value,
    .fs-body-category .productRating .fs-c-rating + div {
        font-size: 1.2rem;
    }
}

/* item */
.item-col2-wrap {
    width: 68rem;
    margin: 6rem auto 14rem;
}
.item-col2-img {
    margin-bottom: 6rem;
}
.item-col2-img .fs-c-productThumbnail {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
    margin-top: 2rem;
    column-gap: 4px;
    row-gap: 4px;
}
.item-col2-img .fs-c-productThumbnail__image {
    margin: 0;
    min-width: unset;
}
.item-col2-img .fs-c-productThumbnail__image.is-active > img {
    border: 2px solid #7D1047;
}
@media only screen and (min-width: 900px) {
    .item-col2-wrap {
        width: 100%;
        margin: 0 auto 14rem;
        display: grid;
        grid-template-columns: 60rem 1fr;
        column-gap: 7.2rem;
        align-items: flex-start;
    }
    .item-col2-img .fs-c-productThumbnail {
        grid-template-columns: repeat(5, 1fr);
        margin-top: 1.6rem;
        column-gap: 1.8rem;
        row-gap: 1.5rem;
    }
}
.item-col2-txt .fs-c-productPrice {
    margin-bottom: 2rem;
}
.item-col2-txt .fs-c-productPrice__main {
    color: #B9001D;
}
.item-col2-txt .fs-c-productPrice__main .fs-c-price__value {
    font-family: "Jost", sans-serif;
    font-size: 5rem;
}
.item-col2-txt .fs-c-productPrice__main .fs-c-productPrice__main__addon {
    font-size: 2.8rem;
    padding-left: 1rem;
}
.fs-c-radio__radioMark {
    border: 1px solid #C0C2BD;
    width: 4.8rem;
    height: 4.8rem;
    margin: 0 1.6rem 0 0;
    min-width: unset;
}
.fs-c-radio__radio:checked:enabled + label > .fs-c-radio__radioMark {
    border-color: #C0C2BD;
}
.fs-c-radio__radio:checked:enabled + label > .fs-c-radio__radioMark::before {
    width: 2.8rem;
    height: 2.8rem;
}
.item-col2-txt .fs-c-button--particular.fs-c-button--addToWishList--icon::before {
    content: "";
    width: 3.2rem;
    height: 3.2rem;
    background: url(https://kknaruto.itembox.design/item/img/item/icon-heart-gr.svg) 0 / 100% 100% no-repeat;
}
.item-col2-txt .fs-c-button--particular.fs-c-button--removeFromWishList--icon::before {
    content: "";
    width: 3.2rem;
    height: 3.2rem;
    background: url(https://kknaruto.itembox.design/item/img/item/icon-heart.svg) 0 / 100% 100% no-repeat;
}
.item-col2-txt .fs-c-stockSignLegend {
    font-size: 2.4rem;
    line-height: 2;
    margin-bottom: 2rem;
}
.item-col2-txt .fs-c-productQuantity {
    margin-bottom: 6rem;
}
.item-col2-txt .fs-c-quantity {
    max-width: unset;
}
.item-col2-txt select {
    border: none;
    border-radius: 0;
    background-color: #F5F6F7;
    display: inline-block;
    font-size: 2.8rem;
    line-height: 2;
    /* color: #B3B3B3; */
    padding: 3rem 6.6rem 3rem 4rem;
    min-height: unset;
    background-image:
        linear-gradient(45deg, transparent 50%, #1A1311 50%),
        linear-gradient(135deg, #1A1311 50%, transparent 50%),
        linear-gradient(to right, #E6E6E6, #E6E6E6);
    background-position:
        calc(100% - 3.2rem) calc(1em + 25%),
        calc(100% - 2.3rem) calc(1em + 25%),
        100% 0;
    background-size:
        1rem 1.1rem,
        1rem 1.1rem,
        6.6rem 100%;
    background-repeat: no-repeat;
}
.item-col2-txt select.fs-c-quantity__select {
    width: 20rem;
}
.item-col2-txt select:focus {
    outline: 0;
    box-shadow: none;
}
.item-col2-txt .fs-c-button--addToCart--detail {
    background-color: #7D1047;
    border: none;
    width: 100%;
    padding: 3.8rem 0;
    margin-bottom: 8rem;
}
.item-col2-txt .fs-c-button--addToCart--detail span {
    padding-left: 8rem;
    position: relative;
}
.item-col2-txt .fs-c-button--addToCart--detail span:before {
    content: "";
    width: 4rem;
    height: 4rem;
    background: url(https://kknaruto.itembox.design/item/img/item/icon-cart-w.svg) 0 / contain no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
@media only screen and (min-width: 900px) {
    .item-col2-txt .fs-c-productPrice__main .fs-c-price__value {
        font-size: 4rem;
    }
    .item-col2-txt .fs-c-productPrices--productDetail .fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
        font-size: 1.8rem;
    }
    .item-col2-txt .fs-c-productPrice__main__joint {
        font-size: 2rem;
    }
    .item-col2-txt .fs-c-productPrice__main .fs-c-productPrice__main__addon {
        font-size: 1.8rem;
    }
    .fs-c-radio__radioMark {
        width: 2.4rem;
        height: 2.4rem;
    }
    .fs-c-radio__radio:checked:enabled + label > .fs-c-radio__radioMark::before {
        width: 1.4rem;
        height: 1.4rem;
    }
    .item-col2-txt .fs-c-button--particular.fs-c-button--addToWishList--icon::before,
    .item-col2-txt .fs-c-button--particular.fs-c-button--removeFromWishList--icon::before {
        width: 1.6rem;
        height: 1.6rem;
    }
    .item-col2-txt .fs-c-stockSignLegend {
        font-size: 1.2rem;
        margin-bottom: 2.6rem;
    }
    .item-col2-txt .fs-c-productQuantity {
        margin-bottom: 3rem;
    }
    .item-col2-txt select {
        font-size: 1.4rem;
        padding: 1.1rem 3.3rem 1.1rem 2rem;
        background-size: .6rem .6rem, .6rem .6rem, 3.3rem 100%;
        background-position: calc(100% - 1.5rem) calc(1em + 20%), calc(100% - 1.1rem) calc(1em + 20%), 100% 0;
    }
    .item-col2-txt select.fs-c-quantity__select {
        width: 10rem;
    }
    .item-col2-txt .fs-c-button--addToCart--detail {
        padding: 2rem 0;
        margin-bottom: 3rem;
    }
    .item-col2-txt .fs-c-button--addToCart--detail span {
        padding-left: 4rem;
    }
    .item-col2-txt .fs-c-button--addToCart--detail span:before {
        width: 2.1rem;
        height: 2.1rem;
    }
}
.fs-c-productSelection__field .fs-c-dropdown:after {
    display: none;
}

/* 商品説明（大）*/
.item-col2-txt .item-info-box {
    background-color: #F5F6F7;
    padding: 4.8rem 5rem;
    margin-bottom: 3.8rem;
}
.item-col2-txt .item-info-box dl,
.item-col2-txt .item-info-box dd {
    margin: 0;
}
.item-col2-txt .item-info-box dl:not(:last-child) {
    border-bottom: 1px solid #B3B3B3;
    padding-bottom: 4rem;
    margin-bottom: 3rem;
}
.item-col2-txt .item-info-box dt {
    font-size: 2.8rem;
    line-height: 2;
    font-weight: 600;
}
.item-col2-txt .item-info-box dd {
    font-size: 2.8rem;
    line-height: 1.7;
}
@media only screen and (min-width: 900px) {
    .item-col2-txt .item-info-box {
        padding: 3.4rem 3.5rem;
        margin-bottom: 3rem;
    }
    .item-col2-txt .item-info-box dl {
        display: grid;
        grid-template-columns: 13.7rem 1fr;
    }
    .item-col2-txt .item-info-box dl:not(:last-child) {
        padding-bottom: 1.5rem;
        margin-bottom: 1.5rem;
    }
    .item-col2-txt .item-info-box dt,
    .item-col2-txt .item-info-box dd {
        font-size: 1.4rem;
        line-height: 1.7;
    }
}

.item-col2-txt .fs-c-returnedSpecialContract,
.item-col2-txt .fs-c-buttonContainer,
.item-review-wrap .fs-c-buttonContainer {
    padding: 0;
}
.item-col2-txt .item-info-wrap a,
.item-col2-txt .item-info-wrap span {
    font-size: 2.4rem;
    line-height: 2.4;
    color: initial;
    padding-left: 4rem;
    position: relative;
}
.item-col2-txt .item-info-wrap a:before,
.item-col2-txt .item-info-wrap span:before {
    content: "";
    width: 2rem;
    height: 1px;
    background-color: #B3B3B3;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}
@media only screen and (min-width: 900px) {
    .item-col2-txt .item-info-wrap a,
    .item-col2-txt .item-info-wrap span {
        font-size: 1.2rem;
        padding-left: 2rem;
    }
    .item-col2-txt .item-info-wrap a:before,
    .item-col2-txt .item-info-wrap span:before {
        width: 1rem;
    }
}

/* レビュー */
.item-review-wrap .sideline-ttl {
    width: 68rem;
}
.item-review-wrap .fs-c-productReview {
    width: 68rem;
    margin: 0 auto 14rem;
    border-bottom: 1px solid #1A1311;
    padding: 0 0 8rem;
}
.item-review-wrap .fs-c-reviewStars::before {
    font-size: 4rem;
}
.item-review-wrap .fs-c-rating__value {
    font-size: 3.6rem;
}
.item-review-wrap .fs-c-aggregateRating__count::before {
    content: "（";
}
.item-review-wrap .fs-c-aggregateRating__count::after {
    content: "件）"
}
.item-review-wrap .fs-c-productReview__allReviews a {
    color: initial;
    font-size: 2.8rem;
    line-height: 2;
    text-align: center;
    border: none;
    display: block;
    width: max-content;
    margin: 0 auto 6rem;
    padding-right: 6rem;
    position: relative;
}
.item-review-wrap .fs-c-productReview__allReviews a:after {
    content: "";
    position: absolute;
    top: 50%;
    width: 1rem;
    height: 1rem;
    border-right: 1px solid #263040;
    border-bottom: 1px solid #263040;
    transform: translate(-50%, -50%) rotate(45deg);
    right: 0;
}
.item-review-wrap .fs-c-button--addReview--detail {
    background-color: #EEDC80;
    border-radius: 5rem;
    display: grid;
    width: 60rem;
    height: 8rem;
    margin: 0 auto;
    text-align: center;
    place-content: center;
}
.item-review-wrap .fs-c-button--addReview--detail:before {
    content: none;
}
.item-review-wrap .fs-c-button--addReview--detail span {
    color: #1A1311;
    font-size: 2.8rem;
    line-height: 2;
    position: relative;
    padding-left: 3.8rem;
    width: max-content;
    margin: auto;
    display: block;
}
.item-review-wrap .fs-c-button--addReview--detail span:before {
    content: "";
    width: 2.5rem;
    height: 3.1rem;
    background: url(https://kknaruto.itembox.design/item/img/item/icon-pen.svg) 0 / contain no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
@media only screen and (min-width: 900px) {
    .item-review-wrap {
        display: grid;
        grid-template-columns: 1fr 95rem; 
        margin-bottom: 12.8rem;
    }
    .item-review-wrap .sideline-ttl {
        width: 100%;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        flex-direction: column;
        justify-content: flex-end;
        letter-spacing: .2em;
        padding-top: 1rem;
    }
    .item-review-wrap .sideline-ttl span {
        padding: 7rem 0 0 0;
    }
    .item-review-wrap .sideline-ttl span:before {
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 1px;
        height: 6rem;
    }
    .item-review-wrap .fs-c-productReview {
        width: 100%;
        border-top: 1px solid #1A1311;
        padding: 5rem 2rem;
        position: relative;
        margin: 0 auto;
    }
    .item-review-wrap .fs-c-reviewStars::before {
        font-size: 2.6rem;
        line-height: normal;
    }
    .item-review-wrap .fs-c-rating__value {
        font-size: 2.4rem;
    }
    .item-review-wrap .fs-c-reviewList__item .fs-c-reviewStars::before {
        font-size: 2rem;
    }
    .item-review-wrap .fs-c-productReview__allReviews a {
        font-size: 1.4rem;
        padding-right: 3rem;
        margin: 0 auto;
    }
    .item-review-wrap .fs-c-button--addReview--detail {
        position: absolute;
        top: 4.4rem;
        right: 2rem;
        width: 30rem;
        height: 5rem;
    }
    .item-review-wrap .fs-c-button--addReview--detail span {
        font-size: 1.4rem;
        padding-left: 2rem;
    }
    .item-review-wrap .fs-c-button--addReview--detail span:before {
        width: 1.2rem;
        height: 1.6rem;
    }
    .item-review-wrap .fs-c-productReview__allReviews a:after {
        top: 40%;
    }
}

/* item-nav */
.fs-body-product .item-nav-list {
    list-style: none;
    margin: 0 auto 14rem;
    padding: 0;
    width: 60rem;
    display: grid;
    row-gap: 2rem;   
}
.fs-body-product .item-nav-list li {
    background-color: #F5F6F7;
    position: relative;
    height: 20rem;
    display: grid;
    place-content: center;
    position: relative;
}
.fs-body-product .item-nav-list li:after {
    content: "";
    width: 2rem;
    height: 2rem;
    background-color: #7D1047;
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
    position: absolute;
    right: 0;
    bottom: 0;
}
.fs-body-product .item-nav-list li a {
    display: grid;
    grid-template-columns: 12rem 37.8rem;
    align-items: center;
    column-gap: 2rem;
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.5;
    color: #7D1047;
    text-align: center;
}
.fs-body-product .item-nav-list li a:before {
    content: "";
    width: 12rem;
    height: 12rem;
    display: inline-block;
}
.fs-body-product .item-nav-list li:nth-child(1) a:before {
    background: url(https://kknaruto.itembox.design/item/img/item/icon-cart-r.svg) 0 / 100% 100% no-repeat;
}
.fs-body-product .item-nav-list li:nth-child(2) a:before {
    background: url(https://kknaruto.itembox.design/item/img/item/icon-card.svg) 0 / 100% 100% no-repeat;
}
.fs-body-product .item-nav-list li:nth-child(3) a:before {
    background: url(https://kknaruto.itembox.design/item/img/item/icon-contact.svg) 0 / 100% 100% no-repeat;
}
@media only screen and (min-width: 900px) {
    .fs-body-product .item-nav-list {
        width: 100%;
        grid-template-columns: repeat(3,1fr);
        column-gap: 2rem;
        margin: 0 auto 12rem;
    }
    .fs-body-product .item-nav-list li {
        height: 15rem;
    }
    .fs-body-product .item-nav-list li:after {
        width: 1rem;
        height: 1rem;
    }
    .fs-body-product .item-nav-list li a {
        grid-template-columns: 8rem 1fr;
        font-size: 1.8rem;
    }
    .fs-body-product .item-nav-list li a:before {
        width: 8rem;
        height: 8rem;
    }
}

/* 商品説明（小） */
.fs-body-product .item-detail-wrap {
    width: 68rem;
    margin: 0 auto 13rem;
    background-position: 0;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    min-height: 120rem;
    display: grid;
    align-items: flex-end;
}
.fs-body-product .item-detail-wrap .inner {
    min-height: 69.6rem;
    position: relative;
    padding: 3rem 4rem;
    z-index: 0;
    color: #fff;
}
.fs-body-product .item-detail-wrap .inner:after {
    content: "";
    width: 100%;
    height: 100%;
    background-color: transparent;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.fs-body-product .item-detail-wrap .inner .ttl {
    font-size: 4.4rem;
    line-height: 1.6;
    margin: 0 0 3rem;
    position: relative;
    padding-bottom: 3rem;
}
.fs-body-product .item-detail-wrap .inner .ttl:after {
    content: "";
    width: 5.6rem;
    height: 2px;
    background-color: #fff;
    position: absolute;
    top: 100%;
    left: 0;
}
.fs-body-product .item-detail-wrap .inner .txt {
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 2;
    margin: 0 0 3rem;
}
.fs-body-product .item-detail-wrap .inner .txt-s {
    font-size: 2.4rem;
    line-height: 2;
    margin: 0;
}
@media only screen and (min-width: 900px) {
    .fs-body-product .item-detail-wrap {
        width: 100%;
        min-height: 60rem;
        background-size: cover;
    }
    .fs-body-product .item-detail-wrap .inner {
        width: 42%;
        min-height: 100%;
        padding: 6rem;
        display: grid;
        place-content: center;
        letter-spacing: 0;
    }
    .fs-body-product .item-detail-wrap .inner .ttl {
        font-size: 3rem;
        padding-bottom: 5rem;
        margin: 0 0 5rem;
    }
    .fs-body-product .item-detail-wrap .inner .txt {
        font-size: 1.8rem;
    }
    .fs-body-product .item-detail-wrap .inner .txt-s {
        font-size: 1.4rem;
    }
}

/* 商品詳細 ポリシー */
.fs-body-product #item-policy {
    padding: 0;
    margin: 0 auto 15rem;
}
.fs-body-product #item-policy:after {
    content: none;
}
.fs-body-product #item-policy .underline-ttl {
    margin-bottom: 8rem;
}
.fs-body-product .item-policy-wrap {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    width: 60rem;
    display: grid;
    row-gap: 8rem;
    counter-reset: point 0;
}
.fs-body-product .item-policy-wrap li {
    counter-increment: point 1;
}
.fs-body-product .item-policy-wrap .img {
    display: block;
    margin-bottom: 3rem;
    position: relative;
}
.fs-body-product .item-policy-wrap .img:before,
.fs-body-product .item-policy-wrap .img:after {
    font-family: "Jost", sans-serif;
    font-weight: 500;
    position: absolute;
    right: 3.8rem;
}
.fs-body-product .item-policy-wrap .img:before {
    content: "POINT";
    font-size: 2.2rem;
    top: 0;
}
.fs-body-product .item-policy-wrap .img:after {
    content: counter(point, decimal-leading-zero);
    font-size: 6rem;
    top: 2rem;
    
}
.fs-body-product .item-policy-wrap .img img {
    width: 100%;
    height: auto;
}
.fs-body-product .item-policy-wrap figcaption {
    text-align: center;
    font-size: 3.2rem;
    line-height: 1.8;
}
@media only screen and (min-width: 900px) {
    .fs-body-product .item-policy-wrap {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        column-gap: 5.5rem;
    }
    .fs-body-product .item-policy-wrap li {
        width: calc(32% - 2.5rem);
    }
    .fs-body-product .item-policy-wrap .img {
        margin-bottom: 1.5rem;
    }
    .fs-body-product .item-policy-wrap .img:before {
        font-size: 1.1rem;
        right: 2.2rem;
    }
    .fs-body-product .item-policy-wrap .img:after {
        font-size: 4rem;
        top: 1rem;
        right: 1.8rem;
    }
    .fs-body-product .item-policy-wrap figcaption {
        font-size: 1.8rem;
    }
}

/* FSページ */
.fs-c-continueShopping {
    margin-bottom: 8rem;
}
.fs-c-viewAllProductsLink__label,
.fs-c-button--moveToStoreOrders,
.fs-c-button--moveToOrderHistory,
.fs-c-accountService__pageLink {
    color: #3572b0;
}
.fs-c-listControl .fs-c-pagination {
    align-items: center;
    column-gap: 2rem;
    margin-top: 4rem;
}
.fs-c-listControl .fs-c-pagination__item {
    width: 4rem;
    padding: 0;
    text-align: center;
}
.fs-c-listControl .fs-c-pagination__item--prev::before,
.fs-c-listControl .fs-c-pagination__item--next::before {
    width: 4rem;
    height: 4rem;
    font-size: 0;
}
.fs-c-productList__list + .fs-c-productList__controller {
    flex-direction: column-reverse;
}
.fs-c-productList__list + .fs-c-productList__controller .fs-c-pagination {
    margin: 2rem 0 2rem;
}
.fs-body-review-write .fs-c-aggregateRating,
.fs-body-reviews-product .fs-c-aggregateRating {
    align-items: center;
    column-gap: 2rem;
}
.fs-body-review-write .fs-c-rating__value,
.fs-body-reviews-product .fs-c-rating__value {
    color: #7D1047;
}
.fs-body-review-write .fs-c-button--back {
    min-width: 240px;
    line-height: 8rem;
    margin: auto;
}
@media only screen and (min-width: 900px) {
    .fs-c-listControl .fs-c-pagination {
        margin-top: 1.5rem;
    }
    .fs-c-listControl .fs-c-pagination__item {
        width: 3rem;
    }
    .fs-c-listControl .fs-c-pagination__item--prev::before,
    .fs-c-listControl .fs-c-pagination__item--next::before {
        width: 3rem;
        height: 3rem;
    }
}
.fs-c-listControl .fs-c-pagination__item--prev::before {
    background: url(https://kknaruto.itembox.design/item/img/common/icon-prev.svg) 0 / contain no-repeat;
}
.fs-c-listControl .fs-c-pagination__item--next::before {
    background: url(https://kknaruto.itembox.design/item/img/common/icon-next.svg) 0 / contain no-repeat;
}
@media only screen and (max-width: 899px) {
    .col2-main.fs-page-col  {
        width: 68rem;
        margin: auto;
    }
    .fs-c-listedProductName__variation, .fs-c-listedProductName__selection {
        font-size: 2rem;
    }
    .fs-c-orderTotalTable__mainRow > td,
    .fs-c-cartTable__dataCell--subtotal, .fs-c-cartTable__dataCell--unitPrice,
    .fs-c-orderTotalTable .fs-c-orderTotalTable__grandTotal > td,
    .fs-c-pointListTable td[aria-label=獲得・利用ポイント],
    .fs-c-productReviewed__name, .fs-c-documentColumn__heading {
        font-size: 3.6rem;
    }
    .fs-c-cartPayment, .fs-c-payWithAmazon,
    .fs-c-cartTable__actionButton__container > button,
    .fs-c-checkout-pointInfo__usePoint__label {
        font-size: 2.4rem;
    }
    .fs-p-announcement__title,
    .fs-c-subSection__title, .fs-c-linkedServiceLogin__title,
    .fs-c-checkout-preview__title,
    .fs-c-checkout-customerInfo__name,
    .fs-c-checkout-shippingOptionPreview__value,
    .fs-c-checkout-shippingAddress__name,
    .fs-c-checkout-heading {
        font-size: 2.8rem;
    }
    .fs-c-cartTable__dataCell--point::before, .fs-c-cartTable__dataCell--quantity::before, .fs-c-cartTable__dataCell--subtotal::before,
    .fs-c-history__term {
        font-size: 2.2rem;
    }
    .fs-c-checkout-shippingParcel__productVariation, .fs-c-checkout-shippingParcel__productSelection {
        font-size: 2rem;
    }
    .fs-c-purchaseHere__message {
        margin-bottom: 4rem;
    }
    .fs-c-button--loginAndPurchase, .fs-c-button--unregisteredUserPurchase, .fs-c-button--login,
    .fs-c-button--registerAndContinue, .fs-c-button--purchaseHere, .fs-c-button--send, .fs-c-button--register,
    .fs-c-button--addReview--guest, .fs-c-button--changeInfomation, .fs-body-my-account-password .fs-c-button--change,
    .fs-body-my-account-settings .fs-c-button--change, .fs-body-my-account-settings-edit .fs-c-button--confirmChange,
    .fs-body-my-membership-merge .fs-c-button--merge {
        line-height: 8rem;
        width: 48rem;
    }
    .fs-c-button--addToAddressbook,
    .fs-c-button--cancel, .fs-c-button--confirmLeave,
    .fs-body-review-success .fs-c-button--back {
        line-height: 8rem;
        width: 48rem;
        margin: auto;
    }
    .fs-c-button--continueShopping,
    .fs-c-button--cardAuthenticate,
    .fs-c-button--notAuthenticate,
    .fs-c-button--confirmRegister,
    .fs-c-button--submitReview{
        line-height: 8rem;
    }
    .fs-c-button--confirmOrder {
        font-size: 2.8rem !important;
        line-height: 8rem;
    }
    .fs-c-button--memberRegister {
        line-height: 8rem;
        width: 48rem;
        margin-top: 4rem;
    }
    .fs-c-button--myPageTop {
        line-height: 8rem;
        width: 48rem;
        text-align: center;
        background-color: #ebebeb;
        border-radius: 8px;
    }
    .fs-c-accountService__page {
        flex-basis: 50%;
    }
    .fs-c-accountService__page.fs-c-accountService__page--membershipCard,
    .fs-c-accountService__page.fs-c-accountService__page--accountDelete {
        flex-basis: 100%;
    }
    .fs-c-accountService__page:not(.fs-c-accountService__page--accountDelete) .fs-c-accountService__pageLink__label,
    .fs-c-listTable > tbody > tr > th::before, .fs-c-listTable > tbody > tr td::before,
    .fs-c-inputInformation__field--display .fs-c-inputTable__headerCell {
        font-size: 2.4rem;
    }
    .fs-c-wishlistProduct__title, .fs-c-featuredProduct__title,
    .fs-c-guestReview__title {
        font-size: 2.8rem;
    }
    .fs-c-button--myPageTop {
        margin: auto;
    }
    .fs-c-button--topPage {
        width: 48rem;
        line-height: 8rem;
        margin-top: 4rem;
    }
    .fs-body-review-write .fs-c-rating__value,
    .fs-body-reviews-product .fs-c-rating__value {
        font-size: 2.4rem;
        margin-right: 2rem;
    }
    .fs-body-review-write .fs-c-reveiwNotes {
        padding-bottom: 2rem;
    }
    .fs-body-reviews-product .fs-c-reviewInfo__reviewer,
    .fs-body-reviews .fs-c-reviewInfo__reviewer {
        flex-direction: column-reverse;
    }
    .fs-body-my-addressbook-new .fs-c-button--register {
        margin: auto;
    }
    .fs-body-my-addressbook .fs-c-buttonContainer--deleteChange {
        flex-direction: column;
    }
    .fs-body-my-addressbook .fs-c-buttonContainer--deleteChange > [class^=fs-c-button] {
        width: 48rem;
        line-height: 8rem;
        margin: 2rem 0 0;
    }
    .fs-body-my-addressbook-edit .fs-c-buttonContainer--pair > *:first-child {
        width: 48rem;
        line-height: 8rem;
        margin: auto;
    }
    
}
@media only screen and (min-width: 900px) {
    .fs-c-button--notAuthenticate {
        min-width: 240px;
    }
    .fs-c-button--myPageTop {
        line-height: 5rem;
        min-width: 240px;
        text-align: center;
        background-color: #ebebeb;
        border-radius: 8px;
    }
    .fs-body-membership-card .fs-c-button--myPageTop {
        margin: auto;
    }
    .fs-body-newsletter-subscribe-success .fs-c-documentContent,
    fs-body-newsletter-unsubscribe-success .fs-c-documentContent {
        text-align: center;
    }
    .fs-c-button--topPage {
        width: 24rem;
        line-height: 5rem;
        margin-top: 4rem;
    }
    .fs-body-review-write .fs-c-reveiwNotes {
        padding-bottom: 1rem;
    }
    .header + .fs-l-main {
        margin-top: 12rem;
    }
    .fs-body-reviews-product .fs-c-reviewList--product .fs-c-reviewList__item {
        display: flex;
    }
    .fs-body-reviews-product .fs-c-reviewInfo__reviewer {
        flex-direction: row-reverse;
        margin-right: 2rem;
    }
    .fs-body-reviews-reviewer .fs-c-reviewList,
    .fs-body-reviews .fs-c-reviewList,
    .fs-body-my-reviews .fs-c-reviewList {
        margin: 2rem 0;
    }
    .fs-body-reviews-reviewer .fs-c-reviewList__item,
    .fs-body-reviews .fs-c-reviewList__item,
    .fs-body-my-reviews .fs-c-reviewList__item {
        align-items: flex-start;
        grid-template-rows: auto;
    }
    .fs-body-reviews-reviewer .fs-c-reviewList__item__info,
    .fs-body-reviews .fs-c-reviewList__item__info,
    .fs-body-my-reviews .fs-c-reviewList__item__info {
        display: flex;
        align-items: flex-start;
    }
    .fs-c-button--addToAddressbook {
        line-height: 5rem;
        width: 24rem;
    }
    .fs-body-review-write .fs-c-button--back {
        line-height: 5rem;
    }
    .fs-body-review-success .fs-c-button--back {
        line-height: 5rem;
        width: 24rem;
        margin: auto;
    }
}