
/* パンくず KZバージョン*/

.fs-c-breadcrumb__listItem+.fs-c-breadcrumb__listItem::before {
    content: " - ";
}

.fs-c-breadcrumb {
    margin: 22px auto 0;
    padding: 0 3px;
    font-size: 1.2rem;
    max-width: 1200px;
    letter-spacing: 0.15em;
    font-weight: 500;
}

@media screen and (max-width: 896px) {
    .fs-c-breadcrumb {
        margin: 5px auto 0;
        padding: 0 13px;
        font-size: 1rem;
        max-width: 1200px;
        letter-spacing: 0.075em;
    }
}

/* カートボタンスマホで小さく*/
.fs-p-headerNavigation__link > i {
  font-size: 1.2rem;
}

/* ヘッダーメニュー余白 */
.fs-p-headerNavBar {
    padding: 10px 0;
    border: none;
}

.fs-p-sideMenu .fs-pt-menu__heading--lv2 {
  border-bottom: 1px dashed #CCC;　/* サブカテゴリメニュー線を破線に*/　
}

.fs-p-sideMenu .fs-pt-menu__link--lv2::before {
  content: "\e90c"; /* アイコンフォント矢印に変更*/　
}

.fs-p-headerUtilityMenu__list a::before {
  content: "";
  border: 6px solid transparent;
  border-right-width: 3px; /* 矢印の余白*/
  border-left-color: rgb(55 83 118); /* ブルーに*/
  display: inline-block;
  height: 0;
  width: 0;
}

/* カテゴリメニュー */
.fs-c-heading--page {
  border-bottom: 2px solid #043D78;
  color: #043D78;
  font-weight: 600;
  font-size: 2.2rem;
  line-height: 1.0;
  margin: 0 0 24px;
  padding: 0 0 0.5em;　/* タイトルの高さ */
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .fs-c-heading--page {
    padding: 0.5em 0;　/* タイトルの高さ */
  }
}

/* カテゴリのサブメニュー */
.fs-c-subgroupList__item {
  flex-grow: 0; /* 1→自動幅合わせさせない */
  flex-basis: 100%;
  margin-top: -1px;
}
@media screen and (min-width: 768px) {
  .fs-c-subgroupList__item {
    flex-basis: calc(33.3% + 1px);　/* 25％→3列に */
    margin-left: -1px;
    margin-top: -1px;
  }
}
@media screen and (min-width: 960px) {
  .fs-c-subgroupList__item {
    flex-basis: calc(33% + 1px);　/* 25％→3列に */
    margin-left: -1px;
    margin-top: -1px;
  }
}
.fs-c-subgroupList__link {
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: linear;
  transition-delay: 0s;
  background: rgba(255, 255, 255, 0);　/* rgba(126, 126, 126, 0.08);→背景を薄く */
 /*  border: 1px solid #DADBDD !important;　#043D78→枠線カラー反映されない */
  color: inherit;
  display: grid;
  grid-template-columns: auto 1fr 1.2em;
  grid-template-rows: 1fr auto;
  align-items: center;
  height: 100%;
  padding: 12px 20px 12px 20px;　/* 4px→メニューの余白広く */
  text-decoration: none;
}



/* お問い合わせページ */
.contact-form--page .fs-p-announcement__title {
    font-size: 3.0rem !important;
    color: #043C79 !important;
    margin: 0 0 50px;
    text-align: center;
}

@media screen and (max-width: 896px) {
    .contact-form--page .fs-p-announcement__title {
        font-size: 1.5rem !important;
        margin: 0 0 15px
    }
}

.contact-form--page .fs-p-announcement__body p {
    color: #343434;
}

.contact-form--page .fs-p-announcement__body p.contact--success {
    text-align: center;
}

@media screen and (max-width: 896px) {
    .before-contact {
        text-align: center;
    }
}

.fs-p-faq-list-title {
    margin: 50px 0 35px;
    font-size: 2.6rem;
    font-weight: 500;
    letter-spacing: 0.15em;
    text-align: left;
    color: #333232;
}

@media screen and (max-width: 896px) {
    .fs-p-faq-list-title {
        margin: 15px 0 15px;
        font-size: 1.3rem;
    }
}

.fs-p-faq-lists {
    margin: 0 auto 65px;
    padding: 0 8px;
    max-width: 1316px;
    width: auto;
}

@media screen and (max-width: 896px) {
    .fs-p-faq-lists {
        margin: 0 auto 30px;
        padding: 0;
        width: auto;
    }
}

.fs-p-faq-lists input[type="checkbox"] {
    display: none;
}

.faq-q {
    margin: 0;
    padding: 8px 20px 10px;
    background: #EFEFEF;
    border-radius: 5px;
    text-align: left;
    font-size: 2.0rem;
    color: #343434;
    font-weight: 400;
    position: relative;
}

@media screen and (max-width: 896px) {
    .faq-q {
        margin: 0;
        padding: 10px;
        font-size: 1.2rem;
    }
}

input[type="checkbox"]:checked+label .faq-q {
    border-radius: 5px 5px 0 0;
}

.faq-q::before,
.faq-q::after {
    content: "";
    width: 15px;
    height: 2px;
    background: #043C79;
    display: block;
    right: 25px;
    top: 26px;
    position: absolute;
}

@media screen and (max-width: 896px) {
    .faq-q::before,
    .faq-q::after {
        width: 10px;
        height: 1px;
        right: 15px;
        top: 20px;
    }
}

.faq-q::before {
    transform: rotate( 90deg);
}

.faq-q::after {
    transform: rotate( 0deg);
}

input[type="checkbox"]:checked+label .faq-q::before {
    display: none;
}

.faq-a {
    display: block;
    margin: 0;
    padding: 0 30px;
    background: #fff;
    border-radius: 0 0 5px 5px;
    text-align: left;
    border: solid 1px #E8E5E5;
    border-top: none;
    font-size: 1.6rem;
    color: #343434;
    font-weight: 400;
    transition: ease 0.2s;
    opacity: 0;
    height: 0;
    overflow: hidden;
}

input[type="checkbox"]:checked+label+.faq-a {
    display: block;
    opacity: 1;
    padding: 30px;
    height: auto;
}

@media screen and (max-width: 896px) {
    .faq-a {
        font-size: 1.2rem;
        padding: 0 10px;
    }
    input[type="checkbox"]:checked+label+.faq-a {
        padding: 10px;
    }
}

.faq-q .icon {
    color: #043C79;
    font-size: 2.6rem;
    margin-right: 20px;
}

@media screen and (max-width: 896px) {
    .fs-p-faq-item {
        margin: 0 0 10px;
    }
    .faq-q .icon {
        padding: 10px;
        font-size: 1.2rem;
        margin-right: 10px;
        padding: 0;
    }
}

/* テキスト箇所の幅とフォント調整 */
#fs_MyOrders .fs-p-announcement,
#fs_CustomPage .fs-p-announcement,
#fs_ShoppingCart .fs-p-announcement {
    margin: 50px auto;
    padding: 0 8px;
    width: 95%;
    max-width: 1100px;
}

@media screen and (max-width: 896px) {
    #fs_MyOrders .fs-p-announcement,
    #fs_CustomPage .fs-p-announcement,
    #fs_ShoppingCart .fs-p-announcement {
        margin: 20px auto;
        padding: 0;
    }
}

#fs_MyOrders .fs-p-announcement__title,
#fs_ShoppingCart .fs-p-announcement__title {
    font-size: 2.2rem;
    letter-spacing: 0.15em;
    color: #918D8D;
    font-weight: 500;
}

#fs_MyOrders .fs-p-announcement__body p,
#fs_CustomPage .fs-p-announcement__body p,
#fs_ShoppingCart .fs-p-announcement__body p {
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    line-height: 1.4;
}

@media screen and (max-width: 896px) {
    #fs_MyOrders .fs-p-announcement__title,
    #fs_ShoppingCart .fs-p-announcement__title {
        font-size: 1.3rem;
    }
    #fs_MyOrders .fs-p-announcement__body p,
    #fs_CustomPage .fs-p-announcement__body p,
    #fs_ShoppingCart .fs-p-announcement__body p {
        font-size: 1.3rem;
        letter-spacing: 0.15em;
        line-height: 1.7;
    }
}

/* アスタリスク調整 */
.fs-c-requiredMark::before {
margin: 0 5px 0 0;
	font-size: 122%;
    color: #D80E12;
	font-weight: bold;
}

/* 外部リンクアイコン */
.fs-icon--blank:after {
  content: " ";
    height: 13px;
    width: 13px;
    background: url(https://kzonline.itembox.design/item/koizumi/images/box-arrow-up-right-w.svg) 0 0 no-repeat;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    right: 0;
    left: 8.5rem;
    top: 0px;
}

/* ご利用ガイド */
.documentColumn_table {
    width: 100%;
    border: solid 1px #BEBEBE;
    border-spacing: 0;
}

.documentColumn_table th {
    padding: 25px 20px;
    width: 230px;
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    font-weight: 400;
    text-align: left;
    background: #F2F3F4;
}

.documentColumn_table td {
    padding: 25px 20px;
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    text-align: left;
}

@media screen and (max-width: 896px) {
    .documentColumn_table th,
    .documentColumn_table td {
        font-size: 1.1rem;
        padding: 12px 10px;
    }
}

.documentColumn_table tr+tr>* {
    border-top: solid 1px #BEBEBE;
}

.documentColumn_table th+td {
    border-left: solid 1px #BEBEBE;
}

@media screen and (max-width: 896px) {
    .documentColumn_table tr {
        display: flex;
        flex-direction: column;
    }
    .documentColumn_table tr>* {
        width: 100%;
    }
    .documentColumn_table th+td {
        border-left: none;
        border-top: solid 1px #BEBEBE;
    }
    .documentColumn_table tr+tr>td {
        border-top: solid 1px #BEBEBE;
    }
}


.guide-page .fs-c-subgroupList__link::after {
    color: #043C79;
    font-size: 3rem;
    transform: rotate( 90deg);
    margin: -15px 10px 0 0;
}

@media screen and (max-width: 896px) {
    .guide-page .fs-c-subgroupList__link::after {
        font-size: 2rem;
    }
}




/* 特定商取引法テーブル */
.documentColumn_table {
    width: 100%;
    border: solid 1px #BEBEBE;
    border-spacing: 0;
}

.documentColumn_table th {
    padding: 25px 20px;
    width: 230px;
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    font-weight: 400;
    text-align: left;
    background: #F2F3F4;
}

.documentColumn_table td {
    padding: 25px 20px;
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    text-align: left;
}

@media screen and (max-width: 896px) {
    .documentColumn_table th,
    .documentColumn_table td {
        font-size: 1.1rem;
        padding: 12px 10px;
    }
}

.documentColumn_table tr+tr>* {
    border-top: solid 1px #BEBEBE;
}

.documentColumn_table th+td {
    border-left: solid 1px #BEBEBE;
}

@media screen and (max-width: 896px) {
    .documentColumn_table tr {
        display: flex;
        flex-direction: column;
    }
    .documentColumn_table tr>* {
        width: 100%;
    }
    .documentColumn_table th+td {
        border-left: none;
        border-top: solid 1px #BEBEBE;
    }
    .documentColumn_table tr+tr>td {
        border-top: solid 1px #BEBEBE;
    }
}

/* カート・チェックアウト */
#fs_ShoppingCart .fs-c-wishlistProduct,
.fs-c-cartDiscountInfo.fs-c-cartDiscountInfo--postage {
    display: none;
}

.fs-c-continueShopping {
    margin-top: 50px;
    /* width: calc(100% - 320px);*/
    justify-content: center;
    display: flex;
}

@media screen and (max-width: 896px) {
    .fs-c-continueShopping {
        display: block;
        width: 100%;
        margin: 30px 0 0;
    }
}


.fs-body-cart .fs-l-cart__contentsArea {
    -ms-grid-columns: 1fr 300px;
    grid-template-columns: 1fr 300px;
    grid-gap: 50px;
}

.fs-c-cartTableContainer {
    border: none;
    padding: 0;
}

[class^="fs-body-checkout"] .fs-l-checkout__mainColumn {
    flex-grow: 1;
    max-width: calc(100vw - 300px);
    padding-right: 50px;
}

@media screen and (max-width: 960px) {
    [class^="fs-body-checkout"] .fs-l-checkout__mainColumn {
        flex-grow: 1;
        max-width: 100%;
        padding-right: 0;
    }
}

[class^="fs-body-checkout"] .fs-l-checkout__sideColumn {
    margin-top: 0;
    flex-grow: 1;
    flex-basis: 300px;
    min-width: 300px;
}

.fs-body-cart .fs-l-cart__sideColumn,
.fs-body-checkout .fs-l-checkout__sideColumn {
    border: none;
    border-radius: 8px;
    padding: 20px;
    -ms-grid-column: 2;
    -ms-grid-row: 1;
    -ms-grid-row-align: start;
    align-self: start;
    background: #EFF4F8;
}


/* マイページ　レイアウト調整 */
.fs-body-my-top .fs-l-account {
    margin: 0 auto;
    padding: 0 8px;
    max-width: 1316px;
    overflow: hidden;
}

.fs-body-my-top .fs-c-accountService {
    flex-basis: calc( 100% + 30px);
    margin: 0 -15px;
    padding: 0;
}

.fs-c-accountService__page {
    flex-basis: auto;
    width: 14.4%;
    height: auto;
    margin: 0 15px 30px;
}

.fs-body-my-top .fs-c-accountService__pageLink {
    width: 100%;
}

@media screen and (max-width: 1199px) {
    .fs-c-accountService__page {
        margin: 0 0 30px;
        width: 20%;
        padding: 0 15px;
    }
}

@media screen and (max-width: 960px) {
    .fs-c-accountService__page {
        margin: 0 0 30px;
        width: 25%;
        padding: 0 15px;
    }
}

@media screen and (max-width: 896px) {
    .fs-c-accountService__page {
        margin: 0 0 30px;
        width: 33.3%;
    }
    .fs-body-my-top .fs-c-accountService__pageLink {
        width: 100% !important;
    }
}

@media screen and (max-width: 767px) {
    .fs-c-accountService__page {
        margin: 0 0 15px;
        width: 50%;
        padding: 0 8px;
    }
}


.fs-c-accountService__page:not(.fs-c-accountService__page--accountDelete) .fs-c-accountService__pageLink,
.fs-c-accountService__page .fs-c-accountService__pageLink {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.16);
    background: #fff;
    border: 2px solid #043C79;
    border-radius: 10px;
    color: #3c3c3c;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    width: 190px;
    height: 166px;
}

@media screen and (max-width: 896px) {
    .fs-c-accountService__page:not(.fs-c-accountService__page--accountDelete) .fs-c-accountService__pageLink,
    .fs-c-accountService__page .fs-c-accountService__pageLink {
        border: 2px solid #043C79;
        border-radius: 5px;
        height: 130px;
    }
}

.fs-c-accountService__page .fs-c-accountService__pageLink__label {
    font-size: 1.6rem !important;
    letter-spacing: 0.2em;
    font-weight: 500;
}

@media screen and (max-width: 896px) {
    .fs-c-accountService__page .fs-c-accountService__pageLink__label {
        font-size: 1.4rem !important;
    }
}


/* モーダル */
.fs-modal-link-button {
    cursor: pointer;
    background: #EFEFF0;
    border: solid 1px #C4C5C9;
    border-radius: 5px;
    width: calc(50% - 16px);
    height: 60px;
    font-size: 1.6rem;
    color: #333232;
    text-align: left;
    margin: 0 8px 20px;
    padding: 0 32px 0 13px;
    display: none;
    justify-content: flex-start;
    align-items: center;
    position: relative;
}

@media screen and (max-width: 896px) {
    .fs-modal-link-button {
        width: 100%;
        height: 45px;
        font-size: 1.2rem;
        margin: 0 auto 15px;
    }
}

.fs-modal-link-button::before,
.fs-modal-link-button::after {
    content: "";
    width: 15px;
    height: 1px;
    background: #707070;
    display: block;
    right: 10px;
    top: 28px;
    position: absolute;
}

@media screen and (max-width: 896px) {
    .fs-modal-link-button::before,
    .fs-modal-link-button::after {
        width: 10px;
        height: 1px;
        right: 10px;
        top: 22px;
    }
}

.fs-modal-link-button::before {
    transform: rotate( 90deg);
}

.fs-modal-link-button::after {
    transform: rotate( 0deg);
}

.c-modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 100;
}

.c-modal_bg {
    background: rgba(0, 0, 0, 0.6);
    height: 100vh;
    width: 100%;
}

.c-modal_content {
    background: #fff;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 5px;
}

.c-modal_content._sm {
    width: 30%;
}

.c-modal_content._md {
    width: 50%;
}

.c-modal_content._lg {
    width: calc( 100% - 30px);
    max-width: 930px;
    max-height: 90vh;
    overflow-y: auto;
}

.c-modal_content_inner {
    position: relative;
    padding: 24px;
}

.c-modal_close {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
    display: block;
    width: 40px;
    height: 40px;
}

.c-modal_close::before,
.c-modal_close::after {
    content: "";
    width: 15px;
    height: 1px;
    background: #333;
    display: block;
    right: 20px;
    top: 25px;
    position: absolute;
}

@media screen and (max-width: 896px) {
    .c-modal_close::before,
    .c-modal_close::after {
        width: 10px;
        height: 1px;
        right: 10px;
        top: 22px;
    }
}

.c-modal_close::before {
    transform: rotate( 45deg);
}

.c-modal_close::after {
    transform: rotate( -45deg);
}

.c-modal_content_inner {
    width: 100%;
    font-size: 1.8rem;
    line-height: 1.82;
    flex-wrap: wrap;
    display: inline-flex;
    padding: 50px 70px;
}

@media screen and (max-width: 896px) {
    .c-modal_content_inner {
        font-size: 1.2rem;
        line-height: 1.63;
        padding: 40px 20px 30px;
        align-items: flex-start;
    }
}

.c-modal_content_inner .modal_title {
    font-size: 2.8rem;
    font-weight: bold;
    margin: 0 0 30px;
    text-align: center;
    width: 100%;
}

@media screen and (max-width: 896px) {
    .c-modal_content_inner .modal_title {
        font-size: 1.8rem;
        margin: 0 0 15px;
    }
}

.c-modal_content_inner .modal_content-img {
    margin: 0 25px 35px 0;
    max-width: 300px;
    height: auto;
}

.c-modal_content_inner .modal_content-img+p {
    margin: 0 0 20px;
    width: calc(100% - 330px);
}

@media screen and (max-width: 896px) {
    .c-modal_content_inner .modal_content-img {
        margin: 0 auto 15px;
        max-width: 100%;
        width: 100%;
        height: auto;
        display: block;
    }
    .c-modal_content_inner .modal_content-img+p {
        margin: 0 0 20px;
        width: 100%;
    }
}

.c-modal_content_inner .modal_section-title {
    margin: 4px 0;
    font-size: 1.8rem;
    width: 100%;
}

.c-modal_content_inner p.modal_text-list {
    font-size: 1.6rem;
    line-height: 1.68;
}

@media screen and (max-width: 896px) {
    .c-modal_content_inner .modal_section-title {
        margin: 0;
        font-size: 1.2rem;
    }
    .c-modal_content_inner p.modal_text-list {
        font-size: 1.1rem;
    }
}


/* あと●円で送料無料の文字大きく*/
.fs-c-cartDiscountInfo__info {

display: flex;

align-items: flex-end;

line-height: 1;

font-size: clamp(20px, 2.5vw, 28px);

margin-bottom: 10px;

}


.fs-c-cartDiscountInfo__info .fs-c-cartDiscountInfo__more,

.fs-c-cartDiscountInfo__info .fs-c-cartDiscountInfo__info__next {

font-size: clamp(25px, 3.125vw, 33px);

}