body, html {
  font-family: 'Noto Sans JP', sans-serif !important;
}

body {
  font-weight: 400 !important;
}

h1, h2, h3, .fs-c-heading, .fs-c-title {
  font-weight: 700;
}

.fs-c-slick .slick-slide img {
    border-radius: 20px;
}

img {
    border-radius: 20px;
}

.fs-p-logo__lead {
        display: none;
}

.fs-p-logo__image {
    border-radius: 0px;
}

.fs-l-footer {
    background-color: #ffffff;
    border-top: 1px solid #ffffff;
    padding-top: 25px;
}

.fs-l-footer__contents {
    padding-left: 10px;
    padding-right: 10px;
}

.fs-p-footerCopyright {
    padding: 30px;
}

.fs-p-headerNavBar {
    margin-bottom: 20px;
    padding: 5px;
}

.fs-l-header {
    padding-top: 10px;
    background-color: #fff;
}

.fs-c-slick .slick-prev {
    border-radius: 50px;
}

.fs-c-slick .slick-next {
    border-radius: 50px;
}

.fs-p-footerPageTop__link {
    border-radius: 100%;
}

.fs-p-dateList > li time:first-child {
    padding: 2px 8px 3px;
    font-family: system-ui;
}

.fs-p-heading--lv2 {
    border-bottom: 0px;
    color: #2959A1;
    font-size: 2.8rem;
}

@media screen and (min-width: 768px) {
.fs-p-dateList > li time:first-child {
    padding: 4px 12px 6px;
    font-family: system-ui;
    border-radius: 5px;
    font-size: 15px;
    font-weight: 400;
 }
}

.fs-p-drawer__heading {
    display: none;
}

.fs-p-sideMenu .fs-pt-menu__heading {
    border-radius: 10px;
    font-size: 1.1em;
    font-weight: 700;
    margin-top: 10px;
}

.fs-p-sideMenu .fs-pt-menu__link--lv1 {
    justify-content: space-between;
    padding: 10px;
    border-radius: 9px;
    font-size: 1.1em;
}

@media screen and (min-width: 768px) {
.fs-p-dateList > li {
    padding: 8px 0 1px;
    font-size: 1.2em;
    font-weight: 700;
 }
}

a:visited {
    color: #2959A1;
}

.fs-c-productPrice__main {
    font-size: 1.1em;
}

.fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
    color: #000000;
    padding-right: 3px;
}

.fs-c-productListItem__control > *:last-child {
    display: none;
}

.fs-p-footerNavigationItem__title {
        font-size: 1.6rem;
        font-weight: 800;
        text-align: center;
}

.fs-p-footerUtilityMenu__list {
        font-weight: 700;
}

@media screen and (min-width: 768px) {
.fs-p-logo__lead {
    font-size: 1.3rem;
    margin: 10px 5px 10px;
    font-weight: 700;
 }
}

.fs-l-header__contents > * {
    padding: 0px 0px;
}

@media screen and (min-width: 768px) {
    .fs-l-header__contents {
        grid-template-rows: auto auto;
        grid-template-columns: 35% 30% 35%;
        padding: 8px;
    }
}

@media screen and (min-width: 768px) {
    .fs-l-header__utility *:first-child {
        font-size: 18px;
        font-weight: 700;
    }
}

@media screen and (min-width: 768px) {
    .fs-l-header__welcomeMsg.is-ready {
        font-size: 18px;
        font-weight: 700;
    }
}

.fs-p-phoneOrder__phoneNum {
    font-size: 2.8rem;
    font-weight: 800;
    margin-left: 8px;
    color: #2959A1;
}

@media screen and (min-width: 768px) {
    .fs-l-header__utility *:last-child {
        font-size: 17px;
        font-weight: 700;
    }
}

@media screen and (min-width: 768px) {
    .fs-p-headerNavigation__link > i, .fs-p-headerNavigation__viewCartButton > i, .fs-p-headerNavigation__viewSubscriptionCartButton > i {
        font-size: 2.4rem;
    }
}

@media screen and (min-width: 768px) {
    .fs-p-headerNavigation__link, .fs-p-headerNavigation__viewCartButton, .fs-p-headerNavigation__viewSubscriptionCartButton {
        font-size: 1.5rem;
    }
}

@media screen and (min-width: 768px) {
    .fs-p-headerNavigation__listItem {
        padding-left: 10px;
    }
}

.fs-p-sideMenu .fs-pt-menu__link--lv1 {
    background-color: #ffffff;
}

.fs-p-inputGroup__input {
    border-radius: 20px;
    padding-left: 15px;
    font-size: 16px;
}

body {
    animation: fadeIn 1s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

html {
    scroll-behavior: smooth;
}




/* 個別ページの見出し */
h1, h2, h3, .fs-c-heading, .fs-c-title {
    font-weight: 800;
    color: #2959A1;
    font-size: 2em;
}

.fs-c-documentColumn__heading {
    color: #2959A1;
    border-color: #2959A1;
    font-weight: 700;
    font-size: 1.9rem;
}

/* 特定商取引法に基づく表示 */
.fs-c-documentArticle__heading {
    background: #2959A1;
    font-size: 1.8rem;
    font-weight: 600;
    padding: 10px 10px;
    border-radius: 10px;
}

/*メールマガジン登録 */
.fs-body-newsletter-subscribe .fs-c-inputInformation__field {
    border-radius: 20px;
}

/*カテゴリーページ */
.fs-c-subgroupList__link, .fs-c-subgroupList__link:visited, .fs-c-subgroupList__link:hover, .fs-c-subgroupList__link:active {
    border-radius: 10px;
}
.fs-c-sortItems__label {
    border-radius: 10px;
}
.fs-c-sortItems__list__item.is-active {
    border-radius: 10px;
}

/*商品詳細ページ */
.fs-c-productNumber {
    border-radius: 10px;
}
.fs-p-card {
    border-radius: 20px;
}

/*ログインページ */
.fs-body-login .fs-c-inputInformation__field {
    background: rgba(126, 126, 126, 0.08);
    padding: 16px 32px;
    border-radius: 20px;
}
.fs-body-cart-login .fs-c-inputInformation__field {
    background: rgba(126, 126, 126, 0.08);
    padding: 16px 32px;
    border-radius: 20px;
}
.fs-body-wishlist-login .fs-c-inputInformation__field {
    border-radius: 20px;
}

/*ご利用ガイドページ */
.fs-c-documentColumn__heading {
    border-bottom-left-radius: 5px;
}

/*カートページ */
.fs-c-panel {
    border-radius: 10px;
}
.fs-c-noResultMessage {
    border-radius: 20px;
}
.fs-c-cartTableContainer {
        border-radius: 10px;
}
.fs-body-cart .fs-l-cart__sideColumn {
        border-radius: 10px;
}

/*商品一覧ページ */
.fs-p-productSearch__formSwitch {
    border-radius: 10px;
}

.fs-c-productListItem__productDescription {
    display: none;
}


.fs-p-productSearch {
    border-bottom: 0px ;
}

.fs-p-productSearch__formSwitch {
    display: none;
}

.fs-p-productSearch__search {
    border-radius: 20px;
}


/*会社概要ページ */
.gmap {
    border-radius: 20px;
}


/*全体ページ */
.tokutei-link {
  text-align: center;
}

.fs-p-footerUtilityMenu__list {
    font-weight: 800;
    color: #2959A1;
    font-size: 17px;
}

.fs-p-headerUtilityMenu__list a:visited {
    color: #2959A1;
}

.fs-p-headerUtilityMenu__list a:hover {
    color: #719cdb;
}

@media screen and (min-width: 768px) {
    .fs-p-headerNavigation__link, .fs-p-headerNavigation__viewCartButton, .fs-p-headerNavigation__viewSubscriptionCartButton {
        border-radius: 50px;
        font-size: 16px;
        font-weight: 600;
    }
}

.fs-p-scrollingCartButton__button {
    border-radius: 10px;
}

/* 全国一律送料550円 */
.fs-p-banner--postage {
  background: #2A59A1;
  text-align: center;
  padding-top: 20px;
  padding-bottom: 20px;
  border-radius: 10px;
  color: #ffffff;
}

/* 送料無料 */
.fs-p-banner__label {
  display: inline-block;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.8;
}

.fs-p-banner__label--emphasis {
  font-size: 28px;
  font-weight: 700;
  color: #FEF81D !important;
  text-shadow: 0 0 4px rgba(0,0,0,0.2);
  line-height: 0.9;
}

.fs-p-banner--postage,
.fs-p-banner--postage:hover,
.fs-p-banner--postage * ,
.fs-p-banner--postage *:hover {
  opacity: 1 !important;
}


/* NP後払いのバナー用などの角丸無しにしたい画像 */
img.no-radius{
  border-radius: 0 !important;
}

/* ヘッダーナビの矢印 */
.fs-l-header__utility a,
.fs-l-header__utility button{
  min-height: 36px;
  display: inline-flex;
  align-items: center;
}

/* お知らせ記事の文 */
@media screen and (min-width: 1200px) {
    .fs-l-sideArea + .fs-l-pageMain, .fs-l-pageMain + .fs-l-sideArea {
        font-size: 16px;
    }
}

.fs-p-dateList .fs-pt-list__link:hover {
    text-decoration: none;
    transition: filter 0.8s ease;
}

.fs-p-dateList .fs-pt-list__link:hover {
    filter: brightness(1.25);
}

.fs-c-button--carousel {
    color: #2959A1;
}

.fs-c-productImageModal__close {
    margin-right: 20px;
}

.fs-p-headerNavigation {
    padding-top: 0.5px;
}


.fs-c-accountService {
    display: contents;
}

.fs-body-my-top .fs-p-accountInfo {
    display: none;
}

.fs-c-accountService__page:not(.fs-c-accountService__page--accountDelete) .fs-c-accountService__pageLink {
    border-radius: 15px;
}

.outlet_image {
  border-radius: 10px !important;
}


.fs-c-returnedSpecialContract {
    display: none;
}

.fs-p-memberInfo__points {
    display: none !important;
}

.seasonal-banner {
    display: block;
    margin: 0 auto;
    width: 80%;
}

@media screen and (max-width: 767px) {
    .seasonal-banner {
        width: 90%;
    }
}

.fs-body-cart .fs-c-estimatedDeliveryDate {
    display: none !important;
}

.fs-c-estimatedDeliveryDate {
    display: none !important;
}

.fs-p-snsArea {
    display: none;
}

.fs-c-wishlistProduct__footer {
    display: none;
}

.fs-c-productListItem__control {
    display: none;
}

.fs-c-orderPerAddressee__heading {
    background: #dcdcdc;
}

.fs-c-productNumber {
    display: none;
}

.fs-body-closed, .fs-body-closed .fs-l-main, .fs-body-closed .fs-l-pageMain {
    padding: 2vw;
}

/* 768px以上、かつ 1024px以下の時だけ適用 */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .fs-l-header__utility {
        display: none;
    }
}

/* 768px以上、かつ 1024px以下の時だけ非表示 */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .fs-l-header__welcomeMsg.is-ready {
        display: none;
    }
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
    
    /* ロゴ画像を大きくする設定 */
    .fs-p-logo__image {
        width: 400px !important;  /* ←ここの数字を好きな大きさに調整してください */
        max-width: none !important; /* 元々のサイズ制限を解除 */
        height: auto !important;    /* 縦横比を崩さない */
    }
}

@media screen and (max-width: 767px) {
  .outlet_image {
    width: 55%;
    display: block;
    margin: 0 auto;
  }
}

/* =========================================
   ロゴ画像の調整用CSS (修正版Ver.6 位置調整あり)
   ========================================= */

/* 1. 【共通】縦横比の崩れ（伸び）を防止し、中央寄せにするベース設定 */
.fs-p-logo__image {
    height: auto !important;
    max-height: none !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 2. 【スマホ表示】ページごとの幅の指定 */
@media screen and (max-width: 767px) {
    
    /* A. 基本設定（HOME・カート・ログイン・その他のページ）：幅100% */
    .fs-p-logo__image {
        width: 100% !important;
        /* ↓ 位置の微調整を追加（右に3%、上に3% 移動） */
        transform: translate(3%, -6%) !important; 
    }

    /* B. 例外設定（レジに進んだ後の決済・注文手続き画面のみ）：幅80% */
    /* ※上の位置調整(transform)はここにも適用されます */
    body.fs-body-order-settlement .fs-p-logo__image, /* 注文情報入力 */
    body.fs-body-order-confirm .fs-p-logo__image,    /* 注文確認 */
    body.fs-body-order-complete .fs-p-logo__image,   /* 注文完了 */
    body.fs-body-order .fs-p-logo__image,            /* 旧注文画面用 */
    body.fs-body-checkout .fs-p-logo__image          /* ご注文手続き(/p/checkout) */
    {
        width: 80% !important;
    }
}