.header-bar{
  padding: 0 23px;
}
.header-left{
      margin-right: 20px;
}
#siteLogo svg {
    width: 140px;
    position: relative;
    top: -2px;
}
.gnav-list {
    gap: 25px;
}
.btn-search,
.btn-mypage,
.btn-cart {
    margin-right: 25px;
}
.btn-store{
  margin-right: 22px;
}
#fs_ProductCategory .btn-store,
#fs_ProductSearch .btn-store,
#fs_ProductDetails .btn-store,
#fs_ShoppingCart .btn-store{
position: relative;
}
#fs_ProductCategory .drawer .btn-store::after,
#fs_ProductSearch .drawer .btn-store::after{
  display: none;
}
html.at-top.mega-open .site-header .header-bar,
header.mega-open.at-top .header-bar{
  padding: 10px 23px !important; /* 必要なら調整 */
}
.mega-menu{
      left: -195px;
}
.fs-c-accountService li{
      background-size: 85px;

    height: 108px;
}
.fs-l-cart__mainColumn{
  max-width: 100%;
}

.fs-l-cart__sideColumn{
  max-width: 100%;
          margin-top: 110px;
}
.fs-l-cart__contentsArea{
      flex-direction: column;
      margin-bottom: 100px;
}
@media (max-width: 960px){
/*ヘッダー*/
.header-left{
    margin-right:0;
    z-index: 3 !important;
}
.site-header{
  width: 100vw;
}
.site-header .header-bar{
  height: 60px;
}
.header-right .btn-mypage,
.gnav{
  display: none;
}
.header-right .drawer .btn-mypage,
.header-right .drawer .btn-cart{
  display: inline-block !important;
        top: -1px;
}
.header-right{
 right: 25px;
}
.header-right .btn-cart{
order: 2;
top: 5px;
margin-right: 16px;
}
body.fs-body-top .btn-store,
.header-right .btn-store{
order: 1;
            top: 0px !important;
}

.header-right .hambuger{
order: 3;
}
.drawer .btn-cart {
    margin-right: 24px;
}
.drawer-scroll{
  scrollbar-width: none; /* Firefox */
}
.drawer-scroll::-webkit-scrollbar {
  display: none; /* Chrome, Safari */
}
.hambuger {
    width: 24px;
    top: 4px;
}
.btn-search {
    margin-right: 5px;
    top: 4px;
  order: 1;
  margin-right: 15px !important;
} 
.hambuger svg{
  width: 24px;
}
#siteLogo img{
      width: 107px;
}
.btn-store,
body.fs-body-top .btn-store,
body.fs-body-top .site-header.is-compact .btn-store,
header.mega-open .btn-store{
  border:none;
  top: -2px;
  margin-right: 6px;
}
.drawer .btn-store{
  border:1px solid #000300 !important;
          margin-right: 20px !important;
}
.site-header.is-compact .header-bar{
  height: 60px !important;
}
}
@media (max-width: 770px){
#fs_ShoppingCartLogin .btn-store,
#fs_Checkout .btn-store{
  position: relative;
}
#fs_ProductCategory .btn-store::after,
#fs_ProductSearch .btn-store::after,
#fs_ProductDetails .btn-store::after,
#fs_ShoppingCart .btn-store::after,
#fs_ShoppingCartLogin .btn-store::after,
#fs_Checkout .btn-store::after,
body:has(.bridal) .btn-store::after{
content: "";
        display: block;
        width: calc(100% - 20px);
        height: 1px;
        position: absolute;
        left: 10px;
        bottom: 3px;
        background: #000000;
}
#fs_ProductCategory .drawer .btn-store::after,
#fs_ProductSearch .drawer .btn-store::after,
#fs_ProductDetails .drawer .btn-store::after,
#fs_ShoppingCart .drawer .btn-store::after,
#fs_ShoppingCartLogin .drawer .btn-store::after,
#fs_Checkout .drawer .btn-store::after{
display: none;
}
#fs_ProductDetails .fs-c-productPrice__addon__label {
            bottom: 0px;
}
html.drawer-open,
body.drawer-open {
  overflow: hidden;
  touch-action: none; /* モバイルでのスワイプ防止 */
}
.pc,
.hum-pc,
.pc-table{
  display: none !important;
}
.sp,
.hum-sp{
  display: block !important;
}
.sp-flex{
  display: flex !important;
}
.foot-inner{
  flex-direction: column;
}
.about-visual{
  display: none;
}
svg.logo-pc{
  display: none;
}
.drawer-nav{
      margin-bottom: 37px;
}
.menu-bottom-sns a{
  width: 21px;
          display: block;
}
.drawer .menu-bottom-sns{
          display: block;
        width: 270px;
}
.drawer .menu-bottom-sns li{
  float: left;
          margin-right: 57px;
          width: 21px;
        height: auto;
}
.drawer .menu-bottom-sns li:last-child{
  margin-right: 0;
}
.drawer .menu-bottom-list{
  margin-bottom: 0px;
}

/*top*/
#fs_Top .about {
    padding-left: 65px;
    padding-bottom: 87px;
}
.logo-sp{
  display: block;
              width: 114px;
            height: 11px;
  background-image: url(https://casuca.itembox.design/item/2025/logo-black.svg);
  background-size: cover;
  background-repeat: no-repeat;
}
#fs_Top .logo-sp{
  background-image: url(https://casuca.itembox.design/item/2025/logo2.svg);
}
.is-compact .logo-sp,
#fs_Top .is-compact .logo-sp{
  background-image: url(https://casuca.itembox.design/item/2025/logo-black.svg);
}
.site-header.is-compact .header-bar{
  height: 60px !important;
}

.sec-ttl{
  margin: 0 0 4px;
}
#fs_Top #shop.section--pad {
    padding: 69px 13px 60px 13px;
}
#fs_Top #store.section--pad {
    padding: 69px 13px 0px 13px;
}
#fs_Top #products.section--pad {
        padding: 59px 0px 63px 0;
    }
.fs-body-top .product-card:first-child,
.fs-body-top .fs-c-productListCarousel__list__item:first-child{
  padding-left: 13px;
}
#fs_Top .sec-ttl .dot img {
    width: 8px;
    height: auto;
    position: relative;
    top: -3px;
}
#fs_Top .sec-ttl{
  font-size: 29px;
          margin-bottom: 44px;
}
#fs_Top .sec-ttl .dot {
    margin-right: 3.66px;
}
#fs_Top .sec-ttl .dot {
    margin-right: 3.66px;
}
#fs_Top .about-text p.lead-eng {
    font-size: 13px;
    line-height: 1.7em;
    margin-bottom: 28px;
margin-top: 19px;
}
#fs_Top .about-text{
  padding-right: 0;
  flex: 1 1 421px;
}
#fs_Top .about-text p.lead-eng{
  font-size: 15px;
}

#fs_Top .about-text p.lead-jp br{
  display:none;
}
#fs_Top .about-text p.lead-jp{
text-indent: -10px;
margin-bottom: 43px;
    letter-spacing: 0.06em;
            text-align: justify;
                        font-size: 16px;
}
.link-more {
    gap: 9px;
    font-size: 13px;
    letter-spacing: .02em;
}
.link-more svg {
    width: 40px;
}
#about.section--pad::after,
#products.section--pad::after {
    content: "";
    position: absolute;
    left: 1.83016vw;
    bottom: -1px;
    width: calc(100% - 3.66032vw);
    height: 0.35px;
}
#fs_Top #about.section--pad::after,
#fs_Top #products.section--pad::after{
    left: 0;
    bottom: -1px;
    width: 100%;
}
#fs_Top #brand .sec-ttl{
    padding-left: 0;
    margin-bottom: 45px;
    position: relative;
        left: -33px;
}
#fs_Top #brand .brand-img-wrap {
    padding: 0 0 0 0;
        position: relative;
        width: 100%;
        text-align: right;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
}
#fs_Top #brand .brand-img-wrap a.brand01{
  display: block;
  order:1;
}
#fs_Top #brand .brand-img-wrap a.brand02{
  order:3;
}
#fs_Top #brand .brand-img-wrap a.brand03{
  order:2;
}
#fs_Top #brand .brand-img-wrap a.brand04{
  order:5;
}
#brand .brand-img-wrap .img01,
#brand .brand-img-wrap .img02,
#brand .brand-img-wrap .img03,
#brand .brand-img-wrap .img04 {
  width: 84.6vw;         /* 322px × 0.25641 */
  margin-bottom: 17.48vw; /* 68px × 0.25641 */
}

#brand .brand-img-wrap .img02 figure,
#brand .brand-img-wrap .img04 figure {
  align-items: flex-start;
}

#fs_Top #brand.section--pad {
  padding: 17.69vw 13px 0 13.59vw; /* 69px 15px 0 53px */
}

#brand .brand-img-wrap .img02,
#brand .brand-img-wrap .img04 {
  position: relative;
  right: 0;
  top: 0;
}

#brand .brand-img-wrap .img01::after,
#brand .brand-img-wrap .img02::after,
#brand .brand-img-wrap .img03::after,
#brand .brand-img-wrap .img04::after {
  right: 83.90vw;   /* 328px × 0.25641 */
            bottom: auto;
  font-size: 15px;
  left: auto;
            top: 50%;
            transform: translateX(-50%);
}

#brand .brand-img-wrap .img02::after {
  content: "fig.3";
}
#brand .brand-img-wrap .img03::after {
  content: "fig.2";
}

.brand-img-wrap .img02 .img-wrap img.logo-overlay {
  width: 43.59vw; /* 170px × 0.25641 */
}

.brand-img-wrap a.brand02 figure .img-wrap,
.brand-img-wrap a.brand04 figure .img-wrap {
  height: 69.23vw; /* 270px × 0.25641 */
}


#store .store-eng{
      position: relative;
    top: auto;
    right: auto;
    font-size: 11px;
    margin-bottom: 27px;
    margin-top: 19px;
}
#fs_Top #store .sec-ttl{
  padding-left: 6px;
  margin-bottom: 24px;
}
#store .store-eng {
        position: relative;
        top: auto;
        right: auto;
        font-size: 11px;
        margin-bottom: 18px;
        margin-top: 0px;
        padding-left: 28px;
}
#store .btn-light {
    font-size: 21px;
    height: 33px;
    width: 169px;
    line-height: 33px;
    bottom:0;
}
#fs_Top #products .sec-ttl{
  padding-left: 19px;
margin-bottom: 20px;
}
.product-scroll,
.fs-body-top .fs-c-productListCarousel__list__itemTrack{
  padding-right: 13px;
          gap: 16px;
}
.fs-body-top .fs-c-productListCarousel__list__item:last-child{
  padding-right: 13px;
}
.fs-body-top .product-card,
.fs-body-top .fs-c-productListCarousel__list__item{
    flex: 0 0 280px;
}
.fs-body-top .product-thumb,
#fs_Top .fs-c-productListCarousel__list .fs-c-productListItem__image{
    width: 280px !important;
    height: auto !important;
    margin-bottom: 20px;
}
#fs_Top .fs-c-productListCarousel__list .fs-c-productListItem__image{
    height: 326px !important;
}
.fs-body-top .product-name{
  margin: 0 0 10px 0;
  font-size: 12px;
}
.fs-body-top .product-meta{
  font-size: 12px;
}
#fs_Top #shop .sec-ttl{
  padding-left: 0px;
    margin-left: 0;
    margin-bottom: 39px;
    font-size: 27px;
    margin: 4px 0px 27px 6px;
}
#fs_Top .split-shop picture{
margin-bottom: 22px;
}
#fs_Top .shop-ttl{
  font-size: 22px;
    margin: 3px 0px 0px 0;
}
#fs_Top .shop-info{
    width: 100%;
}
#fs_Top .shop-info p{
      margin-bottom: 25px;
}

.shop-text{
  flex-direction: column;
  gap: 8px;
}
.shop-info a.btn,
#event a.btn{
  width: 100%;
          padding: 0;
    font-size: 18px;
    height: 35px;
    line-height: 35px;
    left: 0;
    top: 0;
}
    #fs_Top .section--pad {
        padding: 69px 20px 0px 20px;
    }
    #fs_Top #event.section--pad{
            padding: 69px 0px 79px 13px;
            position: relative;
  }
  #fs_Top #event.section--pad::before{
    content: "";
            position: absolute;
            left: 0;
            top: 0px;
            width: 100%;
            height: 0.35px;
            background: var(--line);
            background: #9A918B;
  }
    #fs_Top #event .sec-ttl{
    margin-bottom: 27px;
    padding-left: 6px;;
    }
    #fs_Top .event-area{
              margin-bottom: 20px;
              overflow-x: auto;          /* 横スクロールを有効化 */
  -ms-overflow-style: none;  /* IE・Edge対応 */
  scrollbar-width: none;     /* Firefox対応 */
    }
    #fs_Top .event-area::-webkit-scrollbar {
  display: none;             /* Chrome・Safari対応 */
}
    #fs_Top .js-includeWp--media{
          display: flex;
                  gap: 11px;
    }
    #fs_Top .event-item{
      width: 305px;
      flex-direction: column-reverse;
    }
    #fs_Top .js-includeWp--media {
    position: relative;
    display: flex;
}
#fs_Top .event-area::after,
.js-includeWp--media::before{
  display: none;
}
#fs_Top .event-ttl {
    margin: 0px;
    font-size: 12px;
    font-weight: 300;
    width: 100%;
}
#fs_Top #brand.section--pad::after{
    left: 0;
    bottom: -1px;
    width: 100%;
}
#fs_Top .event-item img {
    width: 100%;
    height: 170px;
    margin-bottom: 3px;
}
#fs_Top .event-item::before{
  display: none;
}
#fs_Top .event-category {
    font-size: 16px;
    margin-bottom: 11px;
}
#fs_Top .event-data {
    padding-left: 0px;
    padding-top: 0px;
}
#info .container{
      flex-direction: column;
}
#event a.btn{
width: calc(100% - 13px);
            left: 0;
            font-size: 18px;
            height: 40px;
            line-height: 40px;
            margin: 0;
}
#fs_Top .info-list li a{
    flex-direction: column;
    font-size: 12px;
    padding:0 20px;
}
#fs_Top .info-list li a span{
margin-right:21%;
}
#fs_Top #info.section--thin{
    padding: 0 13px 140px;
}
#fs_Top #info .sec-ttl{
  margin-bottom: 0;
  padding-left: 6px;
}
#fs_Top .info-list li{
    padding: 20px 0;
}
/*top page ここまで*/

/*about*/
#about-casuca.pages-wrap {
    padding: 110px 20px;
}
#about-casuca section.about-page.about01{
  flex-direction: column-reverse;
  margin-bottom: 92px;
}
#about-casuca section.about-page .photo-area{
  width: 100%;
  display: flex;
  flex-direction: column;
}
#about-casuca section.about-page.about02 .photo-area{
margin-bottom: 78px;
}
section.about-page .text-area h3,
.about03 h3{
      font-size: 21px;
    padding-bottom: 50px;
    margin-bottom: 0px;
    top: 0;
    font-weight:300;
    position: relative;
                font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
            font-weight: 300;
}
section.about-page .text-area h3 span{
  font-size: 19px;
}
section.about-page.about03 .text-area{
  padding-top: 0;
}
section.about-page.about04 .text-area{
  padding-bottom: 0;
  padding-top: 40px;
}
.about03 h3::before{
content: "";
    position: absolute;
    left: 0;
    height: 0.7px;
    width: 15px;
    background: #000;
    display: block;
    bottom: 35px;
}
section.about-page .text-area h3::before{
      bottom: 35px;
}
#about-casuca section.about-page.about02,
#about-casuca section.about-page.about03,
#about-casuca section.about-page.about04{
  display: block;
  padding-left: 38px;
}
#about-casuca section.about-page.about04 .text-area{
  width: 100%;
}
#about-casuca .sp-sub-title{
    margin: 0;
    line-height: 1em;
    text-align: center;
    font-weight: 200;
}
#about-casuca .sp-sub-title{
  margin: 0 0 57px;
}
#about-casuca .about-head-area p{
    text-align: center;
    margin-bottom: 33px;
                font-style: italic;
                font-size: 14px;
                            line-height: 1.7em;
            letter-spacing: 0.04em;
}
#about-casuca section.about-page .photo-area p.eng-txt{
  font-size: 13px;
            margin-top: 60px;
            margin-bottom: 40px;
            position: relative;
}
section.about-page .photo-area p.eng-txt::after{
      top: -18px;
    height: 0.7px;
    width: 30px;
}
#about-casuca section.about-page .photo-area img{
  margin-bottom:0;
}
#about-casuca section.about-page .text-area h2{
  display: none;
}
section.about-page .text-area{
  padding:0;
}
section.about-page .text-area p {
    font-size: 13px;
    line-height: 2.3em;
    margin-top: 0;
    margin-bottom: 0;
}
#about-casuca section.about-page.about01 .text-area{
  padding-left: 38px;
}

section.about-page .photo-area figure::after{
  left: -33px;
    top: 50%;
    font-size: 13px;
    font-family: "arno-pro-display", serif;
    font-weight: 300;
    font-style: italic;
    transform: translateY(-50%);
    bottom:auto
}
section.about01 .photo-area figure::after{
display: none;
}
section.about03{
  margin-bottom: 150px;
}
section.about-page.about04 .text-area p span.jobtitle{
  font-size: 17px;
}
section.about-page.about04 .text-area p span.d-name{
  font-size: 18px;
  padding-right: 0.5em;
}
section.about-page.about04 .text-area p span.d-name-en{
  font-size: 23px;
}

section.about-page .text-area p{
  position: relative;
  margin-bottom: 12px;
}
section.about-page.about04 .text-area p::after{
    content: "";
    position: absolute;
    left: 0;
    top: 93px;
    height: 0.7px;
    width: 15px;
    background: #000;
    display: block;
}
section.about-page.about04 .text-area.text-area2 p::after{
  display: none;
}
.btn-read-more {
    display: flex;
    cursor: pointer;
    user-select: none;
    position: relative;
    width: 172px;
    justify-content: space-between;
    margin-bottom: 6px;
        font-size: 13px;

}
.btn-read-more svg {
    width: 23px;
    position: relative;
    top: 0px;
    right: 6px;
}
.more {
    display: block;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease;
                margin-bottom: 40px;
}
.readmore-toggle.sp{
  display: flex !important;
}
.more.sp{
  display: inline-block !important;
}
/*shop*/
.historia-lead-wrap {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
#casuca-historia .content-wrap {
    max-width: 100%;
               padding: 0 15px 0 20px;
}
.shop-historia-info{
  width: 100%;
      flex-direction: column;
}


/*common*/
/*header*/
.drawer{
      top: -17px;
    right: -107vw;
    width: 100vw;
    height: 100.1dvh;
    overflow: hidden;
}
.nav-toggle:checked ~ .drawer{
      right: -25px;
    top: -17px;
}
.drawer .btn-close svg{
  width: 19px;
  height: 19px;
}
.drawer-list li a svg{
  display: none;
}
.drawer-list{
  margin-bottom: 20px;
  gap:0;
  padding-top: 0;
  overflow: hidden;
}
.drawer .btn-mypage{
  margin-right: 25px;
}
.drawer .btn-mypage svg{
  width: 18px;
}
.drawer .btn-cart svg {
    width: 25px;
}
.drawer .btn-cart svg {
    width: 20px;
}
.drawer .btn-search svg {
    width: 18px;
    height: auto;
    fill: #fff;
}
.drawer .btn-store{
  margin-right: 20px;
}

/*header-brand*/

.drawer-brand,
.drawer-event {
  background: #F1F2DF;
  padding: 39px 36px 39px 34px;
  height: 100%;
  overflow-y: auto;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transform: translateX(300px); /* 下から少し上がる感じ */
  transition:
    opacity 0.5s ease,
    transform 0.5s ease,
    visibility 0s linear 0.5s; /* 非表示時に遅延で消える */
  z-index: 20;
  pointer-events: none; /* ← 非表示中はクリックを無効化 */
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.drawer-brand::-webkit-scrollbar,
.drawer-event::-webkit-scrollbar {
    display: none;
}

.drawer-brand .mega-items{
flex-direction: column;
padding-left: 20px;
}
.drawer-brand .mega-items .mega-item{

}
/*
.drawer.show-brand .drawer-scroll {
  display: none;
}
  */

.drawer-scroll{
  transform: translateX(0px);
  transition:
    opacity 0.6s ease,
    transform 0.6s ease,
    visibility 0s;
  }
.drawer.show-brand .drawer-brand,
.drawer.show-brand .drawer-scroll,
.drawer.show-event .drawer-scroll {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
  transition:
    opacity 0.6s ease,
    transform 0.6s ease,
    visibility 0s;
  pointer-events: auto; /* ← 表示中だけクリックを有効化 */
}
.drawer.show-brand .drawer-scroll,
.drawer.show-event .drawer-scroll{
  transform: translateX(-300px);
}

.drawer-brand .btn-back,
.drawer-event .btn-back{
  background: none;
  border: none;
  font-size: 18px;
  color: #333;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 16px;
  font-family: "arno-pro-display", serif;
  font-weight: 300;
          position: relative;
        left: 7px;
}
.drawer-brand .btn-back img,
.drawer-event .btn-back img{
        width: 7px;
        height: auto;
        position: relative;
        top: -1px;
}

.drawer-brand .brand-list li {
  margin-bottom: 24px;
}

.drawer-brand .brand-list img {
  width: 100%;
  display: block;
  margin-bottom: 8px;
}

.drawer-brand .brand-name {
  font-weight: bold;
  margin-bottom: 4px;
}

.drawer-brand .brand-desc {
  font-size: 12px;
  color: #333;
}

/*---*/
.drawer-event .mega-item img,
.drawer-brand .mega-item img{
margin-bottom: 15px;
}

.drawer-event .mega-item img{
      object-fit: contain;
    background: #000300;
}

.drawer-event .mega-item h3,
.drawer-brand .mega-item h3 {
    margin: 0 0 0px;
    line-height: 1.7em;
    position: relative;
    font-size: 21px;
}
.drawer-event .mega-item h3::before,
.drawer-brand .mega-item h3::before{
content: "";
display: block;
position:absolute;
width: 10px;
        height: 0.2px;
        background: #000;
        left: -20px;
        top: 16px;
}
.drawer-event .mega-item p,
.drawer-brand .mega-item p {
    margin-top: 0;
    margin-bottom: 30px;
            line-height: 1.7em;
                        font-size: 11px;
}

.drawer-event .mega-items{
flex-direction: column;
padding-left: 20px;
}
.drawer-event .mega-items .mega-item{

}


.drawer.show-event .drawer-event {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition:
    opacity 0.6s ease,
    transform 0.6s ease,
    visibility 0s;
  pointer-events: auto; /* ← 表示中だけクリックを有効化 */
}

.drawer-event .brand-list li {
  margin-bottom: 24px;
}

.drawer-event .brand-list img {
  width: 100%;
  display: block;
  margin-bottom: 8px;
}

.drawer-event .brand-name {
  font-weight: bold;
  margin-bottom: 4px;
}

.drawer-event .brand-desc {
  font-size: 12px;
  color: #333;
}

.drawer-event .mega-items{
flex-direction: column;
}
/*has-subの矢印*/
.drawer-list li.has-sub a,
.drawer-list li.has-sub2 a,
.drawer-list li.has-sub-link a{
  display: flex;
    justify-content: space-between;
    align-items: center;
}
.has-sub a img,
.has-sub2 a img,
.has-sub-link a img{
width: 6px;
}

/*footer*/
.site-footer{
      background: #E8E8DB;
    border: none;
    padding: 20px;
}
.foot-right{
  order:1;
  padding-top: 6px;
}
.foot-newsletter{
  order:2;
}

.foot-sns{
  display: none;
}
.foot-nav {
    display: flex;
        gap: 17px;
        list-style: none;
        margin: 0 0 91px;
        padding: 0 0 0 19px;
        flex-direction: column;
}
.foot-nav li{
  position: relative;
}
.foot-nav li::after{
  content: "";
  display: block;
  width: 7px;
  height: 0.35px;
        background: #000300;
        position: absolute;
        left: -20px;
               top: 14px;
}
.foot-newsletter p.nldesc{
font-size: 11px;
    line-height: 2.2em;
    margin-bottom: 32px;
}
.nl-form input {
    font-size: 19px;
    width: 100%;
    padding-right: 0;
            padding-left: 0;
            border-radius: 0;
}
.foot-newsletter{
  position: relative;
  width: 100%;
}
.foot-newsletter::before{
  content:"";
  display: block;
  width: 100%;
  height: 0.7px;
  background: #000300;
  position: absolute;
        top: -20px;
  left: 0;
}
.btn-nl svg{
  width: 30px;
}
.nl-form {
    background: none;
    position: relative;
}
.nl-form button {
    border: 0;
    background: none;
    outline: none;
    position: absolute;
    left: auto;
                right: -5px;
    top: 13px;
}
    .btn-nl svg {
        width: 22px;
    }

#fs_ShoppingCart .fs-l-pageMain,
#fs_Login .fs-l-pageMain,
#fs_ShoppingCartLogin .fs-l-pageMain,
#fs_Register .fs-l-pageMain,
#fs_CustomerDetails .fs-l-pageMain,
#fs_PasswordReminder .fs-l-pageMain,
#fs_MyPageTop .fs-l-pageMain,
#fs_MyCoupons .fs-l-pageMain,
#about-cancel .fs-l-pageMain,
#fs_MyWishList .fs-l-pageMain,
#fs_MyOrders .fs-l-pageMain,
#fs_MyAccountSettings .fs-l-pageMain,
#fs_EditAccountSettings .fs-l-pageMain,
#fs_MyOrderDetails .fs-l-pageMain,
#fs_MyAddressBook .fs-l-pageMain,
#fs_NewAddress .fs-l-pageMain,
#fs_EditPassword .fs-l-pageMain,
#fs_MyPoints .fs-l-pageMain,
#fs_DeleteAccount .fs-l-pageMain,
#fs_EditAddress .fs-l-pageMain,
#fs_Content.fs-l-pageMain,
#fs_NewsletterSubscribe .fs-l-pageMain,
#fs_ProductAuth .fs-l-pageMain,
#fs_WishListLogin .fs-l-pageMain,
#fs_CheckoutSuccess .fs-l-pageMain{
padding: 130px 26px 0;
}
h2.fs-c-checkoutSuccess__title{
    margin: 0 0 47px;
    font-size: 13px;
}
#fs_NewsletterSubscribeSuccess .fs-l-main,
#fs_PageNotFound .fs-l-main{
 padding: 130px 26px 0 !important; 
}
#fs_MyWishList .fs-l-pageMain{
padding: 0px 0 0;
}
.fs-c-buttonContainer--topPage .fs-c-button--topPage{
  width: 100%;
}
#fs_MyPageTop .fs-l-pageMain::before,
#fs_MyCoupons .fs-l-pageMain::before,
#fs_MyWishList .fs-l-pageMain::before,
#fs_MyOrderDetails .fs-l-pageMain::before{
  display: none;
}
#fs_ShoppingCart .fs-c-heading,
#fs_Login .fs-c-heading,
#fs_ShoppingCartLogin .fs-c-heading,
#fs_Register .fs-c-heading,
#fs_CustomerDetails .fs-c-heading,
#fs_PasswordReminder .fs-c-heading,
#fs_MyPageTop .fs-c-heading,
#fs_MyCoupons .fs-c-heading,
#about-cancel .fs-c-heading,
#fs_MyWishList .fs-c-heading,
#fs_MyOrders .fs-c-heading,
#fs_MyAccountSettings .fs-c-heading,
#fs_EditAccountSettings .fs-c-heading,
#fs_MyOrderDetails .fs-c-heading,
#fs_MyAddressBook .fs-c-heading,
#fs_NewAddress .fs-c-heading,
#fs_EditPassword .fs-c-heading,
#fs_MyPoints .fs-c-heading,
#fs_DeleteAccount .fs-c-heading,
#fs_EditAddress .fs-c-heading,
#fs_Content .fs-c-heading,
#fs_NewsletterSubscribe .fs-c-heading,
#fs_NewsletterSubscribeSuccess .fs-c-heading,
#fs_PageNotFound .fs-c-heading,
#fs_ProductAuth .fs-c-heading,
#fs_WishListLogin .fs-c-heading{
margin:0 0 126px;
font-size:22px;
padding-top:0px;
}
#fs_CheckoutSuccess .fs-c-heading{
font-size:18px;
margin-bottom: 47px;
padding-top: 0;
}
#fs_CheckoutSuccess .fs-l-pageMain::before{
  display: none;
}
#fs_MyOrders .fs-c-heading,
#fs_MyAddressBook .fs-c-heading{
margin-bottom:87px;
}
#fs_MyPoints .fs-c-heading{
margin-bottom:57px;
}
#fs_MyOrderDetails .fs-c-orderDetailList dd::after{
      bottom: 8px;
}
.fs-p-announcement__title {
    font-size: 13px;
    margin-bottom: 2px;
                margin-top: 0;
}
#fs_MyOrders .fs-l-pageMain::before{
  top:224px;
}
#fs_Content .fs-c-heading{
margin-bottom: 75px;
font-size:30px;
}
#fs_Login .fs-c-heading,
#fs_ShoppingCartLogin .fs-c-heading,
#fs_EditPassword .fs-c-heading,
#fs_MyAccountSettings .fs-c-heading,
#fs_MyPageTop .fs-c-heading,
#fs_ProductAuth .fs-c-heading,
#fs_WishListLogin .fs-c-heading{
    margin-bottom: 47px;
}
#fs_MyPageTop .fs-l-account{
margin: 0 auto 394px;
}
#fs_Login button.fs-c-button--login,
#fs_WishListLogin button.fs-c-button--login,
#fs_ShoppingCartLogin button.fs-c-button--login,
button.fs-c-button--login,
#fs_Register .fs-c-button--confirmRegister,
button.fs-c-button--registerAndContinue,
button.fs-c-button--send,
button.fs-c-button--confirmRegister,
.fs-c-button--memberRegister{
  width: 100%;
    height: 40px;
    line-height: 40px;
    font-size: 13px;
}
.fs-c-inputInformation__button{
  float: none;
}
#fs_NewAddress .fs-c-inputInformation__button,
#fs_DeleteAccount .fs-c-inputInformation__button,
#fs_EditAddress .fs-c-inputInformation__button{
flex-direction: column;
}
#fs_NewAddress .fs-c-button--cancel,
#fs_NewAddress button.fs-c-button--register,
#fs_DeleteAccount .fs-c-button--confirmLeave,
#fs_DeleteAccount .fs-c-button--cancel,
#fs_EditAddress .fs-c-button--cancel{
  margin-top: 20px;
}
.fs-c-anotherLogin__button--amazon{
  width: 100% !important;
}
.fs-c-anotherLogin{
  flex-direction: column;
}
.fs-c-inputTable__label {
    font-size: 13px;
            line-height: 2.4em;
}
.fs-c-requiredMark::before, .fs-c-freeMark::before{
  font-size: 9px;
}
.fs-c-textLink {
    font-size: 11px;
}
h2.fs-c-linkedServiceLogin__title {
    font-size: 14px;
    margin-bottom: 25px;
}
.fs-c-anotherLogin__message p{
  font-size: 11px;
}
.fs-c-registeredUsers__title {
    font-size: 18px;
    margin-bottom: 73px;
}
.fs-c-inputTable__dataCell {
    margin-bottom: 18px;
}
.fs-c-inputInformation__button {
    margin-top: 22px;
}
.fs-c-inputInformation__link {
    margin-top: 0px;
}
.fs-c-inputInformation {
    margin: 0 auto 91px;
}
.fs-c-anotherLogin {
    margin-bottom: 327px;
    gap: 23px;
}
    #fs_MyPageTop .fs-l-account {
        margin: 0 auto 254px;
        flex-direction: column;
    }
    .fs-p-accountInfo {
    width: 100%;
}
.fs-c-accountService {
    width: 100%;
            margin-top: 63px;
}
.fs-p-accountInfo__accountName__name,
.fs-p-accountInfo__accountName__nameLabel,
.fs-p-accountInfo__point__point__available,
.fs-c-purchasePointExpiration,
.fs-p-accountInfo__point__point__rate{
font-size: 12px;
}
.fs-p-accountInfo__point__point__available__number{
  font-size: 35px;
}
.fs-c-accountService li {
    width: 50%;
    height: 102px;
    font-size: 12px;
    margin-bottom: 42px;
}
.fs-p-accountInfo__accountName {
    position: relative;
            height: 43px;
        line-height: 43px;
        margin-bottom: 0;
}
.fs-p-accountInfo__accountName::before {
    content: "";
    display: block;
    height: 0.5px;
    background: #71655D;
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
}
span.fs-p-accountInfo__point__label {
    line-height: 43px;
    margin-bottom: 8px;
    height: 43px;
    font-size: 12px;
}
.fs-p-accountInfo__point__point {
    margin-bottom: 8px;
}
.delete-logout {
    bottom: -46px;
    font-size: 11px;
}
#fs_MyCoupons .fs-c-coupon__info {
    display: flex;
    padding: 0;
    margin-bottom: 47px;
    flex-direction: column;
}
.fs-c-coupon__image {
    width: 100%;
    margin-bottom: 30px;
}
.fs-c-coupon__name {
    width: 100%;
}
#fs_MyCoupons .fs-c-heading{
      margin-bottom: 56px;
}
#fs_MyCoupons .fs-c-couponName__explain,
.fs-c-couponName__discount{
  font-size: 13px;
}
#fs_MyCoupons h2.fs-c-couponName__name{
  font-size: 14px;
      height: 57px;
          line-height: 57px;
                  margin-bottom: 18px;
}
.fs-c-coupon__description__expiration,
.fs-c-coupon__description__appliedCondition{
  display: block;
}
.fs-c-couponExpiration__title,
.fs-c-couponAppliedCondition__title{
  font-size: 13px;
  padding-right: 0;
}
.fs-c-couponExpiration__title{
  margin-bottom: 0;
}
.fs-c-couponExpiration__list,
.fs-c-couponAppliedCondition__list {
    margin: 10px 0;
}
.fs-c-couponExpiration__list__item{
  display: flex;
      gap: 20px;
              align-items: center;
}
.fs-c-couponExpiration__list__item span,
.fs-c-couponExpiration__list__item span time{
  font-size: 13px;
}
.fs-c-couponExpiration__list__item__body{
  font-size: 13px;
  line-height: 1.0em;
}
.fs-c-couponProduct__title {
    font-size: 13px;
    margin-bottom: 16px;
    text-align: left;
}
#fs_MyCoupons .fs-c-productListCarousel__list{
    padding-left: 0;
}
.fs-c-productListCarousel__list .fs-c-productListItem__imageContainer{
      width: 167px !important;
}
#fs_MyCoupons .fs-c-productListItem__image__image {
    height: 167px !important;
}
.fs-c-coupon__products {
    margin-bottom: 80px;
}
#fs_MyCoupons .fs-c-couponList {
    padding-top: 0px;
}
#fs_MyCoupons article{
  position: relative;
  padding-top: 70px;
}
#fs_MyCoupons article::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0.35px;
    background-color: #9A918B;
    display: block;
}
#fs_MyCoupons .fs-c-couponProduct__list article{
  padding: 0;
}

#fs_MyCoupons .fs-c-couponProduct__list article::before{
  display: none;
}
.fs-c-continueShopping .fs-c-button--standard,
#fs_MyOrderDetails a.fs-c-button--myPageTop,
.fs-c-button--myPageTop,
.fs-c-buttonContainer--back
.fs-c-button--standard{
  width: 100%;
}
#fs_MyCoupons a.fs-c-button--myPageTop{
  margin-bottom: 203px;
      margin-top: 50px;
}
.fs-c-newUsers{
  float: none;
          display: flex;
        flex-direction: column-reverse;
        margin-top: 20px;
}
.fs-c-newUsers .fs-c-newUsers__title{
  font-size: 11px;
      margin-top: 7px;
}
#fs_MyWishList .fs-c-heading{
          padding-top: 131px;
                  margin: 0 0 54px;
}
#fs_MyWishList .fs-p-announcement{
  flex-direction: column-reverse;
  margin-bottom: 82px;
  padding: 0 26px;
}
#fs_MyWishList .fs-p-announcement__body,
#fs_Register .fs-p-announcement__body{
  width: 100%;
  position: relative;
}

#fs_MyWishList .fs-p-announcement__body::after,
#fs_Register .fs-p-announcement__body::after{
  content: "";
  display: block;
  width: 100%;
  height: 0.35px;
  background-color: #9A918B;
  position: absolute;
        bottom: 0px;
  left: 0;
}

#fs_MyWishList .fs-p-announcement::before {
    content: "";
    display: block;
    width: calc(100% - 56px);
    height: 0.35px;
    background-color: #9A918B;
    top: 0;
    position: absolute;
    left: 28px;
}
#fs_MyWishList .fs-c-list {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease;
  margin-top: 0;
  padding-left: 20px;
  margin: 0;
}

#fs_MyWishList .favorite-acc-title {
  cursor: pointer;
  position: relative;
}

/* 開いているとき */
#fs_MyWishList .favorite-acc-title.active + .fs-c-list {
  max-height: 500px; /* 中身に合わせて十分な高さを指定 */
  margin-top: 10px;
  padding-bottom: 20px;
}

/* ＋／－マーク */
#fs_MyWishList .favorite-acc-title::after {
 content: "＋";
        position: absolute;
        right: 14px;
        transition: transform 0.3s;
        top: 15px;
}

#fs_MyWishList .favorite-acc-title.active::after {
  content: "－";
}
#fs_MyWishList .favorite-acc-title p{
margin-bottom: 0;
line-height: 55px;
position: relative;
}
#fs_MyWishList .fs-p-announcement__title{
  display: none;
}
#fs_MyWishList .fs-c-productList__list article {
    width: 47.8632vw;
    padding-bottom: 0px;
    position: relative;
    padding-top: 33px;
}
#fs_MyWishList .fs-c-productList__list{
  gap: 4.1880vw;
  margin-bottom: 115px;
}
#fs_MyWishList .fs-c-productListItem__image__image{
    height: 47.8632vw;
    height: auto;
}
#fs_MyWishList .fs-c-productList__list article::before {
    top: 4px;
    font-size: 12px;
}
.fs-c-productList__list article::before{
    font-size: 12px;
        top: 0px;
}
#fs_MyWishList .fs-c-productListItem__imageContainer {
    margin-bottom: 7px;
}
#fs_MyWishList .fs-c-productListItem__productName{
  margin-bottom: 0;
}
#fs_MyWishList .fs-c-productListItem__prices{
    position: relative;
    top: -4px;
}
#fs_MyWishList .fs-c-buttonContainer--myPageTop{
  padding: 0 26px;
}
.fs-c-productList__list{
  gap: 4.1880vw;
  gap:4%;
}
.fs-c-productListItem__image__image{
            height: 47.8632vw;
}
.fs-c-productList__list > article:nth-of-type(3n + 1) .fs-c-productListItem__productName,
.fs-c-productList__list > article:nth-of-type(3n + 1) .fs-c-productPrice__main {
    padding-left: 0;
}
.fs-c-productList__list > article:nth-of-type(2n + 1) .fs-c-productListItem__productName/*,
.fs-c-productList__list > article:nth-of-type(2n + 1) .fs-c-productPrice__main,
.fs-c-productList__list > article:nth-of-type(2n + 1) .fs-c-productListItem__notice,
.fs-c-productList__list > article:nth-of-type(2n + 1) .fs-c-salesPeriod */{
    padding-left: 22px;
}
.fs-c-productList__list > article:nth-of-type(2n + 1) .fs-c-productListItem__prices{
    padding-left: 22px;
}
.fs-c-salesPeriod__date{
      flex-direction: column;
}
.content-list {
    overflow: visible;
  }
  .panel__title{
    font-size: 25px;
  }
  .tabs__panel {
    width: 100%;
    box-sizing: border-box;
  }
.fs-c-salesPeriod__date dd{
  margin-left: 0em;
}
#fs_MyWishList .fs-c-button--removeFromWishList--icon,
#fs_MyWishList .fs-c-button--addToWishList--icon{
           right: 5px;
        top: auto;
        bottom: 8px;
        z-index: 111;
}
#fs_MyOrders .fs-c-history{
  flex-direction: column;
}
#fs_MyOrders .fs-p-announcement__body{
  width: 100%;
}
#fs_MyOrders .fs-c-history__info{
  width: 100%;
              margin-bottom: 40px;
  margin-top: 0;
              padding: 13px 13px 9px 13px;
}
#fs_MyOrders .fs-c-history__listContainer{
  width: 100%;
}
#fs_MyOrders .fs-c-orderHistoryItem__orderInfo{
  display: block;
}
#fs_MyOrders .fs-p-announcement{
  display: block;
              margin-bottom: 53px;
}
#fs_MyOrders .fs-p-announcement__body p{
margin-bottom:0;
}
#fs_MyOrders .fs-p-announcement__body p br{
  display: none;
}
#fs_MyOrders .fs-c-history__termCtrl{
  margin-bottom: 38px;
}
#fs_MyOrders .fs-c-history__termCtrl{
  margin-bottom: 43px;
}
#fs_MyOrders .fs-c-dropdown select{
    height: 44px;
    line-height: 44px;
        color: #000300 !important;
}
#fs_MyOrders .fs-c-pairList{
font-size: 12 px;
    letter-spacing: 0.14em;
    position: relative;
    padding-top: 0px;
    margin-bottom: 0;
    margin-top: 0;
}
#fs_MyOrders .fs-c-pairList,
#fs_MyOrders .fs-c-pairList .fs-c-price{
font-size: 13px;
}
#fs_MyOrders .fs-c-pairList {
  width: 100%;
  margin: 0;
  padding: 0;
}
#fs_MyOrders .fs-c-pairList dt,
#fs_MyOrders .fs-c-pairList dd {
  display: inline-block;
  width: 49%; /* 左右半分ずつ配置 */
  margin: 0 0 -3px;
            padding: 9px 0 0px 0;
  vertical-align: top;
}
#fs_MyOrders .fs-c-pairList dt {
  text-align: left; /* ラベル左寄せ */
}
#fs_MyOrders .fs-c-pairList dt.fs-c-history__number{
    padding-top: 6px;
}
#fs_MyOrders .fs-c-pairList dd {
  text-align: right; /* 値を右寄せ */
}
#fs_MyOrders .fs-c-listControl{
  display: none;
}
#fs_MyOrders .fs-c-orderHistoryItem__orderDate,
#fs_MyOrders .fs-c-orderHistoryItem__orderCode{
  display: flex;
  gap:1em;
}
#fs_MyOrders .fs-c-orderHistoryItem__header::before{
  height:3px;
}
#fs_MyOrders .fs-c-orderHistoryItem__header{
  display: block;
  padding: 32px 0 0 0;
  margin-bottom: 32px;
}
#fs_MyOrders .fs-c-button--viewOrderHistoryDetail{
    color: #606060;
    letter-spacing: 0.06em;
}
#fs_MyOrders .fs-c-orderHistoryItem__productName{
    margin-bottom: 0px;
    display: block;
}
#fs_MyOrders .fs-c-history__number::before{
  width: 312px;
}
#fs_MyOrders .fs-c-orderHistory::after{
  height:3px;
}
#fs_MyOrders .fs-c-buttonContainer{
  display: inline;
}
#fs_MyOrders .fs-c-button--myPageTop{
  display: block !important;
  margin-bottom: 219px;
}
#fs_MyOrders .fs-c-orderHistoryItem__orderSummary{
  position: absolute;
  right:0px;
  bottom: -1.8em;
  text-align: right;
}
#fs_MyOrders .fs-c-orderHistoryItem__orderInfo{
  position: relative;
  padding-bottom: 5px;
}
#fs_MyOrders .fs-c-orderHistoryItem__header::after{
      bottom: -10px;
}
#fs_MyOrders .fs-c-orderHistoryItem__productImage {
    width: 150px;
    float: right;
    margin-right: 0;
}
#fs_MyOrders .fs-c-orderHistoryItem__productImage {
    width: 98px;
    float: right;
    margin-right: 0;
}
#fs_MyOrders .fs-c-orderHistoryItem__deliveryInfo {
    display: flex;
    position: relative;
    right: 0px;
    top: 50%;
    transform: none;
    margin: 0;
    justify-content: flex-start;
}
#fs_MyOrders .fs-c-orderHistoryItem__productImage{
  float: right;
  margin-right: 0;
  margin-left: 20px;
  width: 98px;
}
#fs_MyOrders .fs-c-buttonContainer--addReview--detail{
  display: none;
}
#fs_MyOrders .fs-c-orderHistoryItem__productQuantity{
  margin-bottom: 24px;
}
/*注文履歴詳細*/
#fs_MyOrderDetails .fs-c-heading{
  margin-bottom: 41px;
}
#fs_MyOrderDetails .fs-c-orderDetail{
padding: 0;
}
#fs_MyOrderDetails .fs-c-orderDetailList dt{
    font-size: 13px;
    padding-top: 10px;
}
#fs_MyOrderDetails .fs-c-orderDetailList dd{
    font-size: 13px;
    padding-top: 10px;
}
#fs_MyOrderDetails .fs-c-orderDetailList dd {
    margin: 0;
    position: relative;
    padding-bottom: 14px;
    font-size: 13px;
    padding-top: 10px;
}
#fs_MyOrderDetails .fs-c-orderDetail__addresseeInfo{
      padding-top: 63px;
      margin-bottom: 90px;
}
#fs_MyOrderDetails .fs-c-orderDetail__addresseeInfo .fs-c-heading {
    margin-bottom: 21px;
    font-size: 16px;
    position: relative;
}
#fs_MyOrderDetails .fs-c-orderDetail__addresseeInfo .fs-c-heading::before {
    content: "";
    display: block;
    width: 100%;
    height: 3.3px;
    background-color: #9A918B;
    bottom: -14px;
    left: 0;
    position: absolute;
    font-size: 16px;
}
#fs_MyOrderDetails .fs-c-orderPerAddressee .fs-c-orderPerAddressee__heading{
  position: relative;
          font-size: 12px;
        margin-bottom: 16px;
}
#fs_MyOrderDetails .fs-c-orderPerAddressee .fs-c-orderPerAddressee__heading::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #9A918B;
    bottom: -3px;
    left: 0;
    position: absolute;
    font-size: 16px;
}
#fs_MyOrderDetails dl.fs-c-orderPerAddressee__addressee dd {
    margin: 0 0 0 23px;
    font-size: 12px;
}
#fs_MyOrderDetails dl.fs-c-orderPerAddressee__addressee .fs-c-addresseeList__address{
      clear: both;
}
#fs_MyOrderDetails dl.fs-c-orderPerAddressee__addressee dd span{
   display: block;
}
#fs_MyOrderDetails dl.fs-c-orderPerAddressee__addressee dd span.fs-c-address__zipCode,
#fs_MyOrderDetails dl.fs-c-orderPerAddressee__addressee dd span.fs-c-address__address{
  display: inline;
}
#fs_MyOrderDetails .fs-c-orderPerAddressee__cartTable{
      margin-bottom: 0px;
    width: 100%;
}
.fs-c-cartTable thead {
    position: relative;
    display: none;
}

.fs-c-orderPerAddressee__orderDeliveryInfo,
.fs-c-orderDetailInfo__orderTotal {
    width: 100%;
    float: none;
}
.fs-c-cartTable__dataCell--product{
  width: 100%;
}
#fs_MyOrderDetails .fs-c-cartTable__productImage{
width: 98px;
}

.fs-c-cartTable__dataCell--quantity{
  display: block;
    position: absolute;
    left: 122px;
    bottom: 13px;
    font-size: 13px;
    order:3;
    padding-top: 18px;
}
#fs_Checkout .fs-c-cartTable__dataCell--quantity{
padding-top: 30px !important;
 }
.fs-c-cartTable__dataCell--subtotal{
order:4;
}
.fs-c-cartTable__dataCell--quantity::before{
  content:"数量 "
}
.fs-c-cartTable__dataCell--quantity .fs-system-assistTarget::before{
display: none;
}
.fs-c-cartTable__dataCell--subtotal::before{
  content:"小計 "
}
.fs-c-cartTable__row{
      position: relative;
}
.fs-c-cartTable__dataCell--subtotal {
    padding-top: 20px;
    position: absolute;
    right: 0px;
    bottom: 13px;
    font-size: 13px;
}
.fs-c-orderTotalTable__postageFee,
.fs-c-orderTotalTable td{
    font-size: 13px;
    line-height: 1.5em;
}
#fs_MyOrderDetails .fs-c-orderTotalTable th{
font-size: 13px;
}

#fs_MyOrderDetails .fs-c-cartTable__productInfo{
padding-top: 0;
}
#fs_MyOrderDetails img.fs-c-productImage__image {
    width: 98px;
    height: 98px;
    object-fit: cover;
    margin-bottom: 18px;
    overflow: hidden;
    display: block;
    object-position: center;
}
#fs_MyOrderDetails .fs-c-orderTotalTable tr.fs-c-orderTotalTable__total th,
#fs_MyOrderDetails .fs-c-orderTotalTable tr.fs-c-orderTotalTable__total td{
  font-size: 16px;
}
#fs_MyOrderDetails .fs-c-deliveryInfoList dd {
    float: left;
    position: relative;
    margin-left: 124px;
}
#fs_MyOrderDetails .fs-c-deliveryInfoList dd:nth-child(2){
      margin-left: 138px;
}
#fs_MyOrderDetails .fs-c-deliveryInfoList::before{
  content: "";
        display: block;
        width: 100%;
        height: 3.3px;
        background-color: #9A918B;
        bottom: -63px;
        left: 0;
        position: absolute;
}
#fs_MyOrderDetails .fs-c-orderDetailInfo__heading{
font-size: 16px;
        margin-bottom: 10px;
}
#fs_MyOrderDetails .fs-c-orderDetailInfo__cartTable{
  width: 100%;
}

#fs_MyOrderDetails .fs-c-orderDetailInfo__orderTotal::before{
      height: 4.35px;
}
#fs_MyOrderDetails .fs-c-orderDetailInfo__orderTotal::after{
  height: 4px;
      bottom: -3px;
}
#brand h2.sec-ttl{
  position: relative;
  left: -32px;
}
.brand-img-wrap figcaption{
    margin-bottom: 5px;
    font-size: 23px;
}
/*brand overlay logo*/
.brand-img-wrap .img-wrap img.logo-overlay,
.brand-img-wrap .img02 .img-wrap img.logo-overlay,
.brand-img-wrap .img03 .img-wrap img.logo-overlay,
.brand-img-wrap .img04 .img-wrap img.logo-overlay{
  width: 45%;
}
#brand .brand-img-wrap figcaption {
    font-size: 24px;
    margin-bottom: 8px;
}

  #brand .product-card{flex-basis: calc((100% - 22px)/2)}
  #brand .figure--wide img,
  #brand .figure--full img{aspect-ratio:auto}
  #brand .block-row{gap:18px}
  .photo .aps-gallery__row{gap:18px}
  .photo .aps-about__row{gap:24px}
  /*slide*/
  .photo .aps-gallery {
    padding: 40px 0px 0px;
    overflow-x: auto;
}
#fs_Top .hero-inner{
    height: 170.769vw;
}
#fs_Top .hero-tag{
        position: absolute;
        left: auto;
        top: 60%;
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
        transform: translateY(-50%) rotate(90deg);
        right: -178px;
        right: -198px;
        gap: 6px;
        bottom:auto;
}
#fs_Top .slide-items img{
  height: auto;
}
#fs_Top .hero-tag .slide-num{
      gap: 9px;
}
#fs_Top .progress-border svg{
  width: 115px;
}
#fs_Top .slide-num .now-count, .slide-num .all-count{
  font-size: 16px;
        position: relative; 
        top: 3px;
}
#fs_Top .hero-tag .title{
  font-size: 19px;
        position: relative;
        padding-left: 31px;
                top: 3px;
                font-weight: 300;
    min-width: 220px;
    min-width: 260px;
    text-align: left;
}
#fs_Top .hero-tag .title::after{
  width: 1px;
  height: 14px;
  content:"";
  background-color: #fff;
  position: absolute;
  left: 16px;
        top: 0px;
}
#fs_MyPoints .fs-c-pointSummary__label--availablePoint{
  font-size: 12px;
  margin-bottom: 0;
}
#fs_MyPoints .fs-c-pointSummary__group.fs-c-pointSummary__group--availablePoint {
    width: 100%;
    position: relative;
            display: flex;
            justify-content: space-between;
            margin-bottom: 35px;
}
#fs_MyPoints .fs-c-pointSummary__group.fs-c-pointSummary__group--limitedPoint {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
                justify-content: flex-end;
                            margin-bottom: 26px;
}
#fs_MyPoints .fs-c-pointSummary__value--limitedPoint{
  margin-left: 0;
}
#fs_MyPoints .fs-c-pointSummary__label--limitedPoint,
#fs_MyPoints .fs-c-pointSummary__value--limitedPoint .fs-c-pointSummary__number{
font-size: 12px;
}
#fs_MyPoints .fs-c-pointSummary__value--limitedPoint .fs-c-pointSummary__number{
  padding-left: 2px;
}
#fs_MyPoints .fs-c-pointSummary__label--limitedPoint::after{
  content:":";
font-size: 12px;
            position: relative;
            top: -1px;
}
#fs_MyPoints .fs-c-pointSummary__group.fs-c-pointSummary__group--waitingPoint {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
                justify-content: space-between;
                margin-bottom: 4px;
}
#fs_MyPoints .fs-c-pointSummary__group.fs-c-pointSummary__group--purchasePointTotal {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
                justify-content: space-between;
}
#fs_MyPoints .fs-c-pointSummary__group.fs-c-pointSummary__group--availablePoint::after{
      height: 0.5px;
    width: 100%;
    right: 0px;
    top: auto;
    bottom: 0px;
    display: none;
}
#fs_MyPoints .fs-c-pointSummary__group--limitedPoint:after{
  content: "";
    display: block;
    width: 100%;
    height: 0.35px;
    background-color: #9A918B;
    bottom: -18px;
    position: absolute;
}
#fs_MyPoints .fs-c-history__info::after{
      bottom: 7px;
}
#fs_MyPoints .fs-c-pointSummary__label--availablePoint,
#fs_MyPoints .fs-c-pointSummary__label--waitingPoint,
#fs_MyPoints .fs-c-pointSummary__label--purchasePointTotal,
#fs_MyPoints .fs-c-pointSummary__value--waitingPoint .fs-c-pointSummary__number,
#fs_MyPoints .fs-c-pointSummary__value--purchasePointTotal .fs-c-pointSummary__number{
font-size: 12px;
}
/*
  .header-bar{padding:0.58565vw 0}
  */
  .hero-inner{flex-wrap:wrap}
  .hero-left, .hero-right{flex:1 1 100%}
  .hero-right{padding-block:1.61054vw}
  .product-card{flex-basis:72vw}
  .tile{flex-basis:100%}
  /*
  .photo .aps-head{padding-top:56px}
  .photo .aps-head__inner{flex-direction:column;gap:16px}
  .photo .aps-head__right{padding-left:0}
  .photo .aps-head__right::before{display:none}
  .photo .aps-gallery__row{flex-direction:column}
  .photo .aps-card__cap{font-size:12px}
  .photo .aps-center-ttl{font-size:22px;margin:48px 0 28px}
  .photo .aps-btn{width:100%}
  */
  .group-menu{ gap:18px; }
  .group-menu .submenu{ min-width:72vw; }
  #brand .brand-nav__list{
    justify-content:center;
                column-gap: 20px !important;
            row-gap: 10px !important;
            width: 300px;
    margin:0 auto !important;
    padding: 12px 0 12px !important;
  }
  #brand .brand-nav__list{

  }
  #brand .brand-lead__title{
    margin-top: 26px;
            font-size: 25px;
position: relative;
          }
          #brand .brand-lead__title::before{
            content: "";
            display: block;
            width: 100%;
            height: 0.35px;
            background-color: #71655D;
            position: absolute;
            bottom: 2px;
            left: 0;
          }
  #brand .filter{gap:10px}

/*online store*/
.fs-body-category .fs-l-pageMain{
  overflow: hidden;
}
#fs_ProductSearch .fs-l-pageMain::before{
  display: none;
}
.fs-c-productListItem__image__image{
  height: 47.8632vw;
}
#fs_ProductCategory .fs-c-productList__list article,
#fs_ProductSearch .fs-c-productList__list article{
      width: 47.8632vw;
      width: 48%;
}
#fs_ProductCategory .group-menu-left .group-menu,
#fs_ProductSearch .group-menu-left .group-menu{
  display: none;
}
.sds__priceRange{
      display: flex;
    justify-content: space-between;
}
.sds__priceRange input.pliceLower {
    margin-right: 0px;
}
.sds__priceRange::after{
      top: 16px;
      /*
                right: 162px;
                right: 41.0256vw;
        */
                left: 50%;
            transform: translateX(-50%);
}
button#sds_submit{
  color: #000300!important;
  width: 100%;
}
.fs-c-pagination__item{
      font-size: 14px;
    letter-spacing: 0.06em;
    margin: 0 10px;
}
.pagenation .fs-c-pagination__item--next::before,
.pagenation .fs-c-pagination__item--prev::before {
    font-size: 14px;
}

#fs_ProductCategory .group-menu_wrap,
#fs_ProductCategory.brand .group-menu_wrap,
#fs_ProductSearch .group-menu_wrap{
  margin-top:0;
      padding: 5px 20px 0px;
                  margin-bottom: 71px;
}
#fs_ProductCategory .group-menu_wrap h3,
#fs_ProductCategory.brand .group-menu_wrap h3,
#fs_ProductSearch .group-menu_wrap h3{
font-size: 27px;
    margin: 0 0 30px;
}

.fs-c-requiredMark, .fs-c-freeMark{
      border: solid #000000 0.8px;
}
span.fs-p-accountInfo__point__label::after {
    height: 0.8px;
}
#brand .fs-c-productList{
  position: relative;
}
#brand .fs-c-productList::after{
      content: "";
    display: block;
    width: calc(100% - 46px);
    height: 0.35px;
    background-color: #9A918B;
    bottom: -35px;
    position: absolute;
}
#brand .content-wrap::after{
      content: "";
    display: none;
    width: calc(100% - 46px);
    height: 0.35px;
    background-color: #9A918B;
    bottom: -35px;
    position: absolute;
}
.group-menu-inner.pc{
  display: none !important;
}
.group-menu-inner.sp{
  display: flex !important;
}
#fs_ProductCategory .group-menu-inner,
#fs_ProductSearch .group-menu-inner{
 padding: 21px 5px;
 position: relative !important;
}

#fs_ProductCategory .group-menu-inner::before,
#fs_ProductSearch .group-menu-inner::before{
content: "";
    display: block;
    width: 100%;
    height: 0.35px;
    background-color: #9A918B;
    position: absolute;
    top: 0px;
    left: 0;
}
#fs_ProductCategory .group-menu-inner h4,
#fs_ProductSearch .group-menu-inner h4{
            font-weight: 400;
            display: flex !important;
            align-items: center;
            gap: 12px;
                        letter-spacing: 0.06em;
                        font-size: 15px;
}
span.triangle-down{
width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 6px solid #000; /* ←黒い下向き三角形 */
}

/*メニュー開閉*/
.group-menu-inner-sp{
display: flex !important;
            justify-content: space-between;
            align-items: center;
}
/* ▼ 初期状態：非表示 */
.group-menu-sp {
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;         /* 絶対配置は避ける（submenuが下に伸びるため） */
  width: 100%;
  overflow: hidden;           /* max-height制御時のアニメーションを滑らかに */
  max-height: 0;              /* 閉じたときの高さ */
  opacity: 0;                 /* 見えない状態 */
  visibility: hidden;         /* 非表示として扱う */
  background: #F1F2DF;        /* 背景色（任意） */
  transition: max-height 0.5s ease, opacity 0.4s ease, visibility 0.4s ease;
  z-index: 100;
  top: 41px;
            width: 100vw;
            left: -25px;
            position: absolute;
            /*border-top: 1px solid #000;*/

}
#brand .brand-nav.brand-nav--pinned{
  padding-bottom: 0 !important;
}
.group-menu-sp::after{
  content: "";
    display: block;
    width: 100%;
    height: 0.35px;
    background-color: #9A918B;
    position: absolute;
    bottom: 0;
    left: 0;
}
.group-menu-left-sp h4{
  margin: 0;
  font-weight: 400;
}
.group-menu-right .group-menu{
            margin: 0;
            padding: 0;
}
.group-menu-right .group-menu > li > a,
.group-menu-right .group-menu > li > button{
  width: 160px;
  padding: 0;
  font-size: 15px;
  background: none;
  border: none;
      font-family: "arno-pro-display", serif;
    font-weight: 300;
    text-align: left;
}
.group-menu-right .group-menu > li > a::before,
.group-menu-right .group-menu > li > button::before{
             width: 99px;
            left: 39px;
            top: 15px;
            height: 1px;
}
.group-menu-right .group-menu > li > a::after,
.group-menu-right .group-menu > li > button::after {
    content: "";
    position: absolute;
    right: 0px;
    top: 9px;
    display: none;
}

.fs-sort-clone{
  list-style: disc;
      padding-left: 1em;
}
.sds__priceRange input{
      width: 140px;
      width: 35.897vw;
}
.group-menu-right .group-menu-sp li:hover > .submenu-sp,
  .group-menu-right .group-menu-sp li:focus-within > .submenu-sp {
    opacity: 0 !important;
    visibility: hidden !important;
    transform: none !important;
    pointer-events: none !important;
  }

.product-card a:hover img,
#fs_Top .fs-c-productListCarousel__list a:hover .fs-c-productListItem__image__image{
  transform: none;
}
/* ▼ Categoryタップで表示 */
.group-menu-left-sp{
  position: relative;
}
.group-menu-sp.is-open {
            z-index: 1;
  opacity: 1;
  visibility: visible;
  overflow-y: auto; 
  max-height: 80vh !important; /* スマホで画面いっぱいまで */
        }
      .group-menu-sp li a{
            padding: 13px 25px 10px;
            display: block;
            font-size: 18px;
            position: relative;
  background-color: #F1F2DF;
      }
      .group-menu-sp li a::before {
    content: url(https://casuca.itembox.design/item/2025/acc-plus.svg);
    position: absolute;
    right: 25px;
    top: 59%;
    transform: translateY(-50%);
    width: 16px;
    height: auto;
}
.group-menu-sp.is-open::after{
  content: "";
    display: block;
    width: 100%;
    height: 0.35px;
    background-color: #9A918B;
    position: absolute;
    bottom: 0;
    left: 0;
}
.group-menu-left-sp.is-open{
  margin-bottom: 40px;
}
.group-menu-right .group-menu-sp li a{
padding: 0;
font-size: 14px;
}
.group-menu-right .group-menu-sp li a::before,
.group-menu-right .group-menu-sp li a::after{
display: none;
}
      .group-menu-sp li.active-menu a::before {
    content: url(https://casuca.itembox.design/item/2025/acc-minus.svg);
}
      .group-menu-sp li.active-menu a::after {

      }
.group-menu-sp li .submenu-item a::before{
display: none;
}
.group-menu-sp li .submenu-item a{
  border:none;
  padding: 0px 40px 2px 40px !important;
  color:#787372;
}
.group-menu-sp li .submenu-item a span{
  font-size: 15px;
}
.group-menu-right .group-menu .submenu {
    position: absolute;
    top: 100%;
    width: 100vw;
    margin-top: 0;
    background: #F1F2DF;
    z-index: 50;
    opacity: 0;
    visibility: hidden;
    transition: opacity .18s 
ease, transform .18s 
ease, visibility .18s;
    pointer-events: none;
    white-space: nowrap;
    height: 360px;
                left: -205px;
                left: -52.56vw;
            top: 100%;
            width: 101vw;
            margin-top: 0;
            padding: 30px 7.692vw 40px 7.692vw;
}
.fs-c-productPrices--productDetail h2{
  display: none;
}

/* 初期状態：閉じて非表示 */
.submenu-sp {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.4s ease, opacity 0.3s ease;
  background: #F1F2DF;
}


/* 見た目調整（任意） */
.accordion-toggle-sp {
  display: block;
  padding: 12px 0;
  font-weight: bold;
  text-decoration: none;
  position: relative;
}

.accordion-toggle-sp::after {
  content: "＋";
  position: absolute;
  right: 0;
  transition: transform 0.3s ease;
}

.accordion-toggle-sp.active::after {
  content: "−";
}


.submenu-sp.is-open {
  opacity: 1;
  overflow-y: auto;
  max-height: 60vh; /* 個別メニューのスクロール範囲 */
              padding-bottom: 10px;
}
.group-menu-sp li.pulldown.open{
}

.group-menu-sp li.pulldown{
  position: relative;
              margin-bottom: 40px;
}
.group-menu-sp li.pulldown a{
  padding-bottom:0px;
}
.group-menu-sp li.pulldown a.btn-viewall{
  padding: 0;
  margin-top: 0;

}
.group-menu-sp li.pulldown a::after{
  content:"";
  display: block;
  height: 1px;
  background: #000;
  width: calc(100% - 40px);
            position: absolute;
            left: 20px;
            bottom: 0px;
            top:auto;
}
.group-menu-sp li.pulldown a::before{
content: "";
            display: block;
            width: 100%;
            height: 0.35px;
            background-color: #9A918B;
            position: absolute;
            bottom: auto;
            left: 0;
            top: 0;
}
.group-menu-sp li.pulldown a.btn-viewall::before,
.group-menu-sp li.pulldown a.btn-viewall::after{
display: none !important;
}
.btn-bridal-top,
#PS_PART .btn-wrap .btn-bridal-top{
  width: 100%;
              font-size: 15px;
}
.btn-viewall{
  border: 1px solid #000 !important;
    text-align: center;
    margin: 20px 20px 40px 20px;
    display: block;
        width: calc(100% - 40px);
    padding: 0;
        line-height: 32px;
    height: 30px;
}
.group-menu-sp li.pulldown a::before{}
.group-menu-sp li.pulldown .submenu-item a::after,
.group-menu-sp li.pulldown .submenu-item a::before{
  display: none;
}
.group-menu-sp li.pulldown::before{
content: "";
    position: absolute;
                right: 20px;
            top: 25px;
    width: 0;
    height: 0;
    margin-top: 0px;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 7px solid currentColor;
    transition: transform .18s 
ease;
    transform-origin: 50% 40%;
    z-index: 111;
}
.group-menu-sp li.pulldown .submenu-sp{
height: 300px;
overflow-y: scroll;
background-color: #EFEFE4;
border-radius: 14px;
padding-top: 10px;
margin-bottom: 40px;
}
.group-menu-sp li.pulldown .submenu-sp a{
background-color: #EFEFE4;
}
.group-menu-sp li.active-menu a{
border-bottom:none;
}
.group-menu-sp li a::after{
    content: "";
    display: block;
    width: 100%;
    height: 0.35px;
    background-color: #9A918B;
    position: absolute;
    top: 0;
    left: 0;
}
.group-menu-sp li .submenu-sp a::after{
display: none;
}

.triangle-down-sp {
  display: inline-block;
  position: relative;
  width: 12px;
  height: 12px;
  margin-left: 8px;
  vertical-align: middle;
}

/* ▼ 下向き三角をCSSで作成 */
.triangle-down-sp::before {
  content: "";
  position: absolute;
            left: -15px;
            top: 1px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 8px solid #000;
}

/* ▼ 開いた状態（×マークに変化） */
.triangle-down-sp.cross::before,
.triangle-down-sp.cross::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 1px;
  background: #000;
  transform-origin: center;
}

/* バツ線1本目 */
.triangle-down-sp.cross::before {
  transform: translate(-50%, -50%) rotate(45deg);
  border:none;
              height: 1px;
}
.triangle-down-sp.cross::after{
  height: 1px !important;
}

/* バツ線2本目 */
.triangle-down-sp.cross::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* アニメーション時の見た目微調整 */
.triangle-down-sp.cross {
  transform: rotate(0);
}
.group-menu-right .triangle-down-sp{
position: absolute;
            right: -7px;
            left: auto;
            top: 6px;
}
.triangle-down-sp.cross{
              top: -4px;
            right: 17px;
}
.group-menu-right .triangle-down-sp.cross{
             right: 9px;
            left: auto;
            top: 2px;
}
/*product*/
.fs-system-product{
      flex-direction: column;
      margin-bottom: 0;
}
/*checked item*/
.sec12{
      padding-top: 133px;
    padding-bottom: 118px;
      padding-top: 33px;
    padding-bottom: 0;
}
.sec12 .container h2.h2A::before{
left: 0;
width: 100%;
}
.fr3-productListStatic {
    gap: 10px;
    padding: 0 0 20px;
    display: flex;
    overflow-x: auto;
}
.sec12 .container h2.h2A,
.fs-c-productListCarousel[data-part-name="おすすめ商品"]::before{
      font-size: 26px;
    font-weight: 300;
    padding: 58px 0 0;
        margin-bottom: 31px;
}
.fr3-item{
  width: auto !important;
}
.fr3-item__imageContainer{
  width: 150px;
  margin-bottom: 2px;
}
.fr3-item:first-child .fr3-item__productName, .fr3-item:first-child .fr3-item__productPrice {
    padding-left: 15px;
}
.fr3-item__productPrice__price, .fr3-item__productPrice__addon{
  font-size: 11px;
}
.fr3-item__productName{
      font-size: 11px !important;
}

.fs-c-inquiryAboutProduct button,
.fs-c-inquiryAboutProduct button label{
color: #000300 !important;
}
.fs-l-productLayout__item--1{
width: 100%;
            display: flex;
            height: 362px;
            overflow-x: scroll;
                        gap: 3px;
                        -ms-overflow-style: none;  /* IE, Edge用 */
  scrollbar-width: none;     /* Firefox用 */
}
.fs-l-productLayout__item--1::-webkit-scrollbar {
  display: none;
}
.image-counter {
        position: absolute;
    left: auto;
    top: 8px;
    font-size: 20px;
    letter-spacing: 0.02em;
    right: 11px;
}
.fs-l-product2 .fs-c-productPlainImage img {
    width: 362px;
    height: 362px;
    max-width: unset;
}
.fs-l-productLayout__item--2::before,
#fs_Checkout .fs-l-main::before{
  display: none;
}
.fs-c-productPrice__addon__label{
      bottom: -8px;
    position: relative;
}
#fs_ProductCategory .fs-c-productPrice__addon__label,
#fs_ProductSearch .fs-c-productPrice__addon__label,
#fs_ShoppingCart .fs-c-productPrice__addon__label,
.fs-body-top .fs-c-productPrice__addon__label{
  bottom:0;
}
.fs-c-productPrice__main__addon__label{
  font-size: 12.05px !important;
}
.fs-l-product2 .fs-c-productPlainImage{
  margin-right: 4px;
}
.fs-l-productLayout__item--2{
width: 100%;
            padding: 57px 20px 0;
}
.fs-l-product2{
  padding-top: 60px !important;
}
.fs-c-productPrices--productDetail h2 {
    line-height: 1.8em;
    text-align: left;
    padding-left: 68px;
    margin: 0 0 42px;
    display: block;
}
.fs-l-product2 .fs-c-productPrices--productDetail span.sub-title{
      text-align: left;
    display: block;
    position: relative;
    font-size: 14.43px;
    letter-spacing: 0.04em;
    margin-bottom: 5px;
    padding-left: 68px;
}
.fs-l-product2 .fs-c-productPrices--productDetail span.sub-title::after{
  position: absolute;
}
.fs-l-product2 .fs-c-productPrice {
    text-align: center;
    position: relative;
    bottom: -10px;
    padding-left: 68px;
}
#fs_ProductDetails .fs-l-product2 .fs-c-productPrice{
  text-align: left;
    padding-left: 68px;
}
#fs_ProductDetails .fs-l-product2 .fs-c-productListCarousel .fs-c-productPrice{
  padding-left: 0;
}
.fs-l-product2 .fs-c-productListCarousel .fs-c-productPrice {
    text-align: left;
}
.fs-l-product2 .fs-c-productPrices--productDetail{
      margin-bottom: 85px;
}
.fs-l-product2 .fs-p-productDescription--full p {
    font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
    font-weight: 300;
    font-size: 13px;
    letter-spacing: 0.04em;
    text-align: justify;
    margin: 0 0 23px;
    line-height: 2.4em;
}
.fs-l-product2 .fs-c-productMarks{
  margin-right: 52px;
}
.fs-l-product2 .fs-c-productMarks::after {
    content: "";
    display: block;
    height: 23px;
    width: 0.35px;
    right: -15px;
    background: #ACA5A0;
    top: 0;
    position: absolute;
}
.fs-c-productSelection__label{
  font-size: 13px;
}
.fs-c-dropdown select, .fs-c-quantity__select{
  font-size: 13px;
}
.fs-l-product2 .fs-c-productMark .fs-c-productMark__item {
    position: relative;
    font-size: 12px;
} 
.fs-c-productActionButton{
      margin-bottom: 89px;
}
/*search buttton*/
button.fs-p-searchForm__button,
.fs-p-searchForm__inputGroup input{
      width: 87vw;
      color: #000300 !important;
      border: 1px solid #BFBFA0;
}
.fs-p-searchForm__inputGroup input{
  border-radius: 0;
  font-size: 16px;
}
.fs-p-searchForm__inputGroup::after{
      right: 4vw;
}
select, input, textarea{
  font-size: 16px !important;
}

/*point*/
#fs_MyPoints .fs-c-history__infoSummary{
    padding: 14px 0;
            margin-bottom: 60px;
}
#fs_MyPoints .fs-c-pointSummary{
margin:0;
}
#fs_MyPoints .fs-c-pointSummary__value--availablePoint{
  padding-left: 0;
      line-height: 1.0em;
    padding-top: 9px;
}
#fs_MyPoints .fs-c-pointSummary__value--availablePoint .fs-c-pointSummary__number{
      font-size: 23px;
}
#fs_MyPoints .fs-c-dropdown select {
    width: 100%;
    height: 42px;
    line-height: 42px;
    padding: 0 10px;
    color:#000300 !important;
}
#fs_MyPoints .fs-c-dropdown select option{
    color:#000300 !important;

}
#fs_MyPoints .fs-c-listControl__status{
      margin-bottom: 0;
    margin-top: 12px;
}
#fs_MyPoints .fs-c-pointListTable thead{
      width: 30%;
}
#fs_MyPoints .fs-c-pointListTable tbody{
      width: 70%;
}
#fs_MyPoints .fs-c-pointListTable thead::before{
  display: none;
}


#fs_MyPoints .fs-c-pointListTable {
         width: 100%;
        display: flex;
        justify-content: space-between;
      background: #E4E4D4;
          padding: 4px 14px 3px 14px;
}

/* 各行を横並び化 */
#fs_MyPoints .fs-c-pointListTable thead tr {
  display: flex;
  flex-wrap: wrap;
          align-items: flex-start;
  flex-direction: column;
}
#fs_MyPoints .fs-c-pointListTable tbody tr {
  display: flex;
  flex-wrap: wrap;
          align-items: flex-end;
  flex-direction: column;
}
#fs_MyPoints .fs-c-pointListTable thead::after{
  display: none;
}

/* 不要な余白・線をリセット */
#fs_MyPoints .fs-c-pointListTable th,
#fs_MyPoints .fs-c-pointListTable td {
        border: none;
        padding-top: 10px;
        padding-bottom: 8px;
        height: auto;
        line-height: 2.0em;
        letter-spacing: 0;
            font-size: 11px;
  position: relative;
}
#fs_MyPoints .fs-c-pointListTable th{
  display: block;
        width: 100%;
}
#fs_MyPoints .fs-c-pointListTable th:last-child::after,
.fs-c-pointListTable + * {
display: none;
}
#fs_MyPoints .fs-c-pointListTable td{
  display: block;
        width: 100%;
        text-align: right;
        justify-content: flex-end;
}
#fs_MyPoints .fs-c-pointListTable td::after{
  content: "";
  display: block;
  height: 0.7px;
  background: #71655D;
  width: 79.487179vw;
  position: absolute;
  right: 0px;
  bottom:0px;
}

#fs_MyPoints .fs-c-pointListTable thead tr th:nth-child(2){
          padding-bottom: 24px;
}


#fs_MyPoints .fs-c-pointListTable thead tr th:nth-child(4){
  color: transparent; /* 既存の文字を非表示 */
  position: relative;
          height: 22px;
}
#fs_MyPoints .fs-c-pointListTable thead tr th:nth-child(4)::before {
  content: "獲得・利用";
  color: #000; /* テキスト色を元に戻す */
  position: absolute;
  left: 0;
  top: 8px;
}

#fs_MyPoints .fs-c-pointListTable thead tr th:nth-child(4)::after{
  bottom:-18px;
}
#fs_MyPoints .fs-c-pointListTable thead tr th:last-child{
      padding-top: 25px;
}
/* 表示したい2カラム（例：日付とポイント種類）を横並びに */
#fs_MyPoints .fs-c-pointListTable td[aria-label="日付"],
#fs_MyPoints .fs-c-pointListTable td[aria-label="ポイント種類"] {
  display: flex;
  align-items: center;
  gap: 0.5em; /* 間の余白 */
  width: auto; /* 可変幅 */
  width: 100%;
}
#fs_MyPoints .fs-c-pointListTable td[aria-label="ポイント種類"]{
  padding-bottom: 24px;
}
#fs_MyPoints .fs-c-pointListTable td[aria-label="有効期限"]::after{
display: none;
}

/* 見た目調整 */
#fs_MyPoints .fs-c-pointListTable__pointType {
  display: inline;
  text-align: right;
}
#fs_MyPoints .fs-c-pointListTable td[aria-label="獲得・利用ポイント"] .fs-c-pointListTable__data,
#fs_MyPoints .fs-c-pointListTable__dataDetail{
  font-size: 11px;
}

/*住所リスト*/
#fs_MyAddressBook .fs-c-buttonContainer{
  gap:0;
          margin-bottom: 56px;
}
#fs_MyAddressBook .fs-c-addressBookList__form a.fs-c-button--addToAddressbook{
  position: relative;
    right: 0px;
    top: 0;
    margin-top: 0;
            width: 100%;
            height: 45px;
            line-height: 45px;
}
#fs_MyAddressBook .fs-c-addressBookList__list ruby rt{
      padding-top: 15px;
}
#fs_MyAddressBook .fs-c-addressBookList__list ruby{
  margin-bottom: 20px;
}
#fs_MyAddressBook .fs-c-address__zipCode,
#fs_MyAddressBook .fs-c-address__address{
      margin-bottom: 7px;
}

#fs_MyAddressBook .fs-p-announcement,
#fs_Register .fs-p-announcement{
  margin-bottom: 0;
}
#fs_MyAddressBook .fs-p-announcement__title,
#fs_Register .fs-p-announcement__title{
      margin-bottom: 37px;
}
#fs_MyAddressBook .fs-p-announcement__body,
#fs_Register .fs-p-announcement__body,
#fs_Register .fs-c-memberInfoField{
             padding: 0 0 40px;
            margin-bottom: 40px;
}
#fs_Register .fs-c-radioGroup {
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
#fs_Register .fs-c-inputInformation__message{
  margin-bottom: 40px;
}
#fs_Register .fs-p-announcement::before{
  display: none;
}
#fs_Register .check-wrapper{
  flex-direction: column;
  gap:20px;
}
#fs_Register .fs-c-dropdownGroup, #fs_CustomerDetails .fs-c-dropdownGroup{
      flex-direction: column;
}
#fs_Register .fs-c-dropdownGroup .fs-c-dropdown select,
#fs_CustomerDetails .fs-c-dropdownGroup .fs-c-dropdown select{
width: 100%;
}
#fs_MyAddressBook .fs-p-announcement__body .fs-c-list{
  padding-left: 13px;
          margin-bottom: 60px;
  font-size: 11px;
  letter-spacing: 0;
}
#fs_MyAddressBook .fs-p-announcement__body .fs-c-list li:first-child{
  margin-bottom: 8px;
}
#fs_MyAddressBook .fs-c-addressBookList__count{
  display: none;
}
#fs_MyAddressBook .fs-c-addressBookList{
  position: relative;
}
#fs_MyAddressBook .fs-c-addressBookList::before{
  content:"";
  display: block;
  width: 100%;
  height: 0.7px;
  background: #000300;
  position: absolute;
  top: -30px;
  left: 0;
}
#fs_MyAddressBook .fs-c-addressBookList__list tr{
  display: flex;
  flex-direction: column;
}
#fs_MyAddressBook .fs-c-addressBookList__list td{
  padding: 0;
}
#fs_MyAddressBook .fs-c-addressBookList__list td:nth-child(2){
      padding-top: 28px;
}
#fs_MyAddressBook .fs-c-addressBookList__list td:last-child{
  position: absolute;
  top:13px;
  right:0px;
  font-size: 11px;
}
#fs_MyAddressBook .fs-c-buttonContainer--deleteChange .fs-c-button--changeInfomation{
    margin-right: 50px;
}
#fs_MyAddressBook .fs-c-button--delete::before {
         bottom: 2px;
        left: -22px;
        height: 11px;
}
#fs_MyAddressBook .fs-c-addressBookList__list .fs-c-address{

}
#fs_MyAddressBook table.fs-c-addressBookList__list::before,
#fs_MyAddressBook table.fs-c-addressBookList__list::after{
  height: 0.7px;
}
#fs_MyAddressBook table.fs-c-addressBookList__list::after{
      bottom: -13px;
}
#fs_MyAddressBook .fs-c-address__tel{
      margin-top: 4px;
}
#fs_MyAddressBook .fs-c-button--delete {
    font-size: 11px;
}
#fs_EditAddress .fs-c-inputInformation__button{
  gap: 15px;
}
#fs_MyAccountSettings .fs-c-button--change,
#fs_EditAccountSettings .fs-c-inputInformation__button button,
#fs_NewAddress button.fs-c-button--register,
#fs_NewAddress .fs-c-button--cancel,
#fs_EditAddress .fs-c-inputInformation__button button,
#fs_DeleteAccount .fs-c-button--cancel,
#fs_EditPassword .fs-c-inputInformation__button button,
#fs_DeleteAccount .fs-c-button--confirmLeave,
#fs_EditAddress .fs-c-button--cancel,
input.fs-c-button--confirmChange{
  width: 100%;
}
/*会員情報*/
#fs_MyAccountSettings .fs-c-inputInformation__message p{
font-size: 12px;
}
#fs_MyAccountSettings .fs-c-button--change{
  margin-top: 0;
}
#fs_MyAccountSettings .fs-c-inputInformation__message{
margin-bottom: 60px;
}
#fs_MyAccountSettings .fs-c-inputTable{
  margin-left: 0;
  margin-bottom: 0;
}
#fs_MyAccountSettings .fs-c-memberInfoField{
  margin-bottom: 60px;
}
.fs-c-inputTable .fs-c-inputTable__headerCell{
  width: 100%;
  font-size: 11px;
}
#fs_MyAccountSettings .fs-c-inputTable .fs-c-inputTable__headerCell{
width: 40%;
}
#fs_EditPassword .fs-c-inputTable .fs-c-inputTable__headerCell,
#fs_Login .fs-c-inputTable .fs-c-inputTable__headerCell,
.bridal-catalogue .fs-c-inputTable .fs-c-inputTable__headerCell{
width: auto;
}
#fs_MyAccountSettings .fs-c-inputTable__dataCell{
  width: 60%;
  font-size: 11px;
}
#fs_EditPassword .fs-c-inputTable__label{
  font-size: 12px;
}
/*contact*/
.contact-page::before{
  display: none;
}
#fs_Content.fs-l-pageMain{
  padding: 107px 23px 0;
}
#fs_Content .contact-inner .fs-c-heading{
  padding-top: 0;
  font-size: 26px;
}
#fs_Content .contact-inner .fs-c-heading span{
        font-size: 20px;
        padding-top: 42px;
}
#fs_Content .main::before{
  top:-17px;
}
#fs_Content .main{
  padding-top: 7px;
}
#fs_Content .main p {
    font-size: 12px;
    line-height: 2.5em;
        margin-bottom: 68px;
}
#fs_Content .link ul a, .guide-container .link ul a{
      font-size: 13px;
    padding-left: 6px;
    letter-spacing: 0.14em;
            height: 79px;
        line-height: 79px;
}
/*ブライダルカタログ*/
.bridal-catalogue.pages-wrap::before{
      left: 26px;
      top: 230px;
    width: calc(100% - 52px);
}
.pages-wrap .page-head{
      padding-top: 136px;
}
#customize.bridal-catalogue h2{
  font-size: 20px;
  text-align: center;
  margin-top: 0;
  margin-bottom: 59px;
}
#forms p.lead {
            padding: 26px 0 0 0;
        margin-bottom: 89px;
        font-size: 12px;
        line-height: 2.1em;
}
.fs-c-inputTextGroup__item_tel input{
              width: 29.8%;
}
.fs-c-birthdayOnceMessage{
      font-size: 12px;
}
.fs-c-inputTextGroup__item input[name="field_4375235"],
.fs-c-inputTextGroup__item input[name="field_4375236"],
.fs-c-inputTextGroup__item select[name="field_4375238_pref"],
.fs-c-inputTextGroup__item input[name="field_4375238_city"],
.fs-c-inputTextGroup__item input[name="field_4375238_block"],
.fs-c-inputTextGroup__item input[name="field_4375238_building"]{
  width: 100%;
}
ul.lead-list{
  padding-left: 1em;
  padding-top: 26px;
  margin-bottom: 100px;
}
ul.lead-list li{
  font-size: 12px;
          line-height: 2.1em;
}
/*cart*/
#fs_ShoppingCart .fs-l-pageMain::before{
  display: none;
}
#fs_ShoppingCart .fs-c-heading{
  font-size: 20px;
              margin: 0 0 25px;
}
#fs_ShoppingCart .fs-c-cartTable__product,
#fs_Checkout .fs-c-cartTable__product{
      flex-direction: row;
              gap: 24px;
                  align-items: flex-start;
                  width: 100%;
}
#fs_ShoppingCart .fs-c-cartTable thead,
#fs_Checkout .fs-c-cartTable thead{
display: none;
}
#fs_ShoppingCart .fs-c-cartTable__row,
#fs_Checkout .fs-c-cartTable__row{
      display: flex;
        flex-direction: column;
        padding: 20px 0 6px;
        position: relative;
}
#fs_Checkout .fs-c-cartTable__row{
  padding: 0 0 26px;
  margin-bottom: 26px;
}
#fs_Checkout .fs-c-cartTable tr:last-child{
  margin-bottom: 0;
}
#fs_ShoppingCart .fs-c-cartTable__row::before{
content: "";
display: block;
position:absolute;
width: 100%;
        height: 3px;
        background: #d0cfbb;
        left: 0px;
        top: 0px;
}
#fs_ShoppingCart .fs-c-cartTable__dataCell,
#fs_Checkout .fs-c-cartTable__dataCell{
  width: 100%;
          display: flex;
        justify-content: space-between;
        order:4;
  font-size: 12px;
  position: relative;
  left: 0;
}
#fs_ShoppingCart .fs-c-cartTable__dataCell--point::before,
#fs_Checkout .fs-c-cartTable__dataCell--point::before{
  content:"ポイント"
}
#fs_ShoppingCart .fs-c-cartTable__quantity::before,
#fs_Checkout .fs-c-cartTable__quantity::before{
  content:"数量";
  font-size: 12px;
}
#fs_Checkout span.fs-c-cartTable__quantity::before{
display: none;
}
#fs_ShoppingCart .fs-c-cartTable__dataCell--subtotal::before,
#fs_Checkout .fs-c-cartTable__dataCell--subtotal::before{
  content:"小計"
}
#fs_ShoppingCart .fs-c-cartTable__dataCell--product,
#fs_Checkout .fs-c-cartTable__dataCell--product{
  width: 100%;
  order:1;
  position: relative;
}
#fs_ShoppingCart .fs-c-cartTable__dataCell--product::before,
#fs_Checkout .fs-c-cartTable__dataCell--product::before{
content:"";
display: block;
position: absolute;
        height: 0.35px;
        width: 100%;
        border: 0;
        left: 0;
        bottom: 5px;
        background: #9D9998;
}
#fs_Checkout .fs-c-cartTable__dataCell--product{
  padding-top: 0;
}
#fs_ShoppingCart .fs-c-cartTable__productName,
#fs_Checkout .fs-c-cartTable__productName{
  font-size: 12px;
}
#fs_ShoppingCart .fs-c-cartTable__dataCell--subtotal,
#fs_Checkout .fs-c-cartTable__dataCell--subtotal{
  width: 100%;
        display: flex;
        justify-content: space-between;
        order:4;
        padding-top: 17px;
            position: relative;
           top: -1px;
              align-items: center;
        padding-bottom: 8px;
}
#fs_ShoppingCart .fs-c-cartTable__dataCell--point,
#fs_Checkout .fs-c-cartTable__dataCell--point{
  width: 100%;
        display: flex;
        justify-content: space-between;
  order:2;
  padding: 4px 0 0 0;
  margin-bottom: 10px;
}
#fs_Checkout .fs-c-cartTable__dataCell{
padding-top:0px;
}
#fs_Checkout .fs-c-cartTable__dataCell--subtotal{
  padding-top: 16px !important;
}
#fs_Checkout .fs-c-cartTable__dataCell--point{
  padding: 6px 0 0 0;
}
#fs_ShoppingCart .fs-c-cartTable__productInfo,
#fs_Checkout .fs-c-cartTable__productInfo{
  padding: 0;
      top: -8px;
}
#fs_ShoppingCart .fs-c-quantity__select{
      position: absolute;
    right: 0;
        margin-top: -4px;
        font-size: 12px;
        height: 30px;
        line-height: 30px;
        color: #000300 !important;
}
/*
#fs_ShoppingCart .fs-c-button--primary{
  margin-bottom: 20px;
}
*/

#fs_ShoppingCart .fs-c-quantity__select option,
#fs_ShoppingCart .fs-c-cartTable__actionButton button, #fs_ShoppingCart .fs-c-cartTable__actionButton button{
        color: #000300 !important;
}
#fs_ShoppingCart .fs-c-price__price--taxIncl {
    font-size: 17px;
}
#fs_ShoppingCart .fs-c-cartTable__dataCell--action{
display: flex;
                justify-content: flex-end;
        position: relative;
}

#fs_ShoppingCart .fs-c-cartTable__dataCell--action::before{
  content: "";
display: block;
position:absolute;
width: 100%;
        height: 0.7px;
        background: #d0cfbb;
        left: 0px;
        top: 3px;
}
#fs_ShoppingCart .fs-c-cartTable__actionButton{
  position: relative;
          padding-top: 10px;
}
#fs_ShoppingCart .fs-c-cartTable{
  position: relative;
}
#fs_ShoppingCart .fs-c-cartTable::after{
content: "";
display: block;
position:absolute;
width: 100%;
        height: 3px;
        background: #d0cfbb;
        left: 0px;
        bottom: 0px;

}
.fs-c-cartTable__actionButton__container--buyItLater::before {
    width: 0.35px;
    height: 16px;
    bottom: 5px;
    left: 16px;
}
#fs_ShoppingCart .fs-c-cartTable__productImage,
#fs_ShoppingCart .fs-c-cartTable__productImage{
    width: 98px;
    margin-bottom: 25px;
    flex-shrink: 0;
}

#fs_ShoppingCart .fs-c-cartTable__row::after{
content: "";
  display: none;
  width: 100%;
  height: 0.35px;
  background-color: #9D9998;
  bottom: 0px;
left:0;
  position: absolute;
}
#fs_ShoppingCart .fs-c-cartTable__actionButton button,
#fs_ShoppingCart .fs-c-cartTable__actionButton button{
  font-size: 12px;
  margin-bottom: 0;
}
#fs_ShoppingCart .fs-c-cartTable__actionButton button{
  padding-right: 0;
}
#fs_ShoppingCart #fs-cartTotals-container table::before{
  height: 3px;
  background: #d0cfbb;
}
#fs_ShoppingCart .fs-p-announcement__title{
            margin-bottom: 15px;
}
#fs_ShoppingCart .fs-c-orderTotalTable__itemPriceSummary .fs-c-price__currencyMark{
  font-size: 17px;
}
#fs_ShoppingCart main p {
    margin-bottom: 10px;
    font-size: 12px;
}
/*checkout*/
#fs_Checkout .fs-l-checkout{
      flex-direction: column;
      padding: 0 23px;
}
#fs_Checkout .fs-c-checkout-couponCodeInput__input input{
  width: 100%;
}
#fs_Checkout .fs-c-checkout-wrappingInfo__info,
#fs_Checkout .fs-c-checkout-pointInfo__usePoint{
  width: 100%;
}
#fs_Checkout .fs-c-checkout-couponCodeInput__input input{
  margin-right: 0;
}
#fs_Checkout .fs-c-checkout-couponCodeInput__input{
  margin-left: 0;
}
#fs_Checkout .fs-c-heading{
      padding-top: 132px;
      margin-bottom: 52px;
}
#fs_Checkout .fs-c-buttonContainer{
  position: relative;
  bottom:0;
}
#fs_Checkout .fs-c-checkout-destination__destination .fs-c-checkout-destination__control {
    position: relative;
    right: auto;
    left: 0;
    bottom: 0;
    text-align: left;
}
#fs_Checkout .fs-c-checkout-preview__title{
      margin-bottom: 9px;
      display: block;
}
#fs_Checkout .fs-c-checkout-preview__title::after{
      bottom: 7px;
    width: 100%;
    height: 3px;
    background: #A59D98;
}
#fs_Checkout .fs-c-checkout-customerInfo__name{
  margin-bottom: 25px;
}
#fs_Checkout ruby > rt{
      margin-bottom: 22px;
}
.fs-c-checkout-customerInfo__email, .fs-c-checkout-customerInfo__address, .fs-c-checkout-customerInfo__tel, .fs-c-checkout-destination__address, .fs-c-checkout-destination__tel{
      font-size: 12px;
    letter-spacing: 0.14em;
    line-height: 2.4em;
}
#fs_Checkout .fs-c-checkout-customerInfo{
margin-bottom: 15px;
position: relative;
}
#fs_Checkout .fs-c-checkout-customerInfo::after{
content: "";
  display: none;
  width: 100%;
  height: 0.35px;
  background-color: #ACA5A0;
  bottom: 0px;
left:0;
  position: absolute;

}
#fs_Checkout .fs-c-checkout-preview__body::after{
content: "";
  display: block;
  width: 100%;
  height: 0.35px;
  background-color: #9D9998;
  bottom: -4px;
left:0;
  position: absolute;
}
.fs-c-checkout-destination__destination{
padding-bottom: 15px;
}
#fs_Checkout .fs-c-checkout-destination__address{
      margin-top: 24px;
}
#fs_Checkout .fs-c-checkout-destination__tel{
  margin-bottom: 45px;
}
#fs_Checkout .fs-c-checkout-couponInfo__message p{
  left: 0;
  font-size: 12px;
  margin-bottom: 25px;
}
#fs_Checkout .fs-c-checkout-couponCodeInput{
  font-size: 12px;
  margin: 0;
  display: block;
}
#fs_Checkout .fs-c-couponCodeInput__button{
margin-top: 0px;
    display: block;
}
#fs_Checkout .fs-c-checkout-couponList{
  display: block;
  clear: both;
margin-top: 30px;
            padding-bottom: 16px;
}
#fs_Checkout .fs-c-checkout-wrappingInfo__info, #fs_Checkout .fs-c-checkout-pointInfo__usePoint{
              margin: 0 3% 16px 0;
}
#fs_Checkout .fs-c-checkout-pointInfo__comment p{
  margin-bottom: 0;
}
#fs_Checkout .fs-c-checkout-delivery__method__message p{
margin-bottom: 20px;
}
#fs_Checkout .fs-c-checkout-wrappingMessage p{
margin-bottom: 20px;
  display: block;
}
#fs_Checkout .fs-c-checkout-delivery__method__title{
  padding-left: 0;
}
#fs_Checkout .fs-c-checkout-communicationInfo__message p{
  margin-bottom: 0;
}
#fs_Checkout .fs-c-returnedSpecialContract{
  margin-bottom: 60px;
}
#fs_Checkout #fs-buyerInfo-container,
#fs_Checkout #fs-addressInfo-container{
margin-bottom: 46px;
}
#fs-couponInfo-container, #fs-pointInfo-container, #fs-deliveryInfo-container, #fs-wrappingInfo-container, #fs-communicationInfo-container {
    margin-bottom: 46px;
}
#fs-paymentList-container{
  margin-bottom: 26px;
}
#fs-communicationInfo-container{
  margin-bottom: 86px;
}
#fs_Checkout .fs-c-checkout-destination__tel{
  margin-bottom: 18px;
}
#fs_Checkout .fs-c-checkout-paymentInfo__message p{
font-size: 12px;
}
ul.fs-c-checkout-paymentMethodList{
  margin-top: 12px;
}
#fs_Checkout .fs-c-button--standard.fs-c-button--inputCreditCardData{
      width: 215px;
    height: 30px;
    box-shadow: none;
    font-size: 13px;
}
#fs_Checkout .fs-c-button--standard{
  height: 34px;
    line-height: 34px;
}
#fs_Checkout .fs-c-checkout-buyerInfo__body .fs-c-button--standard,
.fs-c-checkout-couponList__item{
margin-bottom: 12px;
}
#fs_Checkout .fs-c-radio__radio{
  top: -3px;
}
.fs-c-checkout-paymentMethod__message p{
      margin: 0 0 15px;
    font-size: 14px;
}
.fs-c-checkout-couponCodeInput__input{
float: left;
width: 69%;
            margin-right: 3%;
}
#fs_Checkout .fs-c-checkout-wrappingInfo__info,
#fs_Checkout .fs-c-checkout-pointInfo__usePoint{
          float: left;
            width: 69%;
            margin: 0 3% 46px 0;
            font-size: 12px;
                line-height: 22px;
    padding: 5px 15px;
            height: auto;
                flex-wrap: wrap;
}
.fs-c-checkout-previewAndEdit::after{
  clear:both;
  content:"";
  display: block;
}
.fs-c-checkout-confirmationList__value{
  margin-left: 0px;
}
#fs_Checkout .fs-c-checkout-wrappingInfo__body .fs-c-buttonContainer,
#fs_Checkout .fs-c-checkout-pointInfo__body .fs-c-buttonContainer{
  bottom:0 !important;
}
.fs-c-checkout-communicationInfo__body{
            padding-bottom: 37px;
}
#fs_Checkout .fs-c-checkout-preview__inputConfirmation{
margin-top: 20px;
}
#fs-orderContents-container .fs-c-checkout-preview__body::after{
  display: none;
}
#fs_Checkout .fs-c-checkout-paymentMethod__body{
  display: none;
}
#fs_Checkout .fs-c-checkout-paymentMethod.is-active .fs-c-checkout-paymentMethod__body{
  display: block;
}
#fs_Checkout .fs-l-checkout__sideColumn{
  width: 100%;
  max-width: 100%;
}
#fs_Checkout #fs-orderContents-container .fs-c-buttonContainer--changeSmall{
  position: relative;
  width: 100%;
            display: block;
            text-align: right;
            padding: 12px 0 0;
}
#fs_Checkout #fs-orderContents-container .fs-c-buttonContainer--changeSmall::before{
content: "";
  display: block;
  width: 100%;
  height: 0.35px;
  background-color: #9D9998;
  top: 0px;
left:0;
  position: absolute;
}
#fs_Checkout #fs-orderContents-container .fs-c-buttonContainer--changeSmall::after{
content: "";
  display: block;
  width: 100%;
  height: 0.35px;
  background-color: #9D9998;
  bottom: 0px;
left:0;
  position: absolute;
}
/*gift wrapping*/
section.customize{
      gap: 60px;
    flex-direction: column;
}
.gift-wrapping .page-head{
              padding-top: 92px;
}
.gift-wrapping section.customize{
      padding: 34px 0 0px;
  gap:46px;
}
.gift-wrapping section.customize .photo-area{
  width: 100%;
}
.gift-wrapping section.customize .photo-area figure{
width: 100vw;          /* 画面幅いっぱい */
  margin-left: -23px;    /* 左のpaddingを打ち消す */
  margin-right: -23px;   /* 右のpaddingを打ち消す */
}
.gift-wrapping.pages-wrap::before{
      top: 205px;
}
#customize.gift-wrapping h2{
      margin-bottom: 80px;
}
#customize.gift-wrapping p.subtext-jp{
      font-size: 12px;
      margin-bottom: 22px;
          line-height: 2.5em;
}
.gift-wrapping section.customize .text-area{
  width: 100%;
}
.gift-wrapping section.customize .text-area p{
font-size: 12px;
    line-height: 2.4em;
    padding-bottom: 22px;
}
.gift-wrapping section.customize .text-area h3{
  margin-bottom: 40px;
}
/*キャンセル*/
#about-cancel .fs-l-pageMain{
  padding-top: 114px;
}
#about-cancel .fs-c-heading{
              font-size: 18px;
  text-align: left;
  margin-bottom: 87px;
}
#about-cancel .text{
  position: relative;
}
#about-cancel .text::before{
content: "";
    display: block;
    height: 0.35px;
    width: 100%;
    left: 0;
    background: #ACA5A0;
    top: -18px;
    position: absolute;
    display: none;
}
#about-cancel .section p{
  margin-bottom: 30px;
  position: relative;
  font-size: 13px;
}

#about-cancel .section p.tbox::before{
content: "";
    display: block;
    height: 0.35px;
    width: 100%;
    left: 0;
    background: #ACA5A0;
    top: -18px;
    position: absolute
}
#about-cancel .section ul{
  padding-left: 0;
}
#about-cancel a.btn-back{
  width: 100%;
              margin-top: 40px;

}
/*privacy policy*/
#privacy .pages-wrap .page-head__title{
    font-size: 25px;
    margin-bottom: 63px;
    margin-top: 0;
    font-family: 'arno-pro-display';
}
.pages-wrap .page-head__title span{
font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
font-weight: 300;
font-size: 18px;
display: block;
padding-top: 40px;
            margin-bottom: 83px;
}
#privacy.pages-wrap{
  position: relative;
}
#privacy.pages-wrap::before,
#legal.pages-wrap::before{
    display: none;
}
#privacypolicy p{
  font-size: 12px;
      padding-bottom: 0px;
    margin-bottom: 0;
}
#privacypolicy p::before{
      top: -30px;
}
#privacypolicy p.privacy01,
#privacypolicy p.privacy06,
#privacypolicy p.privacy07{
    margin-bottom: 91px;
}
#privacypolicy .inner::after,
#privacypolicy.pages-wrap::before{
  display: none;

}
.terms #privacypolicy .inner h3::before{
      top: -35px;
}
.pages-wrap.terms .page-head__title{
  margin-bottom: 84px;
}
.pages-wrap.terms .page-head__title span{
            margin-top: 0px;
            font-size: 20px;
            margin-bottom: 0;
}
#legal .terms #privacypolicy .inner h3{
  margin-bottom: 26px;
}

/*company*/
#company .page-head{
              padding-top: 108px;
}
#company .page-head__title {
    font-size: 26px;
    margin-bottom: 28px;
    margin-top: 27px;
}
#company .company-table tr:first-child th,
#company .company-table tr:first-child td{
  border-top:none;
}
#company.pages-wrap::before{
display: none;
}
.company-table th{
  width: 40%;
}
.company-table th, .company-table td{
  font-size: 13px;
}
/*shopping guide*/
.shopping-guide .page-head{
  margin-left: auto;
}
.shopping-guide.pages-wrap .page-head{
padding-top: 110px;
}
#customize.shopping-guide h2{
      font-size: 25px;
    margin-top: 0;
    margin-bottom: 61px;
    text-align: center;
}
.shopping-guide.pages-wrap::before{
display: none;
}
.shopping-guide .guide-container ul.guide-nav{
      justify-content: flex-start;
}
.shopping-guide .guide-container ul.guide-nav li{
  margin-bottom: 37px;
  width: 33.333%;
}
.shopping-guide .guide-container ul.guide-nav li a{
  font-size: 12px;
  padding: 0;
              display: block;
}
.guide-manu{
  margin-bottom: 50px;
}
a.fs-c-button--loginAndPurchase{
  margin-bottom: 20px;
}
.shopping-guide h3{
      font-size: 18px;
    letter-spacing: 0.16em;
    padding: 43px 0;
                margin-bottom: 70px;
}
.shopping-guide h3::before{
    height: 0.7px;
}
.shopping-guide h3::after{
content: "";
    display: block !important;
    position: absolute;
    left: 0px;
    bottom: 0px;
    width: 100%;
    height: 0.7px;
    background: #71655D;
}
.guide-container p{
      line-height: 2.44em;
      position: relative;
      margin-bottom: 13px;
}
hr.guide-section{
      margin-bottom: 15px;
}
.guide-container p.sp-bottom{
      padding-bottom: 20px;
}
.guide-container ul.guide-nav li:nth-child(4) a::before,
.guide-container ul.guide-nav li:nth-child(7) a::before{
content: "";
    display: block;
    background: #71655D;
    width: 0.35px;
    height: 13px;
    position: absolute;
    left: 0px;
    top: 0px;
}
.faqWrap dl dt::before, .faqWrap dl dd::before{
  font-size: 29px;
}
.faqWrap dl dt, .faqWrap dl dd {
    font-size: 16px;
    padding-left: 46px;
    margin-bottom: 20px;
}
.faqWrap dl dd {
    font-size: 13px;
    margin-bottom: 40px;
}
.guide-container picture{
    width: 100vw;
    margin-left: -23px;
    margin-right: -23px;
    position: relative;
    display: block;
}
.shopping-guide.guide-size h4{
      margin: 0 !important;
}
.shopping-guide .tables {
    display: flex;
    flex-direction: column;
}
.tables table{
  width: 100%;
}
.tables table th,
.tables table td{
      border: 0.7px solid #A9A19C;
}
.tables table th {
    border-left: none;
}
.tables table td{
  border-right:none;
}

.tables table .no-border{
border-top:0;
}

.pc-span{
 display: none; 
}
/*shop*/
#brand .page-head__title,
#casuca-historia .page-head__title{
  font-size: 25px;
    margin-bottom: 24px;
    padding-top: 3px;
}
#brand .page-head__title{
  margin-bottom: 17px;
}
#brand.bridal .page-head__title,
#casuca-historia .page-head__title {
    margin-bottom: 15px;
}
#brand .brand-nav__list,
#casuca-historia .shop-nav__list{
    font-size: 12px;
        gap: 70px;
}
.brand-nav__list li{
/*  flex: 0 0 34.33%; 1行に3つ分の幅を指定 */
}
#brand .brand-nav,
#casuca-historia .shop-nav{
  padding-bottom: 15px;
}
#brand .brand-nav{
      flex-direction: column;
      gap:0;
}
#brand .page-head,
#casuca-historia .page-head {
    margin-bottom: 25px;
}
#casuca-historia h3{
    font-size: 25px;
    margin-bottom: 63px;
}
#casuca-historia h3::before {
    bottom: -5px;
    width: 20px;
}
#message .historia-lead-wrap{
            flex-direction: column;
                        padding-left: 38px;
                        margin-bottom: 58px;
}
.historia-lead-wrap .lead-jp p, .historia-lead-wrap .lead-jp2 p{
  font-size: 13px;
    line-height: 2.3em;
}
.historia-lead-wrap .lead-jp{
  margin-bottom: 30px;
}
.historia-lead-wrap .lead-jp p{
  letter-spacing: 0.04em;
}
.historia-lead-wrap .lead-en p{
  font-size: 14px;
      line-height: 1.9em;
}
#casuca-historia .one-img{
  padding: 0;
              margin-bottom: 55px;
}
#casuca-historia .one-img img{
  width: 89%;
}
#casuca-historia .one-img .historia-img01 picture,
#casuca-historia .one-img .historia-img02 picture{
    display: flex;
    justify-content: flex-end;
}
#casuca-historia .one-img figure::after {
    left: 5px;
    font-size: 14px;
}
#casuca-historia .two-imgs{
    display: flex;
    padding: 0;
    width: 89%;
    margin-left: auto;
    margin-bottom: 61px;
    gap: 10px;
    flex-direction: column;
}
.two-imgs figure.historia-img03::after, .two-imgs figure.historia-img04::after, figure.historia-img05::after{
  left: -26px;
    top: 50%;
    font-size: 13px;
    transform: translateY(-50%);
    transform: translateX(0);
}
.lead-jp2 p.lead-bottom{
      margin-top: 29px;
    margin-bottom: 47px;
}
.historia-lead-wrap .lead-jp2 span.job-title {
    font-size: 13px;
    margin-bottom: 4px;
    display: block;
}
.historia-lead-wrap .lead-jp2 span.desiger-name {
    font-size: 18px;
    display: block;
}
.historia-lead-wrap .lead-en2 p{
      font-size: 14px;
}
.lead-en2 p.lead-bottom {
    margin-top: 16px;
}
.historia-lead-wrap .lead-en2 span.job-title-en {
    font-size: 14px;
    display: block;
    margin-bottom: -7px;
}
.historia-lead-wrap .lead-en2 span.desiger-name-en {
    font-size: 24px;
    display: block;
    margin-top: 12px;
}
.historia-lead-wrap.historia-last {
    margin-bottom: 84px !important;
}
#message .shop-historia-info{
align-items: flex-end;
            padding: 20px 0 0 0;
            margin-bottom: 62px;
}
        .shop-historia-info .info-area {
            padding-top: 23px;
            padding-left: 39px;
            order: 2;
            width: 100%;
        }
.shop-historia-info .photo-area {
    width: 89%;
    order: 1;
    display: flex;
    text-align: right;
}
#casuca-historia .shop-historia-info .info-area h3 {
    text-align: left;
    margin-bottom: 54px;
}
#casuca-historia .shop-historia-info .info-area h3::before {
    content: "";
    display: block;
    height: 0.7px;
    background: #000;
    position: absolute;
    left: 9px;
    bottom: -25px;
    transform: translateX(-50%);
    width: 15px;
}
.info-area p {
    margin: 0;
    line-height: 2.3em;
    font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
    font-weight: 300;
    font-size: 13px;
}
#casuca-historia .google-map {
    width: 89%;
    margin-left: auto;
    padding-right: 0;
}
#casuca-historia .google-map h3 {
    font-size: 21px;
}
#casuca-historia .google-map {
            width: calc(89% + 15px);
            margin-left: auto;
            padding-right: 0;
            margin-right: -15px;
}
#brand .brand-nav--pinned, #casuca-historia .shop-nav--pinned {
    top: 59px;
}

/*brand casuca*/
#brand .content-wrap{
 padding:0;
}
#brand .content-wrap{
  padding: 0 15px;
}
section#bridal{
  padding-left:15px;
  padding-right:15px;
}
#brand .figure[data-fig="36"]::after{
            right: 45%;
            bottom: -56px;
            font-size: 14px;
            transform: translateX(-46%);
            border-bottom: 0.7px solid #000;
            padding-bottom: 14px;
}
.brand-main-visual{
  width: 100%;
  margin-bottom: 83px;
}
.brand-main-visual picture{
    width: 100%;
    text-align: center;
    margin-bottom: 79px;
    position: relative;
}
#brand .block-row{
  flex-direction: column-reverse;
  align-items: flex-end;
}
#brand .figure--medium{
      width: 88%;
    margin-bottom: 10.2049vw;
}
#brand .figure.figure--medium::after, #brand .figure.figure--medium-emo::after{
      content: "fig.2";
    left: -31px;
    bottom: auto;
    font-size: 15px;
    right: auto;
    top: 50%;
    transform: translateY(-50%);
}
#brand .richtext {
    padding: 0px 0 0 0  ;
    position: relative;
    top: -7px;
}
.fs-body-category-brand_casuca #brand .richtext{
padding: 0;
}
#brand .richtext p.txt-jp{
font-size: 13px;
            line-height: 2.0em;
            text-align: justify;
}
#brand .brand-casuca .richtext p.txt-jp{
  margin: 0 0 40px 0;
}
#brand .richtext p.txt-jp br{
  display: none
}
#brand p.deco-text{
    margin-top: 7px;
    text-align: center;
    margin-bottom: 65px;
    font-style: italic;
    font-size: 15px;
    line-height: 1.7em;
    letter-spacing: 0.04em;
    position: relative;
}
#brand p.deco-text::before{
  
}
#brand .richtext p.txt-en {
                line-height: 1.74em;
            font-size: 15px;
            margin: 0px 0 44px 0;
}
#brand .block-row2 {
    display: block;
    margin-bottom: 10px;
}
#brand .figure--medium2{
    width: 100%;
    display: flex;
    justify-content: flex-end;
        margin-bottom: 60px;
        margin: 0;
}
p.name.name-en{
      font-size: 20px;
}
#brand .figure--medium2 picture,
#brand .figure--portrait{
  width: 88%;
}
#brand .figure--medium2 picture{
  margin-bottom: 60px;
}
#brand .figure--portrait {
    margin: 0;
    width: 100%;
}
#brand .block-row3 {
    padding-bottom: 0;
    width: 100%;
    margin-bottom: 53px;
}
#brand .figure--portrait {
    margin: 0;
    width: 100%;
    display: flex;
  }
  #brand .figure--portrait {
    margin: 0;
    width: 100%;
    display: flex;
    position: relative;
  }
  #brand .figure--portrait picture::after{
    content: "";
    display: block;
    height: 0.7px;
    background: #000;
    position: absolute;
    left: 9px;
    bottom: -25px;
    transform: translateX(-50%);
    width: 15px;

  }
  #brand .figure--portrait picture,
  #brand .figure--full{
        width: 88%;
  }
  #brand .figure--medium picture{
    position: relative;
  }
#brand p.deco-text::before{
             width: 14px;
            height: 0.7px;
            content: "";
            background-color: #000300;
            position: absolute;
            left: 50%;
            top: -28px;
            transform: translateX(-50%);
}
  #brand p.deco-text::after{
             width: 14px;
            height: 0.7px;
            content: "";
            background-color: #000300;
            position: absolute;
            left: 50%;
            bottom: -30px;
            transform: translateX(-50%);
  }
#brand .figure.figure--medium2::after {
    content: "fig.3";
    left: 13px;
    bottom: auto;
    font-size: 14px;
    right: auto;
    top: 50%;
    transform: translateY(-50%);
}
#brand .figure.figure--portrait::after {
    content: "fig.4";
    left: auto;
    bottom: auto;
    font-size: 18px;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 13px;
}
#brand .figure.figure--full::after{
    content: "fig.5";
    left: auto;
    bottom: auto;
    font-size: 18px;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 13px;
}
#brand .figure.figure--full::after{
  content: "fig.5";
            left: auto;
            bottom: auto;
            font-size: 18px;
            right: -30px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 13px;
}
/*et mo*/
#brand .block-row-emo {
    display: flex;
    margin-bottom: 0;
    flex-direction: column-reverse;
    align-items: flex-end;
}
p.italic-text{
  display: none;
}
#brand .figure--medium-emo{
  width: 88%;
}
.brand-casuca-etmo .brand-main-visual{
            margin-bottom: 80px;
}
#brand .figure--medium-emo {
    width: 88%;
}
#brand .figure--portrait-emo {
    margin: 0;
    width: 100%;
}

#brand .figure--medium2-emo{
      width: 88%;
      margin-bottom: 56px;
}
.block-row-emo-right{
  margin-bottom: 55px;
}
#brand .brand-casuca-etmo .richtext p.txt-jp{
text-align: left;
            line-height: 2.3em;
            margin-bottom: 7px;
}
#brand .richtext p.txt-jp br{
  display:block !important;
}
p.name {
            margin-bottom: 55px;
            line-height: 1.9em;
            margin-top: 15px;
            font-size: 13px !important;
}
p.name.name-en{
  font-size: 15px !important;
}
#brand .block-row2-emo {
    display: flex;
    padding-bottom: 53px;
    flex-direction: column;
    align-items: flex-end;
}
#brand .figure.figure--medium2-emo::after {
    content: "fig.3";
    left: -31px;
    bottom: auto;
    font-size: 15px;
    right: auto;
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
}
#brand .figure.figure--portrait-emo::after {
    content: "fig.4";
    left: 4px;
    top: -29px;
    right: auto;
    font-size: 15px;
}
/*hicari*/
#brand .block-row-hicari {
    display: flex;
    align-items: flex-end;
    margin-bottom: 0.1508vw;
    flex-direction: column-reverse;
    padding-bottom: 0;
}

#brand .figure--medium2-na-hicari {
    margin: 0;
    width: 88%;
    margin-top: 10.4235vw;
}
#brand .block-row-hicari .col-text{
  width: 88%;
  flex: none;
}
#brand .block-row-hicari .richtext{
            padding: 0;
            position: relative;
            top: 0;
}
#brand .figure.figure--portrait-hicari::after {
    content: "fig.4";
                left: -31px;
            bottom: auto;
            font-size: 15px;
            right: auto;
            bottom: auto;
            top: 50%;
            transform: translateY(-50%);
}
#brand .last-hicari .figure.figure--portrait-hicari::after {
    content: "fig.5";
                left: -31px;
            bottom: auto;
            font-size: 15px;
            right: auto;
            bottom: auto;
            top: 50%;
            transform: translateY(-50%);
}
#brand .block-row2-hicari {
    display: flex;
    padding-bottom: 53px;
    flex-direction: row;
    justify-content: flex-end;
}


/*bridal*/
.tabs__list{
  gap:10px;
  padding-bottom: 0px;
}
#brand #reserve a.reserve-btn{
  padding: 20px;
}
#brand #reserve::before{
  display: none;
}
#brand #bridal .figure--medium{
      width: 88%;
    margin-bottom: 0;
    top: 0;
}
#bridal .brand-main-visual{
      margin-bottom: 81px;
                  padding-left: 15px;
            padding-right: 15px;
}
#bridal .block-column{
margin-bottom: 55px;
}
       
#brand #bridal .block-column .figure.figure--medium::after {
    content: "fig.2";
    left: -39px;
    bottom: auto;
    font-size: 15px;
    right: auto;
}
#brand #bridal .richtext p.txt-jp{
              margin-bottom: 40px !important;
}
#brand #bridal .block-row{
  padding-bottom: 0;
  padding-left: 15px;
            padding-right: 15px;
}
#brand #bridal .block-row3{
  display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding-bottom: 40px;
  padding-left: 15px;
            padding-right: 15px;
}
#brand #bridal .block-row3 figure.figure--medium2{
  width: 88%;
  margin-bottom: 70px;
}
#brand #bridal .figure.figure--medium2::after{
              left: -31px;
}
#brand #bridal .figure.figure--medium3{
  width: 100%;
}
#brand #bridal .figure.figure--medium3::after {
    content: "fig.4";
    left: auto;
    bottom: auto;
    font-size: 14px;
    right: auto;
    top: auto;
    left: 3px;
    top: -32px;
}
#brand #bridal .btn-wrap{
    padding-top: 66px;
        margin-bottom: 43px;
                    padding-left: 15px;
            padding-right: 15px;
}
#brand #bridal .btn-wrap a.btn{
    padding: 0px 1.02489vw;
    font-size: 15px;
    height: 35px;
    line-height: 35px;
    width: 100%;
    padding: 0;
}
#brand #bridal a.btn svg {
    width: 18px;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}
#brand #bridal .two-cat {
    display: flex;
    gap: 0;
    margin: 0;
    flex-direction: column;
                    padding-left: 15px;
            padding-right: 15px;
}
#brand #bridal .two-cat a p{
font-size: 21px;
    margin: 13px 0 0;
}
#brand #bridal .two-cat a p.jp-btn{
    font-size: 13px;
    margin-top: 12px;
    letter-spacing: 0.14em;
}
#brand #bridal .two-cat a p {
    font-size: 21px;
    margin: 13px 0 0;
    line-height: 1.2em;
    letter-spacing: 0.06em;
    position: relative;
}
#brand #bridal .two-cat a p svg {
    width: 18px;
    height: 18px;
    position: absolute;
    top: 50%;
    transform: translateY(-69%);
    right: 80px;
}
#brand #bridal .two-cat a{
      margin-bottom: 50px;
}
#brand #bridal .two-cat a.btn-mring{
      margin-bottom: 11px;
}
#brand #bridal #ringTabs{
    padding: 70px 0 0;
}
#brand #bridal .tabs h3{
  font-size: 27px;
  margin-bottom: 44px;
  line-height: 1.2em;
}
#brand #bridal .tabs h3 span{
  font-size: 20px;
  padding: 0;
}
#brand #bridal .tabs__tab{
      font-size: 15px;
            padding: 8px 12px;
            height: 42px;
            line-height: 1.02em;
          }
#brand #bridal .panel__inner {
            flex-direction: column;
            min-height: 740px;
                    padding-left: 15px;
            padding-right: 15px;
}
#brand #bridal #photo .panel__inner{
      justify-content: flex-start;
}
#brand #bridal #photo .panel__text{
padding-top: 88px;
}
#brand #bridal .panel__btn{
font-size: 14px;
}
#brand #bridal .panel__btn svg {
    width: 22px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}
#photo{
                    padding-left: 15px;
            padding-right: 15px;

}
#brand #bridal .panel__text{
    padding: 48px 0 0;
    margin-bottom: 25px;
    position: relative;
}
#brand #reserve h3{
  position: relative;
}
#brand #bridal .panel__text::before,
#brand #reserve h3::before{
    content: "";
            position: absolute;
            left: 0;
            top: 0px;
            width: 100%;
            height: 0.35px;
            background: var(--line);
            display: block;
}
#brand #bridal .content-list .panel__text::before{
display: none;
}
#brand #reserve h3::before{
  top:-65px;
}
#brand #bridal .panel__media {
    width: 100%;
    margin-bottom: 40px;
}
#brand #bridal .panel__media img{
margin-bottom: 30px;
}
#brand #bridal .panel__body{
    margin: 0px;
            font-size: 13px;
            text-align: justify;
            line-height: 1.9em;
}
.tabs__panel{
  padding: 2px 0 0;
}

#brand #photo .tabs__panel {
    padding: 10px 0 0 0;
}
#brand #photo .panel__title {
    margin: 0 auto 36px;
        width: 207px;
}
#brand #photo .title-jp::before {
    top: -11px;
    transform: translateX(-50%);
    width: 20px;
    height: 0.35px;
    background: #71655D;
}
#brand #photo p.title-jp {
    margin: 0 0 25px;
                font-size: 15px;
}
#photo .panel__media{
  display: block !important;
            font-size: 12px;
}
.panel__btn svg .panel__btn svg {
    width: 20px;
}

#brand #reserve {
    padding: 104px 15px 0;
    margin-bottom: 100px;
}
#brand #reserve a.reserve-btn{
              padding: 27px;
              padding-bottom: 44px;
}
#brand #reserve a.reserve-btn p.btn-title {
    font-size: 23px;
    letter-spacing: 0.06em;
        line-height: 1.0em;
}
#brand #reserve a.reserve-btn p.btn-title span{
      display: block;
    font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
    font-weight: 300;
    font-size: 13px;
    letter-spacing: 0.12em;
    position: relative;
    top: 18px;
}
#brand #reserve a.reserve-btn p.btn-txt span {
    padding-right: 0;
}

#brand #reserve a.reserve-btn p.btn-txt span {
    font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
    font-weight: 300;
    font-size: 12px;
    letter-spacing: 0.2em;
            white-space: nowrap;
}
#brand #reserve a.reserve-btn p.btn-txt{
  width: 137px;
}
#brand #reserve a.reserve-btn svg {
    width: 19px;
    height: 19px;
}

/*tabs for sp*/
.carousel-tabs {
  width: 100%;
  overflow: hidden;
  max-width: 100%;
  margin: 0 auto;
}

.carousel-buttons {
}

.carousel-btn {
}

.carousel-btn.is-active {
  color: #000;
}

.carousel-wrapper {
  overflow-x: auto;
  position: relative;
  -webkit-overflow-scrolling: touch; /* iOS用: スムーズスクロール */
  will-change: transform;
  touch-action: pan-y; 
}


.carousel-track {
  display: flex;
  gap: 5%;
  transition: transform 0.5s ease;
  will-change: transform;
  touch-action: pan-y; 
  overflow: visible;   
}

.carousel-item {
  flex: 0 0 75%;
  user-select: none;
  -webkit-user-drag: none;
}
.carousel-item:first-child .panel__inner{
  padding-right: 0 !important;
}
.carousel-item:nth-child(2) .panel__inner{
  padding-right: 0 !important;
  padding-left:0 !important;
}
.carousel-item:last-child .panel__inner{
  padding-left: 0 !important;
}
.sp .tabs__panel[hidden] {
    display: block;
}
/* 最後の余白をなくす */
.carousel-item:last-child {
  margin-right: 0;
}
/*photo service*/
.photo .aps-head__inner{
  margin: 0;
  flex-direction: column;
}
.photo .aps-head__left {
    width: 100%;
    padding: 0;
}
.photo .aps-head__right{
  width: 100%;
}
.photo .aps-head__left h2{
 width: 240px;
margin: 0 auto 28px;
position: relative;
}
.photo .aps-head__left h2::before{
content: "";
            display: block;
            width: 22px;
            height: 0.35px;
            background-color: #71655D;
            position: absolute;
            bottom: -11px;
            left: 50%;
            transform: translateX(-50%);
}
.photo .aps-head {
    padding: 113px 27px 0px;
}
.photo p.title-jp{
  font-size: 14px;
    font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
    font-weight: 300;
    letter-spacing: 0.2em;
    text-align: center;
    margin-bottom: 31px;
}
.photo .aps-note {
    padding-left: 0;
    font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
    font-weight: 300;
    font-size: 13px;
    letter-spacing: 0.12em;
    margin: 0;
    position: relative;
    top: 0;
    line-height: 2.1em;
            text-align: center;
}
.photo .aps-head__right::before{
  display: none;
}

element.style {
}
.photo .aps-card__cap {
    margin: 0;
    font-size: 13px;
    padding: 0 12px;
    bottom: 57px;
    left: 0px;
    height: 57px;
    line-height: 1.4em;
    display: flex;
    align-items: center;
    width: 90%;
    position: relative;
}
.photo .aps-card__cap svg {
    width: 21px;
    margin-left: 25px;
    position: absolute;
    right: 8px;
    bottom: 10px;
}
.photo .slick-dots {
    bottom: 6px;
}
.photo .slick-dots li{
      width: 50px;
}
.photo .slick-dots li button:before{
  height: 1px;
}
.photo .slick-dots {
    bottom: 15px;
}
.photo .aps-about{
      padding: 0 15px;
      margin-bottom: 0;
}
.photo .slick-dots li button:before{
  height: 1px;
}
.photo .slick-dotted.slick-slider {
    margin-bottom: 0px;
}
.photo .aps-center-ttl{
  margin: 59px auto 32px;
}
.photo .aps-center-ttl span {
    font-size: 20px;
}
.photo .aps-about__row {
            display: flex;
            flex-direction: column;
}
.photo .aps-about__media {
    width: 100%;
    float: none;
    margin-right: 0;
    position: relative;
    top: 0;
}
.photo .aps-about__text{
    top: 0;
    padding: 0 10px;
}
.photo .aps-about__text p{
              margin-top: 10px;
            line-height: 2.28em;
            margin-bottom: 0;
}
.photo .aps-about__text p br{
  display: none;
}
.photo .aps-terms h3.aps-center-ttl{
      margin: 33px auto 65px;
      font-size: 16px;
          line-height: 1.7em;
}
.photo .aps-terms .aps-center-ttl span{
  display: block;
      font-size: 21px;
}
.photo .aps-terms .aps-center-ttl span.line-text{
  font-style: normal;
  font-size: 15px;
    font-style: normal;
    letter-spacing: 0.06em;
    padding-top: 25px;
                position: relative;
}
.photo .aps-terms .aps-center-ttl span.line-text::before{
  content:"";
            display: block;
            width: 89%;
            height: 0.35px;
            background-color: #71655D;
            position: absolute;
            bottom: auto;
            left: 50%;
            transform: translateX(-50%);
            top: 8px;
}
.photo .aps-ul{
      padding-left: 74px;
      margin-bottom: 45px;
}
.photo .aps-ul li p{
      line-height: 2.2em;
}
.photo .aps-ul li p span{
    font-size: 22.64px;
}
.photo .aps-note--center{
    margin: 0 auto 24px;
    text-align: left;
    font-size: 14px;
    line-height: 2.14em;
}
.photo .aps-note--center br{
display: none;
}
.photo .aps-btn {
    gap: 14px;
    width: 100%;
    height: 43px;
    font-size: 12px;
}
.photo .aps-btn img {
    width: 20px;
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
}
/*カスタマイズ*/
#customize section.customize .photo-area,
#customize section.customize .text-area{
  width: 100%;
}
#customize.pages-wrap .page-head{
display: flex;
flex-direction: column;
}
#customize.pages-wrap .page-head{
            padding-top: 128px;
}
#customize h2{
  order:2;
  width: 100%;
              margin-top: 0;
                        margin-bottom: 35px;
                        font-size: 18px;
                        position: relative;
}
#customize h2::after{
content: "";
    display: block;
    position: absolute;
    left: 50%;
                bottom: -28px;
            width: 20px;
    height: 0.52px;
    transform: translateX(-50%);
    background: #71655D;
}
#customize p.subtext-eng{
  order:1;
  width: 100%;
              font-size: 24px;
                          margin-top: 0;
            margin-bottom: 15px;
}
#customize p.subtext-jp{
  order:3;
  width: 100%;
              font-size: 14px;
            margin-bottom: 88px;
}
#customize.pages-wrap::before{
display: none;
}
#customize section.customize .text-area{
  text-align: center;
}
#customize section.customize {
            gap: 20px;
                        flex-direction: column;
            padding-bottom: 58px;
}
#customize section.customize .text-area h3{
                margin: 0px 0 37px;
            font-size: 18px;
            line-height: 1.7em;
}
#customize section.customize .text-area h3 span{
    font-size: 18px;
    padding-top: 0;
}
#customize section.customize h3::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -13px;
    height: 0.7px;
    width: 15px;
    background: #000;
    display: block;
    transform: translateX(-50%);
}
#customize section.customize .text-area p{
text-align: justify;
}
/*photo caso*/
.fs-l-main:has(#photo-service) #TOP,
.fs-l-main:has(#photo-service) #INTERVIEW,
.fs-l-main:has(#photo-service) #PHOTO .inner,
.fs-l-main:has(#photo-service) #PS_PART{
  width: 100%;
}
.fs-l-main:has(#photo-service) #PS_PART .btn-wrap a.btn{
  width: 100%;
}
.fs-l-main:has(#photo-service) #PHOTO .photo_section .photo{
  width: 100%;
  margin-bottom: 30px;
}

.fs-l-pageMain:has(#photo-service) {
padding: 0 15px;
}
.fs-l-pageMain:has(#photo-service)::before{
display: none;
}
.fs-l-pageMain:has(#photo-service) .fs-c-heading--page{
    margin-top: 0px;
    font-size: 23px;
    padding-top: 131px;
    margin-bottom: 35px;
}
#photo-service #TOP .title_text p {
    margin: 0;
    padding: 0 12px;
    text-align: justify;
    line-height: 2.3em;
    font-size: 13px;
    letter-spacing: 0.06em;
}
#photo-service #TOP .title_text {
    padding: 0 0 38px;
    margin-bottom: 40px;
}
#photo-service #TOP .title_profile {
    padding: 20px 12px 0;
}
#photo-service #TOP .title_profile {
    padding-top: 0;
    flex-direction: column;
}
#photo-service #TOP .img-profile {
    width: 100%;
}
#photo-service #TOP .text_profile{
  width: 100%;
  top:0;
}
#photo-service #TOP .title_text::after {
    left: 0px;
    bottom: 20px;
    width: 100%;
}
#photo-service .date{
  text-align:right;
}
#photo-service .interview_photo .date{
            text-align: right;
            font-size: 12px;
            margin-top: 6px;
            margin-bottom: 0;
}
#photo-service #TOP .img-profile p{
      margin: 6px 0 0 0;
}
#photo-service #TOP .text_profile h2 {
    font-size: 12px;
    margin-bottom: 35px;
    margin-top: 21px;
}
#photo-service #TOP .text_profile .short-profile {
    margin-bottom: 60px;
}
#photo-service #TOP .text_profile p.Ring{
    padding: 5px 0;
}
#photo-service #TOP::after {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    bottom: 18px;
    width: calc(100% - 20px);
    height: 0.35px;
    background: #9A918B;
}
#photo-service #INTERVIEW {
    padding: 18px 12px 0;
}
#photo-service #INTERVIEW .interview_wrap{
flex-direction: column;
    margin-bottom: 33px;
    padding-bottom: 23px;
}
#photo-service #INTERVIEW .interview_wrap.reverse{
            flex-direction: column-reverse;
}
#photo-service #INTERVIEW .interview_photo {
    width: 100%;
    height: auto;
                margin-bottom: 27px;
}
#photo-service #INTERVIEW .interview_text {
    padding: 0;
    width: 100%;
    position: relative;
    top: 0;
}
#photo-service h5 {
    padding: 0;
    font-size: 16px;
    margin: 0 0 27px;
    letter-spacing: 0.06em;
    line-height: 2em;
    font-weight: 300;
}
#photo-service #PHOTO .photo_section{
  padding: 0 10px;
}
#photo-service #PS_PART {
    padding: 30px 10px;
}
#photo-service #PHOTO .photo_section::after {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    bottom: 0px;
    width: calc(100% - 20px);
    height: 0.35px;
    background: #9A918B;
}
#photo-service #PS_PART p {
    margin: 0 0 25px;
    line-height: 2.3em;
    padding-bottom: 25px;
    position: relative;
    text-align: justify;
    font-size: 13px;
}
#photo-service #PS_PART .ps_guidance {
    padding-top: 37px;
}
#photo-service #PS_PART .banner-bridal img {
    margin: 0 auto 35px;
    width: 211px;
}
#photo-service #PS_PART p.title-jp {
    font-size: 15px;
    margin-top: 0px;
    margin-bottom: 24px;
    letter-spacing: 0.2em;
    padding: 0;
    position: relative;
    text-align: center;
}
#photo-service #PS_PART p.title-jp::after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    bottom: 46px;
    width: 20px;
    height: 0.35px;
    background: #9A918B;
    transform: translateX(-50%);
}
#photo-service #PS_PART .banner-bridal svg {
    width: 40px;
    height: auto;
}
#photo-service #PS_PART .btn-wrap {
    text-align: center;
    padding-top: 65px;
    margin-bottom: 72px;
    position: relative;
}
#photo-service #PS_PART .btn-wrap a.btn {
    padding: 0px 1.02489vw;
    font-size: 15px;
    width: 100%;
    height: 51px;
    line-height: 51px;
        padding: 0;
}
#photo-service #PS_PART a.btn svg {
    width: 20px;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}
#photo-service #PS_PART .btn-wrap::after {
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    top: 43px;
    width: 100%;
    height: 0.35px;
    background: #9A918B;
}
/*motif*/
#fs_ProductCategory .group-tag:has(.motif) h2.fs-c-heading--page{
display: block;
            font-size: 28px;
            width: 100%;
            position: relative;
}
#fs_ProductCategory .group-tag:has(.motif) h2.fs-c-heading--page::after{
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    top: 52px;
    width: 20px;
    height: 0.35px;
    background: #9A918B;
    transform: translateX(-50%);
}
#fs_ProductCategory .fs-l-pageMain:has(.motif) .group-menu_wrap{
  margin-top: 0px;
            padding: 0px 20px 0px;
            margin-bottom: 53px;
}
#fs_ProductCategory .group-tag:has(.motif) {
    align-items: center;
        gap: 31px;
    margin-bottom: 73px;
    flex-direction: column;
    padding: 7px 23px 0;
}
#fs_ProductCategory .group-tag:has(.motif) .motif{
  width: 100%;
  text-align: justify;
}
#fs_ProductCategory .group-tag:has(.motif) p{
  font-size: 14px;
      display: inline;
                  line-height: 2.0em;
}
#fs_ProductCategory .group-tag:has(.motif) p br{
      display: none !important;
}
/*検索結果
#fs_ProductSearch .fs-l-pageMain {
    padding-top: 100px;
}
#fs_ProductSearch .fs-c-heading{
padding-top: 0;
}*/
#fs_ProductCategory h2.fs-c-heading--page{
  font-size: 28px;
  margin-bottom: 73px;
}
.brand.fs-body-category-brand_casuca h2.fs-c-heading--page::after,
.brand.fs-body-category-brand_etmo h2.fs-c-heading--page::after,
.brand.fs-body-category-brand_hicari h2.fs-c-heading--page::after,
.brand.fs-body-category-bridal h2.fs-c-heading--page::after{
  display: none;
}

#fs_ProductCategory.fs-body-category-brand_casuca.brand .group-menu_wrap,
#fs_ProductCategory.fs-body-category-brand_etmo.brand .group-menu_wrap,
#fs_ProductCategory.fs-body-category-brand_hicari.brand .group-menu_wrap,
#fs_ProductCategory.fs-body-category-bridal.brand .group-menu_wrap{
  margin-top: 0;
            padding: 5px 20px 0px;
            margin-bottom: 71px;
}
#fs_ProductCategory.brand h2.fs-c-heading--page{
color:#000;
}
.body p {
    font-size: 14px;
    margin-bottom: 73px;
}
#fs_ProductSearch .fs-c-heading--page{
  font-size: 20px;
                font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
            font-weight: 300;
            margin-bottom: 40px;
}
.fs-c-noResultMessage__title{
  font-size: 12px;
}
/*form custom*/
.fs-c-inputTextGroup__item input[name="field_4375244"],
.fs-c-inputTextGroup__item input[name="field_4375248"],
.fs-c-inputTextGroup__item input[name="field_4375249"],
.fs-c-inputTextGroup__item input[name="field_4375253"],
.fs-c-inputTextGroup__item input[name="field_4375254"]
.fs-c-inputTextGroup__item input[name="field_4375262"],
.fs-c-inputTextGroup__item input[name="field_4375263"],
.fs-c-inputTextGroup__item select[name="field_4375264_pref"],
.fs-c-inputTextGroup__item input[name="field_4375264_city"],
.fs-c-inputTextGroup__item input[name="field_4375264_block"],
.fs-c-inputTextGroup__item input[name="field_4375264_building"],
.fs-c-inputTextGroup__item input[name="field_4375266"],
.fs-c-inputTextGroup__item input[name="field_4375405"],
.fs-c-inputTextGroup__item select[name="field_5316410_pref"],
.fs-c-inputTextGroup__item input[name="field_5316410_city"],
.fs-c-inputTextGroup__item input[name="field_5316410_block"],
.fs-c-inputTextGroup__item input[name="field_5316410_building"],
.fs-c-inputTextGroup__item input[name="field_4375262"],
.fs-c-inputTextGroup__item input[name="field_4375270"]{
  width: 100%;
}
#fs_NewsletterSubscribe main p,
#fs_NewsletterSubscribeSuccess main p,
#fs_PageNotFound main p{
  text-align: left;
}
#repair::before,
#fs_OrderComplete::before{
  display: none;
}
#repair .inner,
#fs_OrderComplete .inner{
    padding-top: 166px;
}
#repair .inner h1,
#fs_OrderComplete .inner h1{
      padding: 0 0 34px;
}
#repair .inner p,
#fs_OrderComplete .inner p{
  font-size: 12px;
}
 #repair .inner h2::before,
 #fs_OrderComplete .inner h2::before{
  top:0;
 }
 #repair .inner h2,
 #fs_OrderComplete .inner h2{
      margin: 0 0 29px;
    padding-top: 20px;
 }

.semi-order .wrap li {
    font-size: 12px;
}
/*
#fs_ProductCategory.fs-body-category-brand_etmo .group-menu-inner.group-nav--pinned,
#fs_ProductCategory.fs-body-category-brand_casuca .group-menu-inner.group-nav--pinned,
#fs_ProductCategory.fs-body-category-brand_hicari .group-menu-inner.group-nav--pinned{
position: relative !important;
top:0;
padding: 21px 5px;
z-index: 1;
}
*/
#brand .col-text{
  width: 88%;
}

.pagenation .fs-c-pagination__item--prev{
padding-right:24px;
margin:0;
}
.pagenation .fs-c-pagination__item--next{
padding-left:24px;
margin:0;
}
.pagenation {
    padding-top: 65px;
    padding-bottom: 38px;
}
#fs_ProductAuth .fs-c-inputInformation__button button{
  width: 100%;
}

#fs_ProductCategory .group-menu-inner-sp.group-nav--pinned,
#fs_ProductCategory.sort .group-menu-inner-sp.group-nav--pinned,
#fs_ProductSearch .group-menu-inner-sp.group-nav--pinned{
 position: fixed !important;
 top: 50px;
 padding-bottom: 15px;
 padding: 15px 25px;
}

#fs_ProductCategory.fs-body-category-brand_casuca .group-menu-inner.group-nav--pinned,
#fs_ProductCategory.fs-body-category-brand_etmo .group-menu-inner.group-nav--pinned,
#fs_ProductCategory.fs-body-category-brand_hicari .group-menu-inner.group-nav--pinned,
#fs_ProductCategory.fs-body-category-bridal .group-menu-inner.group-nav--pinned {
    position: relative !important;
    top: 0 !important;
    padding: 21px 5px !important;
}
.brand .group-menu-inner::after{
  display: block;
}
/*recommend*/
.fs-l-product2 .fs-c-productPrice{
  padding-left: 0;
}
.fs-c-productListCarousel__list .fs-c-productListItem__imageContainer{
  width: 150px !important;
}
.fs-c-productListCarousel__list .fs-c-productListItem__image__image {
    height: 150px !important;
}
.fs-c-productListCarousel__list .fs-c-productListItem__imageContainer{
      margin-bottom: 4.02489vw;
}
.fs-c-productListCarousel__list__itemTrack{
  padding-right: 0 !important;
}
.fs-c-productListCarousel__list__item:first-child .fs-c-productListItem__productName,
.fs-c-productListCarousel__list__item:first-child .fs-c-productListItem__prices {
    padding-left: 15px;
}
.fs-c-productListItem__productName {
    margin-bottom: 4px;
        line-height: 1.75em;
}
.accordion-content .btn a{
      height: 35px;
    line-height: 35px;
}
.fs-c-productMarks:has(.icon-new){
     top: 40px;
    left: 7px;
}
.fs-c-productMarks:has(.icon-new) .fs-c-productMark li span{
width:37px;
  height:37px;
    line-height: 40px;
    font-size: 10px;
}
.menu-bottom-sns-table{
  position: relative;
  top:-20px;
}
.fs-p-productDescription--short .section.accordion h3, .fs-l-productLayout__item .section.accordion h3{
      line-height: 1.6em;
    height: 71px;
    padding-top: 18px;
    padding-right: 4em;
}
/*motion*/
.motion-img-01 {
    width: 12.929vw;
    height: auto;
    top: 75.052vw;
    left: 24.508vw;
}
.motion-img-02 {
    width: 10.894vw;
    height: auto;
    top: 35vw;
    left: 61.701vw;
}
.motion-img-03 {
    width: 2.563vw;
    height: auto;
    top: 72.491vw;
    left: 66.14vw;
}
}


