/*---------------------------------
　共通
---------------------------------*/
body {
  font-family: "Zen Old Mincho", serif;
  color: #000;
  background: #eee;
  font-weight: 500;
}
ul,li {
  list-style: none;
  padding: 0;
  margin: 0;
}
a, a:visited {
  color: #000;
  transition-duration: .3s;
}
a:hover {
  text-decoration: none;
  color: inherit;
}
img {
  max-width: 100%;
  height: auto;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}

.zen-old-mincho {
  font-family: "Zen Old Mincho", serif;
}
.zen-kakugo-new {
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.oswald {
  font-family: "Oswald", sans-serif;
}
.lora {
  font-family: "Lora", serif;
}
.fs-l-main,
.rayout-base {
  padding-left: 60px;
  padding-right: 60px;
  max-width: 1480px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: content-box;
}
.fs-l-pageMain {
  max-width: 1480px;
  box-sizing: content-box;
}
@media screen and (min-width: 768px){
  .fs-l-main,
  .rayout-base {
    padding-left: 120px;
    padding-right: 120px;
  }
  br.sp {
    display: none;
  }
}
@media screen and (min-width: 1201px){
  body:not(.fs-body-category):not(.fs-body-product):not(.fs-body-search) .fs-c-breadcrumb,
  body:not(.fs-body-category):not(.fs-body-product):not(.fs-body-search) .fs-l-main {
    padding-right: 380px;
    max-width: 1106px;
    margin-left: 0;
  }
  body.fs-body-cart-login .fs-c-breadcrumb,
  body.fs-body-cart-login .fs-l-main,
  body.fs-body-login .fs-c-breadcrumb,
  body.fs-body-login .fs-l-main {
    padding-right: 120px !important;
  }
}
@media screen and (min-width: 1761px){
  body:not(.fs-body-category):not(.fs-body-product):not(.fs-body-search) .fs-c-breadcrumb,
  body:not(.fs-body-category):not(.fs-body-product):not(.fs-body-search) .fs-l-main {
    margin-left: auto;
    padding-left: 0;
  }
  body:not(.fs-body-category):not(.fs-body-product):not(.fs-body-search) .about-page .fs-c-breadcrumb {
    padding-left: 120px;
  }
}


/* ボタン1 */
.button-1 {
  font-weight: 600;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #000;
}
.button-1:hover {
  background: #000;
  color: #fff;
}

/* テキストリンク */
.text-link a {
  display: inline-block;
}
.text-link a:hover {
  background: #000;
  color: #fff;
}

/*---------------------------------
　ヘッダー
---------------------------------*/

.header-logo,
.header-sns,
.header-menu,
.header-copy {
  mix-blend-mode: difference;
  position: fixed;
  z-index: 1000;
}
.header-logo a,
.header-sns a,
.header-menu a,
.header-logo a img,
.header-sns a img,
.header-menu a img {
  display: block;
}
.header-menu a {
  position: relative;
  padding: 1px;
}
.header-menu a .fs-client-cart-count {
  font-size: 12px;
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  width: 1.8em;
  height: 1.8em;
  background: #fff;
  color: #000;
  top: 0;
  right: 0;
  border-radius: 50%;
  transform: translate(60%,-60%);
  font-family: "Oswald", sans-serif;
}
.header-menu a .fs-client-cart-count.fs-client-cart-count--0 {
  display: none;
}
.header-logo,
.header-sns {
  right: 20px;
}
.header-logo {
  top: 20px;
}
.header-sns {
  bottom: 20px;
}
.header-sns ul {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  gap: 20px 0;
}
.header-menu {
  left: 20px;
  top: 20px;
}
.header-menu ul {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  gap: 15px 0;
}
.header-copy {
  left: 20px;
  bottom: 40px;
  writing-mode: vertical-rl;
  font-size: 10px;
  color: #fff;
}
.header-copy p {
  margin: 0;
}
@media screen and (min-width: 768px){
  .header-logo,
  .header-sns {
    right: 50px;
  }
  .header-logo {
    top: 40px;
  }
  .header-sns {
    bottom: 40px;
  }
  .header-sns ul {
    gap: 20px 0;
  }
  .header-menu {
    left: 50px;
    top: 40px;
  }
  .header-menu ul {
    gap: 30px 0;
  }
}
@media screen and (max-width: 767px){
  .header-logo a img {
    max-width: 24px;
  }
  .header-sns a img {
    max-width: 16px;
  }
  .header-menu a img {
    max-width: 20px;
  }
}

/* ページメニュー */
.header-wide-menu {
  display: none;
}
.header-page-menu,
.header-wide-menu ul {
  writing-mode: vertical-rl;
  font-weight: 600;
}
.footer-wide-menu-list li a,
.header-page-menu ul li a,
.header-wide-menu ul li a {
  display: inline-block;
  padding: 5px 0;
}
.footer-wide-menu-list li a:hover,
.header-page-menu ul li a:hover,
.header-wide-menu ul li a:hover {
  color: #fff;
  background: #000;
}

@media screen and (min-width: 768px){
  .header-page-menu {
    padding-left: 120px;
    width: 100%;
    margin-top: 80px;
    writing-mode: vertical-lr;
  }
  .header-page-menu ul li {
    margin: 0 35px;
  }
  .header-page-menu-about {
    font-size: 13px;
    position: relative;
    padding-right: 1px;
  }
  .header-page-menu-about li:first-child {
    margin-left: 0;
  }
  .header-page-menu-genre {
    font-size: 18px;
  }
}
@media screen and (min-width: 1201px){
  body:not(.fs-body-top).fs-body-about-privacyPolicy .header-page-menu,
  body:not(.fs-body-top).fs-body-about-terms .header-page-menu,
  body:not(.fs-body-top).post-type-archive-news .header-page-menu,
  body:not(.fs-body-top).single-news .header-page-menu,
  body:not(.fs-body-top).page-template .header-page-menu {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1401px){
  .header-page-menu {
    padding-left: 240px;
  }
}

@media screen and (max-width: 767px){
  .header-page-menu {
    display: none;
  }
  body:not(.fs-body-top).page-template .product-name .page-heading {
    margin-bottom: 30px;
  }
  body:not(.fs-body-top).page-template-default .fs-c-breadcrumb,
  body:not(.fs-body-top).page-template .fs-c-breadcrumb {
    margin-bottom: 110px;
  }
}


/* ヘッダー開閉メニュー */
.header-wide-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #e7e7e7;
  overflow: auto;
  z-index: 500;
}
.header-wide-menu-in {
  padding-top: 80px;
  padding-bottom: 80px;
}
.header-wide-menu-genre {
  font-size: 16px;
}
.header-wide-menu-genre li {
  margin: 0 20px;
}
.header-wide-menu-about {
  font-size: 12px;
}
.header-wide-menu-about li {
  margin: 0 15px;
}
.header-wide-menu-about li.line {
  position: relative;
  padding-right: 15px;
}

.header-page-menu-about::before,
.header-wide-menu-about li.line::before {
  position: absolute;
  top: 5px;
  right: 0;
  content: "";
  width: 1px;
  height: 30px;
  background: #000;
}

.header-open-menu {
  margin-bottom: 30px;
}
.header-open-menu .button {
  cursor: pointer;
  height: 32px;
  position: relative;
}
.header-open-menu .button span {
  background: #fff;
  display: block;
  width: 1px;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  position: absolute;
  transition-duration: .3s;
}
.header-open-menu .button span:nth-child(1) {
  margin-left: -5px;
}
.header-open-menu .button span:nth-child(3) {
  margin-left: 5px;
}

.header-open-menu .button.active span:nth-child(1) {
  margin-left: 0;
  transform: translate(-50%,-50%) rotate(110deg);
}
.header-open-menu .button.active span:nth-child(2) {
  opacity: 0;
}
.header-open-menu .button.active span:nth-child(3) {
  margin-left: 0;
  transform: translate(-50%,-50%) rotate(-110deg);
}


/* お問い合わせ */
.contact-parts .tl {
  text-align: center;
  font-weight: 600;
  font-size: 16px;
  margin: 0 0 20px;
}
.contact-parts-in {
  background: #fff;
  padding: 20px;
}
.contact-parts-in-item {
  text-align: center;
}
.contact-parts-in-item p {
  margin: 0;
  font-weight: 600;
}
.contact-parts-in-item .sub-tl,
.contact-parts-in-item .comment {
  font-size: 12px;
}
.contact-parts-in .under,
.contact-parts-in-item .comment {
  font-weight: 400;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.contact-parts-in-item .tel {
  font-size: 24px;
  margin: 10px 0;
}
.contact-parts-in-item .dl {
  margin-top: 15px;
  display: none;
}
.contact-parts-in-item .dl a {
  height: 36px;
  font-size: 13px;
}
.contact-parts .contact-btn a {
  height: 64px;
  font-size: 14px;
}
.contact-parts-in .under {
  margin: 20px 0 0;
  font-size: 12px;
}
@media screen and (min-width: 1101px){
  .header-wide-menu-in {
    padding-top: 120px;
    padding-bottom: 80px;
  }
  .header-wide-menu-list {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
  }
  .header-wide-menu-about {
    font-size: 13px;
  }
  .header-wide-menu-genre li,
  .header-wide-menu-about li {
    margin: 0 40px;
  }
  .header-wide-menu-genre li:first-child {
    margin-right: 0;
  }
  .header-wide-menu-about li.line {
    padding-right: 40px;
  }
  .header-wide-menu-about li:last-child {
    margin-left: 0;
  }
  .header-wide-menu-genre {
    font-size: 20px;
  }
  .contact-parts {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: flex-start;
    margin-top: 260px;
  }
  .contact-parts .tl {
    writing-mode: vertical-rl;
    font-size: 16px;
    margin-left: 30px;
  }
  .contact-parts-in {
    padding: 40px 80px 40px 40px;
    max-width: 675px;
  }
  .contact-parts-in-item {
    display: flex;
    align-items: center;
    text-align: left;
    gap: 0 30px;
  }
  .contact-parts-in-item + .contact-parts-in-item {
    border-top: 1px solid #ccc;
    padding-top: 30px;
    margin-top: 30px;
  }
  .contact-parts-in-item .sub-tl,
  .contact-parts-in-item .comment {
    font-size: 13px;
  }
  .contact-parts-in-item .tel {
    margin: 0;
    font-size: 32px;
    line-height: 1.2;
  }
  .contact-parts-in-item .bottom {
    display: flex;
    flex-direction: column-reverse;
    max-width: 180px;
    flex: 1;
  }
  .contact-parts-in-item .dl {
    margin: 0 0 10px;
  }
  .contact-parts .contact-btn {
    margin-top: 30px;
  }
  .contact-parts .contact-btn a {
    font-size: 16px;
  }
  .contact-parts-in .under {
    margin-top: 30px;
    font-size: 13px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1000px) {
  .header-wide-menu-genre li,
  .header-wide-menu-about li {
    margin: 0 20px;
  }
}
@media screen and (max-width: 1100px){
  .header-wide-menu-list ul {
    margin: 0 auto 120px;
  }
  .contact-parts-in-item {
    border-bottom: 1px solid #ccc;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 768px){
  .contact-parts-in-item:first-child .comment {
    display: inline-block;
    text-align: left;
  }
}

/* ヘッダーサーチ */
.header-search-menu {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  z-index: 500;
}
.header-search-menu-in {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  position: relative;
  padding: 0 60px;
}
.header-search-menu-in::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: rgba(231,231,231,.9);
}
.header-search-menu-in .front-search form {
  padding: 30px 0;
}
.header-search-menu-in .front-search {
  flex: 1;
  max-width: 1100px;
}
.front-search {
  position: relative;
  z-index: 10;
}
.header-menu .header-search::before,
.header-menu .header-search::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  content: "";
  height: 34px;
  width: 1px;
  background: #fff;
  opacity: 0;
  transition-duration: .3s;
}
.header-menu .header-search img {
  transition-duration: .3s;
}
.header-menu .header-search.active img {
  opacity: 0;
}
.header-menu .header-search.active::before {
  transform: translate(-50%,-50%) rotate(110deg);
  opacity: 1;
}
.header-menu .header-search.active::after {
  transform: translate(-50%,-50%) rotate(-110deg);
  opacity: 1;
}


/*---------------------------------
　トップページ
---------------------------------*/

/* タイトル */
.front-tl {
  writing-mode: vertical-rl;
  font-weight: 600;
  margin: 0 auto 40px;
  font-size: 24px;
}
.front-section {
  margin-top: 120px;
}
@media screen and (min-width: 768px){
  .front-section {
    margin-top: 240px;
  }
  .front-tl {
    font-size: 32px;
    margin-bottom: 60px;
  }
}


/* 固定表示 */
body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  height: 100vh;
}
.fix-area .box {
  position: relative;
  overflow: hidden;
  height: 100vh;
  width: 100vw;
}
.fix-area .pinSection {
  height: 100%;
  width: 100%;
}
.fix-area .pinSection-in,
.fix-area .image {
  top: -50%;
  left: 50%;
  transform: translate(-50%, -50%);
  position: absolute;
  background-size: contain;
  height: 100%;
  width: 100%;
}
.fix-area .image img {
  height: 100vh;
  width: 100vw;
  object-fit: cover;
}
.fix-area .pin-spacer {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
.fix-area .event1 .pinSection-in,
.fix-area .event1 .image {
  top: 50%;
}
.fix-area .event5 {
  color: #fff;
}
.fix-area .event5 a {
  color: #fff;
}
@media screen and (min-width: 768px){
  .fix-area {
    margin-top: 120px;
  }
}

/* 定番商品 */
.front-genre {
  writing-mode: vertical-rl;
}
.front-genre p {
  margin: 0;
}
.front-genre p.tl,
.front-genre p.link {
  font-weight: 600;
}
.front-genre p.tl {
  font-size: 26px;
}
.front-genre p.tx {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.8;
  margin: 0 40px;
}
.front-genre p.link {
  font-size: 16px;
  text-align: end;
}
.front-genre p.link a {
  padding: 5px 0;
}
.front-genre {
  position: absolute;
}
.front-genre.front-genre-top {
  top: 30%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.front-genre.front-genre-bottom {
  bottom: 30%;
  left: 50%;
  transform: translate(-50%,50%);
}
@media screen and (min-width: 768px){
  .front-genre p.tl {
    font-size: 32px;
  }
  .front-genre p.link {
    font-size: 18px;
  }
  .event1 .front-genre {
    bottom: 50%;
    left: 78%;
  }
  .event2 .front-genre {
    bottom: 40%;
    left: 20%;
  }
  .event3 .front-genre {
    top: 30%;
    left: 20%;
  }
  .event4 .front-genre {
    bottom: 70%;
    left: 20%;
  }
  .event5 .front-genre {
    top: 30%;
    left: 75%;
  }
  .event6 .front-genre {
    bottom: 30%;
    left: 25%;
  }
  .event7 .front-genre {
    top: 70%;
    left: 75%;
  }
}


/* ファーストビュー */
.fv-image {
  position: relative;
  padding-bottom: 10%;
}
.fv-image img {
  display: block;
}
.fv-image img.main {
  position: relative;
  z-index: 10;
}
.fv-image img.bg {
  position: absolute;
  bottom: 0;
  z-index: 5;
}
@media screen and (min-width: 768px){
  .fv-image {
    padding-bottom: 300px;
  }
  .fv-image.sp {
    padding-bottom: 0;
  }
  .fv-image.sp img {
    display: none;
  }
  .fv-image img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 767px){
  .fv-image.pc {
    display: none;
  }
  .fv-image.sp {
    margin-top: 60px;
  }
  .fv-image img {
    object-fit: cover;
    width: 100%;
    height: 120vw;
    object-position: 35% 50%;
  }
}

/* お知らせ */
.front-news {
  position: relative;
  z-index: 10;
}
.fv-image .front-news {
  padding-left: 60px;
  padding-right: 60px;
}
.front-news p {
  margin: 0;
}
.front-news p span {
  display: block;
}
.front-news .date {
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  display: flex;
  align-items: center;
  gap: 0 8px;
  font-size: 11px;
  margin-bottom: 5px;
}
.front-news .date::before {
  content: "";
  background: #000;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}
#wp-topics.front-news .tl {
  font-size: 13px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 400px;
}
@media screen and (min-width: 768px){
  .front-news {
    margin-top: 180px;
    margin-bottom: 40px;
  }
  .fv-image .front-news {
    padding-left: 120px;
  }
  .front-news .date {
    font-size: 13px;
    margin-bottom: 0;
  }
  .front-news .tl {
    font-size: 14px;
  }
  .front-news p a {
    display: flex;
    align-items: center;
    gap: 0 60px;
  }
}
@media screen and (min-width: 1401px){
  .fv-image .front-news {
    padding-left: 240px;
  }
}


/* お薦め商品 */
#front-reccomend {
  overflow: hidden;
}
.swiper-control {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 20px;
  margin-top: 40px;
}
#front-reccomend .swiper-control .swiper-pagination,
#front-reccomend .swiper-control .swiper-button-next,
#front-reccomend .swiper-control .swiper-button-prev {
  margin-top: 0;
  position: relative;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: auto;
  height: auto;
}
#front-reccomend .swiper-control .swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 5px;
}
#front-reccomend .swiper-control .swiper-pagination .swiper-pagination-bullet {
  margin: 0;
  width: 2px;
  height: 6px;
  transition-duration: .3s;
  background: #333;
}
#front-reccomend .swiper-control .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  height: 16px;
  background: #000;
}
#front-reccomend .swiper-control .swiper-button-next,
#front-reccomend .swiper-control .swiper-button-prev {
  width: 20px;
  height: 20px;
  background: url("../image/slider-left.svg") center center no-repeat;
  background-size: contain;
}
#front-reccomend .swiper-control .swiper-button-next {
  background-image: url("../image/slider-right.svg");
}
#front-reccomend .swiper-control .swiper-button-next::after,
#front-reccomend .swiper-control .swiper-button-prev::after {
  content: none;
}
#front-reccomend .swiper-slide a {
  display: block;
  position: relative;
  padding-top: 20px;
}
.item_name {
  position: absolute;
  top: 0;
  font-weight: 600;
  writing-mode: vertical-rl;
  margin: 0;
  right: 40px;
  font-size: 20px;
}
.item_price {
  font-weight: 500;
  margin: 20px 0 0;
  font-size: 18px;
}
@media screen and (min-width: 768px){
  #front-reccomend {
    margin-left: 8%;
  }
  #front-reccomend .swiper-slide {
    padding-left: 20px;
  }
  #front-reccomend .swiper-slide a {
    padding-top: 30px;
    max-width: 342px;
    margin-left: auto;
  }
  .swiper-control {
    margin-top: 60px;
  }
  #front-reccomend .swiper-control {
    margin-right: calc( 8vw + 20px );
  }
}
@media screen and (max-width: 767px){
  #front-reccomend .swiper-slide {
    padding-left: 20px;
    max-width: 270px;
  }
  #front-reccomend {
    margin-left: 14%;
  }
  #front-reccomend .swiper-control {
    width: 270px;
    padding-left: 20px;
  }
}


/* 贈り物 */
.front-gift {
  margin-top: 50px;
}
.front-gift .image {
  width: 85%;
  max-width: 1100px;
}
.front-gift-in {
  margin-top: 20px;
}
.front-gift-in p {
  margin: 0;
}
.front-gift-in .tl,
.front-gift-in p.link {
  font-weight: 600;
}
.front-gift-in .tl {
  font-size: 20px;
  margin-bottom: 10px;
}
.front-gift-in p.tx {
  font-size: 15px;
  line-height: 1.7;
  font-weight: 400;
}
.front-gift-in p.link {
  font-size: 16px;
  margin-top: 30px;
}
@media screen and (min-width: 768px){
  .front-gift {
    display: flex;
    justify-content: center;
  }
  .front-gift .image {
    flex: 1;
  }
  .front-gift-in {
    writing-mode: vertical-rl;
    margin-top: 0;
    margin-left: 0;
  }
  .front-gift-in .tl {
    font-size: 36px;
    margin-top: 0;
    margin-left: 140px;
  }
  .front-gift-in p.tx {
    font-size: 16px;
    max-height: 340px;
    margin-top: auto;
  }
  .front-gift-in p.link {
    font-size: 18px;
    text-align: end;
    margin-right: 40px;
  }
  .front-gift-in p.link a {
    padding: 5px 0;
  }
}
@media screen and (max-width: 767px){
  .front-gift-in p.link a {
    padding: 0 5px;
  }
}


/* お菓子の種類 */
.front-category.rayout-base {
  box-sizing: content-box;
  max-width: 1480px;
}
.front-category-item .front-category-link {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1 / 1;
  position: relative;
}
.front-category-item .front-category-link:hover {
  opacity: .7;
}
.front-category-item .front-category-link .image {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.front-category-item .front-category-link .image,
.front-category-item .front-category-link .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.front-category-item .front-category-link p {
  font-size: 24px;
  writing-mode: vertical-rl;
  color: #fff;
  font-weight: 600;
  z-index: 5;
}
@media screen and (min-width: 768px){
  .front-category-list {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 40px;
  }
  .front-category-item .front-category-link {
    aspect-ratio: 181 / 102;
  }
  .front-category-item .front-category-link p {
    font-size: 30px;
  }
}
@media screen and (max-width: 767px){
  .front-category-item {
    margin: 10px auto;
    max-width: 270px;
  }
}

/* お知らせ */
.front-topics {
  position: relative;
}
.front-topics .link {
  writing-mode: vertical-rl;
  font-weight: 600;
  font-size: 16px;
}
.front-topics .link a {
  padding: 5px 0;
}
.front-topics .front-tl {
  margin-right: 0;
  margin-bottom: 0;
}
.front-topics-list.front-news .date::before {
  content: none;
}
.front-topics-list a {
  display: block;
  padding: 30px 0;
}
.front-topics-list a:hover {
  opacity: .7;
}
.front-topics-list p + p {
  border-top: 1px solid #ccc;
}
.front-topics-list .cat {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  font-size: 13px;
}
.front-topics-list.front-news .date {
  font-size: 12px;
}
.front-topics-list.front-news .tl {
  font-size: 16px;
  flex: 1;
}
.front-topics-list .cat span {
  background: #fff;
  padding: 0 5px;
}
@media screen and (min-width: 768px){
  .front-topics-list.front-news {
    margin-top: 0;
    max-width: 980px;
    width: 70%;
  }
  .front-topics .link {
    font-size: 18px;
    position: absolute;
    left: 80%;
    bottom: 0;
  }
  .front-topics-list.front-news .date {
    font-size: 13px;
  }
  .front-topics-list .cat {
    margin-left: auto;
  }
  .front-topics-list a {
    padding: 35px 0;
  }
}
@media screen and (max-width: 767px){
  .front-topics-list {
    margin-top: 10px;
  }
  .front-topics-list .cat {
    margin-top: 15px;
  }
  .front-topics .front-tl {
    margin-bottom: -50px;
  }
}

/* 店舗 */
.front-store-item .image {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  aspect-ratio: 18 / 23;
}
.front-store-item .image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}
.front-store-item .image p {
  font-size: 24px;
  font-weight: 600;
  color: #fff;
  writing-mode: vertical-rl;
  position: relative;
  z-index: 5;
}
.front-store-item p {
  margin: 0;
}
.front-store-item .tl,
.front-store-item .link {
  font-weight: 600;
}
.front-store-item .tl {
  font-size: 20px;
}
.front-store-item .tx {
  font-size: 15px;
  margin-top: 15px;
  line-height: 2;
}
.front-store-item .link {
  font-size: 16px;
  margin-top: 20px;
}
@media screen and (min-width: 1301px){
  .front-store {
    display: flex;
    gap: 80px;
  }
  .front-store-item {
    flex: 1;
    display: flex;
    gap: 0 40px;
  }
  .front-store-item .tx-wrap {
    writing-mode: vertical-rl;
  }
  .front-store-item .tl {
    font-size: 24px;
  }
  .front-store-item .image {
    width: 64%;
  }
  .front-store-item .tx {
    margin: auto 40px 0 30px;
    max-height: 370px;
  }
  .front-store-item .link {
    text-align: end;
  }
  .front-store-item .link a {
    padding: 5px 0;
  }
}
@media screen and (max-width: 1300px){
  .front-store-item {
    max-width: 500px;
    margin: 0 auto;
  }
  .front-store-item .tx-wrap {
    margin-top: 20px;
  }
  .front-store-item + .front-store-item {
    margin-top: 80px;
  }
  .front-store-item .link a {
    padding: 0 5px;
  }
}

.front-search form {
  padding-top: 80px;
}
#search_keyword,
#search_category,
#search_keyword_top,
#search_category_top,
.search_more .price_list li .price,
.tag_list li a {
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.keyWowd_box {
  display: flex;
  height: 48px;
}
#search_keyword_top,
#search_keyword {
  font-size: 16px;
  flex: 1;
  border: none;
  padding: 5px 10px;
  background-color: #fff;
}
#search_keyword_top::placeholder,
#search_keyword::placeholder,
.search_more .price_list li .price::placeholder {
  font-size: 14px;
  color: #999;
}
.key_search {
  border: none;
  background: url("../image/search.svg") center center no-repeat #fff;
  background-size: 20px auto;
  font-size: 0;
  width: 48px;
  height: 100%;
}
.search_tag_area {
  margin-top: 10px;
}
.tag_list {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.tag_list li a {
  display: block;
  background: #d6d6d6;
  line-height: 1;
  padding: 5px;
  font-weight: 400;
  font-size: 12px;
}
.tag_list li a::before {
  content: "#";
}
.search_more_box,
.search_more_item + .search_more_item {
  margin-top: 30px;
}
.search_ttl {
  font-size: 13px;
  margin-bottom: 10px;
}
#search_category_top,
#search_category {
  border: none;
  background: url("../image/arrow.svg") right 15px center no-repeat #fff;
  background-size: 10px auto;
  padding: 5px 40px 5px 10px;
  height: 46px;
  font-size: 14px;
}
.search_more .price_list {
  display: flex;
  align-items: center;
}
.search_more .price_list li.txt {
  padding: 0 10px;
}
.search_more .price_list li:not(.txt) {
  flex: 1;
}
.search_more .price_list li .price {
  height: 40px;
  padding: 5px 10px;
  font-size: 16px;
  border: none;
  background-color: #fff;
}
.search_button_wrap {
  margin-top: 40px;
}
.search_button_wrap button {
  display: block;
  border: 1px solid #000;
  text-align: center;
  width: 100%;
  font-size: 14px;
  padding: 1em;
  transition-duration: .3s;
}
.search_button_wrap button.reset_btn {
  color: #000;
  background-color: transparent;
}
.search_button_wrap button:hover {
  background: #000;
  color: #fff;
}
.submit_btn {
  background: #000;
  color: #fff;
}
.search_button_wrap button.submit_btn:hover {
  background: #fff;
  color: #000;
}
@media screen and (min-width: 1101px){
  .search_more-wrap {
    display: flex;
    gap: 40px;
  }
  .search_more_container {
    flex: 1;
  }
  .keyWowd_box {
    height: 64px;
  }
  .key_search {
    width: 64px;
  }
  .search_tag_area {
    margin-top: 20px;
  }
  .tag_list li a {
    font-size: 13px;
    padding: 8px;
  }
  #search_keyword_top,
  #search_keyword {
    padding-left: 20px;
    font-size: 14px;
  }
  .search_more_item {
    display: flex;
    align-items: center;
    gap: 16px;
  }
  .search_more_item .search_more {
    flex: 1;
  }
  .search_ttl {
    margin-bottom: 0;
    font-size: 14px;
    min-width: 120px;
  }
  .search_more_box {
    margin-top: 0;
  }
  #search_category_top,
  #search_category,
  .search_more .price_list li .price {
    height: 56px;
    padding-left: 20px;
    font-size: 14px;
  }
  .search_button_wrap {
    display: flex;
    justify-content: center;
    gap: 40px;
    max-width: 724px;
    margin-left: auto;
    margin-right: auto;
  }
  .search_button_wrap button {
    font-size: 16px;
    padding: 1.2em;
  }
}
@media screen and (max-width: 1100px){
  .search_button_wrap button + button {
    margin-top: 10px;
  }
}


/*---------------------------------
　フッター
---------------------------------*/

.dotted01,
.dotted02,
.dotted03 {
  position: relative;
}
.dotted01::before,
.dotted02::after {
  content: "";
  background-image : linear-gradient(to right, #000 1px, transparent 1px);
  background-size: 3px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
  position: absolute;
  width: 100%;
  height: 4px;
  left: 0;
}
.dotted01::before {
  top: 0;
}
.dotted02::after {
  bottom: 0;
}

.dotted03::before {
  content: "";
  background-image : linear-gradient(to bottom, #000 1px, transparent 1px);
  background-size: 3px 3px;
  background-repeat: repeat-y;
  background-position: left top;
  position: absolute;
  width: 4px;
  height: 100%;
  right: 0;
}

@media screen and (min-width: 768px){
  .dotted01::before,
  .dotted02::after {
    background-size: 5px 5px;
  }
}

footer {
  margin-top: 80px;
}
.footer-link {
  padding: 20px 0;
}
.footer-link ul li a {
  display: block;
}
.footer-link ul li a:hover {
  color: #999;
}
@media screen and (min-width: 768px){
  .page-template-default footer {
    margin-top: 240px;
  }
  .fs-body-cart footer,
  .fs-body-product footer,
  .fs-body-category footer {
    margin-top: 124px;
  }
  .footer-link {
    padding: 80px 0;
  }
  .footer-link ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 0;
    font-size: 18px;
    justify-content: center;
  }
  .footer-link ul li {
    line-height: 1.2;
  }
  .footer-link ul li a {
    padding: 0 40px;
  }
  .footer-link ul li + li {
    border-left: 1px solid #cacaca;
  }
}
@media screen and (max-width: 767px){
  .footer-link ul li a {
    padding: 15px 30px 15px 0;
    background: url("../image/footer/arrow.svg") right 15px center no-repeat;
    background-size: 8px auto;
  }
  .footer-link ul li + li {
    border-top: 1px solid #ccc;
  }
}

.footer-copy {
  padding-top: 60px;
  padding-bottom: 80px;
  text-align: center;
}
.footer-copy a {
  display: block;
}
.footer-copy a + a {
  margin-top: 20px;
}
@media screen and (min-width: 1101px){
  .footer-copy a {
    display: none;
  }
  .footer-menu {
    display: flex;
    flex-direction: row-reverse;
    padding-top: 120px;
  }
  .footer-logo {
    text-align: right;
  }
  .footer-logo img {
    width: 62px;
  }
  .footer-wide-menu-list {
    margin-right: auto;
    max-width: 725px;
    width: 62%;
  }
  .footer-contact-parts.contact-parts {
    margin-top: 80px;
  }
  .footer-wide-menu-item {
    writing-mode: vertical-rl;
    font-weight: 600;
    margin-left: auto;
  }
  .footer-wide-menu-genre {
    font-size: 24px;
  }
  .footer-wide-menu-genre li {
    margin: 0 35px;
  }
  .footer-wide-menu-genre li:first-child {
    margin-right: 0;
  }
  .footer-wide-menu-about {
    font-size: 18px;
  }
  .footer-wide-menu-about li {
    margin: 0 30px;
  }
  .footer-wide-menu-privacy {
    font-size: 13px;
  }
  .footer-wide-menu-privacy li {
    margin: 0 20px;
  }
  .footer-wide-menu-privacy li:last-child {
    margin-left: 0;
  }
  
  .footer-wide-menu-about,
  .footer-wide-menu-privacy {
    position: relative;
    padding-right: 15px;
  }
  .footer-wide-menu-about::before,
  .footer-wide-menu-privacy::before {
    position: absolute;
    top: 3px;
    right: 0;
    content: "";
    width: 1px;
    height: 30px;
    background: #000;
  }
  .footer-wide-menu-item + .footer-wide-menu-item {
    margin-top: 60px;
  }
  .footer-wide-menu-guide li {
    font-size: 14px;
    margin: 0 10px;
  }
  .footer-wide-menu-guide li:first-child {
    font-size: 18px;
    position: relative;
    padding-left: 15px;
    margin-left: 15px;
    margin-right: 0;
  }
  .footer-wide-menu-guide li:first-child::after {
    position: absolute;
    top: 3px;
    left: 0;
    content: "";
    width: 1px;
    height: 30px;
    background: #000;
  }
  .footer-wide-menu-guide li:last-child {
    margin-left: 0;
  }
  .footer-wide-menu-guide + .footer-wide-menu-guide {
    margin-right: 80px;
  }
}
@media screen and (min-width: 1101px){
  .footer-link ul li.sp-only {
    display: none;
  }
}
@media screen and (max-width: 1100px){
  .footer-wide-menu-list {
    display: none;
  }
  .footer-logo {
    text-align: center;
    padding: 60px 0;
  }
  .footer-logo a {
    display: inline-block;
  }
}

/* 変倍 */
.shop-page .tl,
.company-page .tl,
.history .tl,
.category-fv .category-name span,
.recommend-tl p,
.fs-c-productListItem__productName .fs-c-productName__name,
.product-name .page-heading span,
.header-wide-menu-genre li,
.header-wide-menu-about li,
.contact-parts .tl,
.header-page-menu ul li,
.front-tl,
.front-genre p.tl,
.item_name,
.front-gift-in .tl,
.front-category-item .front-category-link p,
.footer-wide-menu-guide li:first-child,
.footer-wide-menu-item:first-child ul li {
  transform: scale(1.1,.9);
  transform-origin: top center;
  letter-spacing: .1em;
}
.imperial .tl {
  transform: scale(1.1,.9) translate(0,-50%);
  transform-origin: top center;
  letter-spacing: .1em;
  position: relative;
}
@media screen and (min-width: 1301px){
  .front-store-item .tl {
    transform: scale(1.1,.9);
    transform-origin: top center;
    letter-spacing: .1em;
    margin: 0;
  }
}

/****** 商品ページ ******/

/* 拡大ボタン */
.fs-c-productCarouselMainImage__expandButton {
  display: none;
}
/* パンくず */
.fs-c-breadcrumb {
  margin-bottom: 40px;
  padding-left: 60px;
  padding-right: 60px;
  max-width: 1480px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: content-box;
}

.fs-c-breadcrumb__list {
  padding: 0;
}
.fs-c-breadcrumb > span + span::before,
.fs-c-breadcrumb__listItem + .fs-c-breadcrumb__listItem::before {
  content: "";
  display: inline-block;
  background: #000;
  vertical-align: super;
  width: 1em;
  height: 1px;
  margin: 0 .5em;
}
@media screen and (min-width: 768px){
  body:not(.fs-body-top) .header-page-menu {
    margin-bottom: 80px;
  }
  .fs-c-breadcrumb {
    padding-left: 120px;
    padding-right: 120px;
  }
}
@media screen and (max-width: 767px){
  .fs-c-breadcrumb {
    margin-top: 10px;
  }
  .fs-body-product .fs-c-breadcrumb {
    margin-bottom: 20px;
  }
  .shop-page .fs-c-breadcrumb {
    margin-bottom: 20px !important;
  }
}


.product-name {
  position: relative;
}
.product-name .page-heading {
  writing-mode: vertical-rl;
  font-weight: 600;
  font-size: 24px;
  margin: 50px auto 60px;
  background: url(../image/name-icon.svg) center 0 no-repeat;
  background-size: auto 15px;
  padding-top: 30px;
  padding-left: 10px;
  padding-right: 10px;
}
.product-name .page-heading span {
  display: inline-block;
}
.fs-c-productCarouselMainImage__thumbnail__img {
  border: none;
  display: block;
  opacity: .5;
}
.slick-active .fs-c-productCarouselMainImage__thumbnail__img {
  opacity: 1;
}
.fs-c-productCarouselMainImage__thumbnailList {
  gap: 10px;
  margin: 0;
  padding: 8px 0;
  overflow: auto;
}
.fs-c-productCarouselMainImage__thumbnailList li {
  cursor: pointer;
}
.fs-c-productCarouselMainImage__thumbnailList > li {
  margin: 0;
  flex-basis: calc( 25% - 8px );
}
.fs-c-productNameHeading {
  margin-top: 20px;
  margin-bottom: 10px;
  color: #000;
}
.fs-c-productNameHeading .fs-c-productNameHeading__name {
  font-size: 32px;
}
.fs-c-productNameHeading .fs-c-productNameHeading__name br {
  display: none;
}
.fs-c-productNameHeading .fs-c-productNameHeading__copy {
  font-size: 13px;
}
.fs-c-productNumber {
  font-weight: 400;
  border: none;
  padding: 0;
  margin-bottom: 30px;
  display: block;
}
.fs-c-productSalesPeriod {
  text-align: left;
  border: none;
  background: #e2e2e2;
  font-weight: 400;
  font-size: 13px;
  margin-bottom: 30px;
  padding: 8px 10px;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.fs-c-price {
  font-family: "Lora", serif;
}
.fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
  color: #000;
}
.fs-c-productPrices--productDetail .fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
  font-size: 30px;
}
.fs-c-productPrices--productDetail .fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price .fs-c-price__currencyMark {
  font-size: 20px;
}
.fs-c-productPrice {
  gap: 0 10px;
}
.fs-c-productPrices {
  margin-bottom: 15px;
}
.fs-c-productMarks {
  margin-top: 10px;
}
.fs-c-productPointDisplay {
  background: none;
  border: 1px solid #000;
  border-radius: 3px;
  color: #000;
  font-weight: 700;
  font-size: 1.2rem;
  padding: 4px 8px 6px;
}
.fs-c-mark {
  font-size: 13px;
  padding: 6px 8px 8px;
  background-color: #000;
  color: #fff;
}
.product-info {
  border-top: 1px solid #d6d6d6;
  border-bottom: 1px solid #d6d6d6;
  margin-top: 40px;
  padding-top: 40px;
}
.product-info p {
  margin: 0;
  font-size: 14px;
}
.product-info .tl {
  font-weight: 700;
}
.product-info > .tl {
  font-size: 16px;
  margin-bottom: 20px;
}
.product-info-table {
  margin-top: 15px;
}
.product-info-table .tr {
  border-top: 1px solid #d6d6d6;
  padding: 15px 0;
}
.fs-c-productOption {
  margin: 40px 0 20px;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.fs-c-productOption__name,
.fs-c-productOption__option {
  background: none;
  padding: 0;
}
.fs-c-productOption__option {
  margin-bottom: 20px;
}
.fs-c-productOption__name {
  margin-bottom: 10px;
}
.fs-c-dropdown__menu,
.fs-c-productOption__field input {
  height: 48px;
  font-size: 16px;
  border: none;
}
.fs-c-productOption__field input {
  padding-left: 8px;
  padding-right: 8px
}
@media screen and (min-width: 768px){
  .fs-c-productOption__field input {
    padding-left: 20px;
    padding-right: 20px
  }
}

.fs-c-productOption__comment {
  margin-top: 10px;
  font-weight: 400;
  color: rgba(0,0,0,.7);
}
.fs-c-dropdown::after {
  border-left: none;
  background: url(../image/arrow.svg) center center no-repeat #fff;
  font-size: 0;
  width: 25px;
}

.fs-c-productQuantityAndWishlist {
  display: block;
  margin-top: 30px;
  position: relative;
}
.fs-c-productQuantityAndWishlist::before {
  content: "数量";
  display: inline-block;
  margin-bottom: 10px;
}
.fs-c-productQuantityAndWishlist .fs-c-buttonContainer {
  position: absolute;
  bottom: -38px;
  right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.fs-c-productQuantityAndWishlist .fs-c-buttonContainer .fs-c-button__label {
  display: none;
}
.fs-c-button--particular.fs-c-button--addToWishList--detail,
.fs-c-button--particular.fs-c-button--removeFromWishList--detail {
  align-items: center;
  padding: 0;
  border: 1px solid #DDDFE3;
  border-radius: 0;
  background: none;
  display: flex;
  justify-content: center;
  font-size: 1.4rem;
  width: 64px;
  height: 64px;
  box-shadow: none;
  transform: translate(0,100%);
}
.fs-c-button--particular.fs-c-button--addToWishList--detail::after,
.fs-c-button--particular.fs-c-button--removeFromWishList--detail::after {
  margin-left: 0;
}

.fs-c-productQuantityAndWishlist__quantity {
  max-width: 100%;
  width: 100%;
}
.fs-c-quantity__number.fs-system-quantity-text,
.fs-c-productQuantityAndWishlist__quantity select {
  height: 48px;
  border: none;
  padding-left: 8px;
  padding-right: 8px
}
.fs-c-quantity__number:focus:not(.is-error) + .fs-c-quantity__message {
  padding: 10px;
}
.fs-c-quantity__number:focus:not(.is-error) + .fs-c-quantity__message::before {
  font-size: 14px;
}

.fs-c-variationPanelList__label.fs-c-variationLabel {
  display: none;
}
.fs-c-variationPanelList__list {
  display: block;
  white-space: normal;
}
.fs-c-variationPanelList__list > li {
  display: inline-block;
  margin-top: 10px;
}

.fs-c-variationPanelList__panel {
  min-height: inherit;
  background: none;
  border-radius: 0;
  border: 1px solid #000;
  color: #000;
  padding: 10px 15px;
  opacity: .4;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
}
.fs-c-productVariationPrice__price,
.fs-c-variationPanelList__radio:checked + .fs-c-variationPanelList__panel,
.fs-c-variationPanelList__panel .fs-c-variationPanelList__panel__label {
  font-weight: 400 !important;
}
.fs-c-variationPanelList__panel__content {
  min-height: inherit;
  background: none;
}
.fs-c-variationPanelList__radio:checked + .fs-c-variationPanelList__panel .fs-c-variationPanelList__panel__content {
  background: none;
  color: #000;
}
.fs-c-variationPanelList__radio:checked + .fs-c-variationPanelList__panel {
  opacity: 1;
  font-weight: bold;
  border-width: 2px;
  border-color: #000;
}
.fs-c-variationPanelList__panel__content,
.fs-c-variationPanelList__panel__price {
  padding: 0;
}
.fs-c-productVariationPrice__price {
  color: #000;
  margin-top: 4px;
  font-family: "Lora", serif;
}

.fs-c-button--standard,
.fs-c-button--secondary,
.fs-c-button--primary {
  background: #000;
  border-color: #000;
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 15px;
  width: 100%;
  transition-duration: .3s;
  height: 60px;
  max-width: 300px;
}
.fs-c-button--standard,
.fs-c-button--secondary,
.fs-c-button--standard:visited,
.fs-c-button--secondary:visited {
  background: none;
  color: #000;
}
.fs-c-button--primary:hover {
  background: none;
  color: #000;
  opacity: 1;
}
.fs-c-button--standard:hover,
.fs-c-button--secondary:hover {
  background: #000;
  color: #fff;
  opacity: 1;
}
.fs-c-productActionButton {
  margin: 30px 0 40px;
}
.fs-c-productActionButton.fs-c-buttonContainer .fs-c-button--addToCart--detail {
  height: 64px;
  max-width: none;
  width: calc( 100% - 74px );
  margin-right: auto;
}
.cart-link {
  margin: 120px auto;
}
.cart-link a {
  display: block;
  max-width: 720px;
  font-size: 18px;
  font-weight: 700;
  border: 1px solid #000;
  margin: 0 auto;
  padding: 20px 10px;
  text-align: center;
}
.cart-link a:hover {
  background: #000;
  color: #fff;
}
.itemdetail .itemdetail_info .credit {
  margin-top: 60px;
}
.product-infolink a,
.fs-c-returnedSpecialContract__link a,
.fs-c-button--plain {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  text-decoration: underline;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.product-infolink li {
  margin-top: 8px;
}
.product-infolink a:hover,
.fs-c-returnedSpecialContract__link a:hover,
.fs-c-button--plain:hover {
  text-decoration: none;
}
.product-name-s p {
  margin: 0;
}
@media screen and (min-width: 1201px){
  .itemdetail {
    display: flex;
    gap: 0 30px;
    justify-content: space-between;
    align-items: flex-start;
  }
  .itemdetail .itemThumb_wrap {
    max-width: 720px;
    width: 48%;
    position: sticky;
    top: 10px;
  }
  .itemdetail .itemdetail_info {
    flex: 1;
    max-width: 470px;
  }
  .itemdetail .itemdetail_info .credit {
    margin-top: 80px;
  }
  .product-name {
    padding-top: 120px;
  }
  .product-name .page-heading {
    margin: 0 0 0 auto;
    font-size: 36px;
    padding-top: 40px;
    background-size: auto 22px;
    position: absolute;
    top: 0;
    right: 20px;
    height: 100vh;
  }
  .product-name .page-heading br {
    display: none;
  }
  body:not(.fs-body-top).fs-body-product .header-page-menu {
    margin-bottom: 40px;
  }
  .fs-c-productNameHeading {
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    justify-content: flex-end;
    gap: 0 5px;
  }
  .fs-c-productNumber {
    font-size: 13px;
  }
  .fs-c-productSalesPeriod {
    text-align: center;
    padding: 10px;
  }
  .product-info {
    padding-top: 60px;
    margin-top: 60px;
  }
  .product-info > .tl {
    font-size: 18px;
  }
  .product-info > .tx {
    font-size: 15px;
  }
  .product-info-table {
    margin-top: 20px;
  }
  .product-info-table .tr {
    display: flex;
    gap: 0 10px;
  }
  .product-info-table .tr .tl {
    width: 20%;
  }
  .product-info-table .tr .tx {
    flex: 1;
  }
  .cart-link {
    margin-top: 160px;
    margin-bottom: 200px;
  }
}
@media screen and (min-width: 1401px){
  .fs-c-productCarouselMainImage {
    position: relative;
    padding-right: 130px;
  }
  .fs-c-productCarouselMainImage__thumbnailList {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 120px;
    padding: 0;
    overflow: auto;
  }
  .itemdetail .itemThumb_wrap {
    max-width: 850px;
    width: 56%;
  }
  .fs-c-productCarouselMainImage__thumbnailList li + li {
    margin-top: 10px;
  }
}
@media screen and (max-width: 1200px){
  .itemdetail_info {
    margin-top: 80px;
  }
  .fs-c-productNameHeading {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column-reverse;
    gap: 10px;
  }
  .fs-c-productNameHeading .fs-c-productNameHeading__name,
  .fs-c-productNameHeading .fs-c-productNameHeading__copy {
    width: 100%;
  }
  .product-info .tl {
    margin-bottom: 5px;
  }
}
@media screen and (max-width: 767px){
  .fs-c-button--standard,
  .fs-c-button--secondary,
  .fs-c-button--primary {
    margin-left: auto;
    margin-right: auto;
  }
  .fs-c-button--particular.fs-c-button--addToWishList--detail,
  .fs-c-button--particular.fs-c-button--removeFromWishList--detail {
    width: 48px;
    height: 48px;
  }
  .fs-c-productActionButton.fs-c-buttonContainer .fs-c-button--addToCart--detail {
    height: 48px;
    min-width: inherit;
    margin-left: 0;
    width: calc( 100% - 53px );
  }
  .product-name .page-heading {
    margin-top: 80px;
  }
}


.fs-c-productCarouselMainImage .fs-c-productCarouselMainImage__image > img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
  max-height: calc( 100vw - 120px );
}
@media screen and (min-width: 768px) and (max-width: 1400px){
  .fs-c-productCarouselMainImage__thumbnailList {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px){
  .fs-c-productCarouselMainImage .fs-c-productCarouselMainImage__image > img {
    max-height: calc( 100vw - 240px );
  }
}
.fs-c-productCarouselMainImage .fs-c-slick .slick-prev,
.fs-c-productCarouselMainImage .fs-c-slick .slick-next {
  top: auto;
  bottom: 0;
  transform: translate(0);
}
.fs-c-productCarouselMainImage .fs-c-slick .slick-prev::before,
.fs-c-productCarouselMainImage .fs-c-slick .slick-next::before {
  content: none;
}
.fs-c-productCarouselMainImage .fs-c-slick .slick-prev {
  transform: translate(-100%,100%);
  left: 50%;
  background: url("../image/slider-left.svg") center center no-repeat;
}
.fs-c-productCarouselMainImage .fs-c-slick .slick-next {
  transform: translate(100%,100%);
  right: 50%;
  background: url("../image/slider-right.svg") center center no-repeat;
}
@media screen and (max-width: 767px){
  .fs-c-productCarouselMainImage .fs-c-slick .slick-prev,
  .fs-c-productCarouselMainImage .fs-c-slick .slick-next {
    display: none !important;
  }
}



/* おすすめ商品 スライダー無効化 */
#recommend-item {
  overflow: auto;
  padding-top: 30px;
  padding-bottom: 46px;
}
#recommend-item::-webkit-scrollbar {
  /* display: none;*/
  height: 1px;
  background: #d0d0d0;
  cursor: pointer;
}

#recommend-item::-webkit-scrollbar-thumb {
  background-color: #1f1f1f;
  cursor: pointer;
}
#recommend-item .in {
  display: flex;
  gap: 20px;
}
.fs-c-featuredProduct {
  display: none;
}
.fs-c-featuredProduct .fs-c-productListCarousel.fs-c-slick {
  display: block;
  overflow: auto;
}
.fs-c-productListItem__control,
span.fs-c-productListCarousel__ctrl {
  display: none !important;
}
#recommend-item .fs-c-productPrice,
.fs-c-featuredProduct .fs-c-productPrice {
  font-size: 18px;
}
.fs-c-featuredProduct .fs-c-productListCarousel__list {
  display: flex;
  gap: 16px;
  width: max-content;
}
.fs-c-featuredProduct .fs-c-productListCarousel__list__itemTrack {
  overflow: auto;
}
.fs-c-featuredProduct div.slick-track {
  display: flex !important;
  width: 100% !important;
  transform: none !important;
  padding-top: 30px;
}
.fs-c-featuredProduct .fs-c-slick .slick-slide {
  float: none;
  width: 290px;
  padding-right: 20px;
}
.fs-c-featuredProduct div.slick-track::before {
  content: none !important;
}
#recommend-item .fs-c-productListCarousel__list__item,
.fs-c-featuredProduct article.fs-c-productListCarousel__list__item {
  max-width: 340px;
  min-width: inherit;
  margin: 0;
  position: relative;
}
.fs-c-featuredProduct article.fs-c-productListCarousel__list__item.fs-c-productListItem {
  min-width: 100%; /* スマホ用 横幅調整 */
  flex: 0 0 auto;
  margin: 0;
  position: relative;
}
#recommend-item article.fs-c-productListCarousel__list__item.fs-c-productListItem .fs-c-productName__copy,
.fs-c-featuredProduct article.fs-c-productListCarousel__list__item.fs-c-productListItem .fs-c-productName__copy {
  display: none;
}
.fs-c-featuredProduct__title {
  display: none;
}
#recommend-item .fs-c-productMarks,
.fs-c-featuredProduct .fs-c-productMarks {
  display: none;
}
.recommend-tl p {
  writing-mode: vertical-rl;
  font-weight: 600;
  font-size: 24px;
  margin: 0 auto;
}
.recommend-tl {
  margin-top: 60px;
}
@media screen and (min-width: 768px){
  .recommend-tl {
    margin-top: 120px;
  }
  .recommend-tl p {
    font-size: 32px;
  }
  #recommend-item,
  .fs-c-featuredProduct {
    margin-left: 120px;
  }
  #recommend-item .in {
    gap: 40px;
  }
  #recommend-item .in > div {
    min-width: 340px;
  }
  .fs-c-featuredProduct .fs-c-slick .slick-slide {
    width: 340px;
    padding-right: 40px;
  }
  .recommend-tl {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 1540px){
  #recommend-item,
  .fs-c-featuredProduct {
    margin-left: calc( ( 100% - 1480px ) / 2 );
  }
}
@media screen and (max-width: 767px){
  #recommend-item,
  .fs-c-featuredProduct {
    margin-left: 60px;
  }
  #recommend-item .in > div {
    min-width: 80%;
  }
}


/* 商品グループ */
.category-fv {
  background: url(../image/front-bg2-sp.jpg) center center no-repeat rgba(199,176,145,.5);
  background-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 600px;
}
.category-fv .category-name {
  writing-mode: vertical-rl;
  font-weight: 600;
  font-size: 36px;
  margin: 0 auto;
  background: url(../image/name-icon.svg) center 0 no-repeat;
  background-size: auto 22px;
  padding-top: 40px;
  padding-left: 10px;
  padding-right: 10px;
}
.category-fv .category-name span {
  display: inline-block;
}
.category-fv.white .category-name {
  background-image: url(../image/name-icon-w.svg);
  color: #fff;
}
.fs-c-productList {
  margin-top: 60px;
}
.fs-c-productListItem__viewMoreImageButton {
  display: none;
}
.fs-c-productList__list {
  gap: 40px;
}
.fs-c-productList__list .fs-c-productPrices {
  margin-top: 10px;
}
.fs-c-productList__list .fs-c-productPrice {
  font-size: 18px;
}
.fs-c-productList__list .fs-c-productName__copy {
  display: none;
}
.fs-c-productList__list__item {
  border-bottom: none;
  padding: 10px 0;
  position: relative;
}
.fs-c-productList__list__item form {
  position: relative;
}
.fs-c-productList__list__item form .fs-c-productMarks {
  position: absolute;
  right: 0;
  bottom: 0;
}
.fs-c-productListItem__productName {
  position: absolute;
  top: 0;
  right: 40px;
  margin: 0;
  transform: translate(0,-20px);
}
.fs-c-productListItem__productName .fs-c-productName__name {
  writing-mode: vertical-rl;
  font-weight: 600;
  font-size: 16px;
}
@media screen and (min-width: 768px){
  .category-fv {
    margin-bottom: 70px;
    background-image: url(../image/front-bg2.jpg);
  }
  body:not(.fs-body-top).fs-body-category .header-page-menu {
    margin-bottom: 80px;
  }
  .fs-c-productList {
    margin-top: 120px;
  }
  .fs-c-productListItem__productName {
    transform: translate(0,-15px);
  }
  .fs-c-productListItem__productName .fs-c-productName__name {
    font-size: 20px;
  }
  .fs-c-productList__list .fs-c-productPrices {
    margin-top: 20px;
  }
}
@media screen and (max-width: 599px){
  .fs-c-productList__list {
    display: block;
  }
  .fs-c-productList__list__item + .fs-c-productList__list__item {
    margin-top: 50px;
  }
}


/* ------------------------------
    並べ替えページャー
------------------------------ */
/*並べ替えページャー*/
.fs-c-productList__controller,
.fs-c-staffList__controller,
.fs-c-coordinationList__controller {
  position: relative;
  margin-top: 0;
  margin-bottom: 0;
}
.fs-c-listControl {
  justify-content: center;
  align-items: center;
  gap: 10px 0;
}
.fs-c-productList__controller:first-of-type {
  margin-bottom: 60px;
}
.fs-c-productList__controller:first-of-type .fs-c-listControl {
  display: none;
}
.fs-c-productList__controller:not(:first-of-type) {
  margin-top: 60px;
}
.fs-c-productList__controller > *,
.fs-c-staffList__controller > *,
.fs-c-coordinationList__controller > * {
  margin: 0;
}
.fs-c-productList__controller .fs-c-sortItems {
  position: relative;
  font-size: 14px;
}
.fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__label {
  border: 1px solid #000;
  border-radius: 4px;
  padding: 10px 13px;
  width: 110px;
  box-sizing: border-box;
  text-align: left;
  position: relative;
  cursor: pointer;
  transition-duration: .3s;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  tap-highlight-color: rgba(0, 0, 0, 0);
}
.fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__label:hover {
  opacity: 0.7;
}
.fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__label::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-80%)rotate(45deg);
  height: 6px;
  width: 6px;
  border-bottom: 1px solid #1A1A1A;
  border-right: 1px solid #1A1A1A;
}
.fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__list {
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  background-color: #fff;
  border: 1px solid #B5B5B5;
  width: 165px;
  padding: 10px 0;
  display: none;
  opacity: 0;
  z-index: 5;
}
.fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__list.active {
  display: block;
  opacity: 1;
  animation: fadeIn 0.3s ease-in 0s forwards;
}
.fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__list .fs-c-sortItems__list__item a, .fs-c-sortItems__list__item.is-active span {
  display: block;
  padding: 7px 13px;
  line-height: 1.8;
  transition: 0.3s ease;
  text-decoration: none;
}
.fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__list .fs-c-sortItems__list__item a:hover {
  background-color: #f8f8f8;
}
.fs-c-sortItems__list__item.is-active {
  background-color: #fff;
  color: #1a1a1a;
}
.fs-c-productList .fs-c-productList__controller:last-child .fs-c-sortItems {
  display: none !important;
}
@media screen and (min-width: 768px) {
  .fs-c-productList__controller:not(:first-of-type) .fs-c-listControl {
    justify-content: space-between;
  }
}
@media screen and (max-width: 1024px) {
  /*並べ替えページャー*/
  .fs-c-sortItems {
    border: none !important;
  }
  .fs-c-sortItems__list {
    border-left: none;
  }
}
@media screen and (max-width: 640px) {
  /*並べ替えページャー*/
  .fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__label {
    width: 100px;
  }
  .fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__label::after {
    width: 5px;
    height: 5px;
  }
  .fs-c-productList__controller .fs-c-sortItems .fs-c-sortItems__list {
    padding: 7px 0;
  }
}





/* 会員登録フォーム */
/* デフォルトリセット */
.fs-body-my-account-password .fs-c-inputInformation__field,
.fs-body-cart-login .fs-c-inputInformation__field,
.fs-body-login .fs-c-inputInformation__field,
.fs-body-newsletter-subscribe .fs-c-inputInformation__field,
.fs-body-forgotPassword .fs-c-inputInformation__field,
.fs-body-merge .fs-c-inputInformation__field,
.fs-body-membershipCardAuth .fs-c-inputInformation__field {
  padding: 0;
  background: none;
}

/* ログインページ（サイズ小） */
@media screen and (min-width: 768px) {
  .fs-body-cart-login .fs-c-inputInformation__field table,
  .fs-body-cart-login .fs-c-inputInformation__field table tbody,
  .fs-body-cart-login .fs-c-inputInformation__field table tbody tr,
  .fs-body-cart-login .fs-c-inputInformation__field table tbody td,
  .fs-body-cart-login .fs-c-inputInformation__field table tbody th,
  .fs-body-login .fs-c-inputInformation__field table,
  .fs-body-login .fs-c-inputInformation__field table tbody,
  .fs-body-login .fs-c-inputInformation__field table tbody tr,
  .fs-body-login .fs-c-inputInformation__field table tbody td,
  .fs-body-login .fs-c-inputInformation__field table tbody th {
    display: block;
  }
  .fs-c-modal__contents .fs-c-inputTable.fs-c-inputTable--inModal,
  .fs-c-modal__contents .fs-c-inputTable.fs-c-inputTable--inModal tbody,
  .fs-c-modal__contents .fs-c-inputTable.fs-c-inputTable--inModal tbody tr,
  .fs-c-modal__contents .fs-c-inputTable.fs-c-inputTable--inModal tbody td,
  .fs-c-modal__contents .fs-c-inputTable.fs-c-inputTable--inModal tbody th {
    display: block;
    width: 100%;
  }
  .fs-c-modal__contents .fs-c-inputTable.fs-c-inputTable--inModal tbody tr + tr {
    margin-top: 20px;
  }
  .fs-c-modal__contents .fs-c-inputTable.fs-c-inputTable--inModal tbody th {
    margin-bottom: 10px;
  }
  .fs-c-modal__contents .fs-c-inputTable.fs-c-inputTable--inModal tbody th label {
    display: flex;
    align-items: center;
    gap: 0 10px;
  }
  .fs-body-cart-login .fs-c-inputInformation__field table tbody td,
  .fs-body-cart-login .fs-c-inputInformation__field table tbody th,
  .fs-body-login .fs-c-inputInformation__field table tbody td,
  .fs-body-login .fs-c-inputInformation__field table tbody th {
    padding: 0;
    border: none;
  }
  .fs-body-cart-login .fs-c-inputInformation__field table tbody th,
  .fs-body-login .fs-c-inputInformation__field table tbody th {
    width: 100%;
    padding-top: 15px;
    padding-bottom: 15px;
  }
  /* メルマガ */
  .fs-body-newsletter-subscribe .fs-c-inputInformation__field {
    margin-bottom: 50px;
  }
  .fs-body-newsletter-subscribe .fs-c-inputInformation__field fieldset {
    margin-bottom: 70px;
  }
}

/* カスタマイズ */
.fs-c-inputInformation .fs-c-inputInformation__field {
  max-width: 1200px;
}
[type=hidden], [type=text], [type=search], [type=tel], [type=url], [type=email], [type=password], [type=datetime], [type=date], [type=month], [type=week], [type=time], [type=datetime-local], [type=number], select, textarea {
  background: #fff;
  border: 1px solid #fff;
}
.fs-body-register .fs-c-inputGroup,
.fs-body-register select,
.fs-body-register [type=password],
.fs-body-register [type=tel],
.fs-body-register [type=text] {
  border-color: #ddd;
  background-color: #ddd;
}
.fs-body-register .fs-c-button--particular.fs-c-button--displayPassword,
.fs-body-register .fs-c-dropdown::after {
  background-color: #ddd;
}
.fs-c-inputTable {
  border-bottom: 1px solid #F0EFF0;
}
.fs-c-inputGroup {
  border-color: #fff;
}
.fs-c-button--particular.fs-c-button--displayPassword {
  background: #fff;
}
.fs-c-button--particular.fs-c-button--displayPassword::before {
  color: #232323;
}
.fs-c-dropdown__menu {
  background: #fff;
  font-weight: 400;
}
.fs-c-dropdown::after {
  background-color: #fff;
}
.fs-c-inputField__explanation {
  line-height: 2;
  margin-top: 1em;
}
.fs-c-inputInformation__message {
  text-align: center;
  line-height: 2;
}
.fs-c-privacyPolicyAgreeField.fs-c-additionalCheckField,
.fs-c-memberPolicyAgreeField.fs-c-additionalCheckField {
  margin-bottom: 1em;
}
.fs-c-inputInformation__field {
  background: none;
}
.fs-c-inputInformation__field a {
  text-decoration: underline;
  color: #2A629A;
}
/* パスワードをお忘れの方 */
.fs-c-inputInformation__link.fs-c-textLinkContainer {
  text-align: center;
}
.fs-c-inputInformation__link.fs-c-textLinkContainer a {
  color: #1A1A1A;
}
.fs-c-inputInformation__link.fs-c-textLinkContainer a::before {
  content: ">";
}
/* サブメッセージ */
.fs-c-newUsers__message.fs-c-subSection__message {
  letter-spacing: .08em;
}
.fs-p-emailDomainNotice {
  margin-top: 20px;
}
.fs-c-agreementConfirmation__message,
.fs-c-agreementConfirmation__addon__message {
  margin-bottom: 1em;
}
.fs-c-agreementConfirmation {
  padding: 10px 0;
  margin: 10px 0;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  [type=hidden], [type=text], [type=search], [type=tel], [type=url], [type=email], [type=password], [type=datetime], [type=date], [type=month], [type=week], [type=time], [type=datetime-local], [type=number], select, textarea {
    padding: 15px 20px;
    font-size: 15px;
  }
  .fs-c-dropdown__menu {
    padding: 15px 20px;
    padding-right: 75px;
    font-size: 15px;
  }
  .fs-c-inputTable > tbody {
    display: table-row-group;
  }
  .fs-c-inputTable > tbody > tr {
    display: table-row;
  }
  .fs-c-inputTable__headerCell,
  .fs-c-inputTable__dataCell {
    padding: 30px 0;
    font-size: 15px;
    border-top: 1px solid #F0EFF0;
  }
  .fs-c-inputTable__headerCell {
    width: 30%;
  }
  .fs-c-inputInformation__button {
    margin-top: 50px;
  }
  .fs-c-privacyPolicyAgreeField.fs-c-additionalCheckField,
  .fs-c-memberPolicyAgreeField.fs-c-additionalCheckField {
    margin-left: 40%;
    font-size: 15px;
  }
  .fs-c-modal--inquiry .fs-c-privacyPolicyAgreeField.fs-c-additionalCheckField {
    margin-left: 0;
    margin-top: 20px;
    text-align: center;
  }
  .fs-c-radioGroup .fs-c-radio:not(:last-child), .fs-c-checkboxGroup .fs-c-radio:not(:last-child) {
    margin-right: 30px;
  }
  .fs-c-inputInformation__message {
    font-size: 15px;
  }
  .fs-c-radio__radioMark {
    margin-right: 10px;
  }
  .fs-c-checkbox__checkMark {
    margin-right: 20px;
  }
  /* パスワードをお忘れの方 */
  .fs-c-inputInformation__link.fs-c-textLinkContainer {
    font-size: 14px;
    margin-top: 30px;
  }
  /* サブメッセージ */
  .fs-c-newUsers__message.fs-c-subSection__message {
    font-size: 15px;
    margin-bottom: 40px;
  }
  .fs-p-emailDomainNotice {
    margin-top: 40px;
  }
  .fs-c-agreementConfirmation__message {
    padding: 10px;
  }
}
@media screen and (max-width: 767px) {
  [type=hidden], [type=text], [type=search], [type=tel], [type=url], [type=email], [type=password], [type=datetime], [type=date], [type=month], [type=week], [type=time], [type=datetime-local], [type=number], select, textarea {
    padding: 10px;
    font-size: 16px;
  }
  .fs-c-dropdown__menu {
    padding: 10px;
    padding-right: 45px;
  }
  .fs-c-inputTable > tbody > tr {
    border-top: 1px solid #F0EFF0;
    padding: 20px 0;
  }
  .fs-c-inputTable > tbody > tr + tr {
    margin-top: 0;
  }
  .fs-c-inputTable__headerCell {
    margin-bottom: 1em;
    font-size: 12px
  }
  .fs-c-checkout-destination__tel,
  .fs-c-checkout-destination__address,
  .fs-c-checkout-customerInfo__tel,
  .fs-c-checkout-customerInfo__email,
  .fs-c-inputInformation__field--display .fs-c-inputTable__headerCell,
  .fs-c-inputTable__dataCell,
  .fs-c-requiredMark::before {
    font-size: 12px
  }
  .fs-c-modal__inner .fs-c-inputTable__headerCell {
    margin-bottom: .5em;
  }
  .fs-c-radio__radioMark {
    margin-right: 5px;
  }
  .fs-c-checkbox__checkMark {
    margin-right: 10px;
  }
  .fs-c-inputField__explanation {
    font-size: 12px;
  }
  .fs-c-modal .fs-c-inputField__explanation {
    font-size: 11px;
  }
  .fs-c-noResultMessage__title,
  .fs-c-inputInformation__message p {
    font-size: 11px;
  }
  .fs-c-agreementConfirmation__addon {
    margin-left: 0;
  }
  
}

/* 必須マーク */
.fs-c-requiredMark {
  border: 1px solid #000;
  background: #000;
  font-size: 0;
  width: auto;
  height: auto;
  padding: 0 15px;
  line-height: 1;
}
.fs-c-requiredMark::before {
  content: "必須";
  font-size: 14px;
  line-height: 26px;
  color: #fff;
  font-weight: 700;
  letter-spacing: .05em;
}
.fs-c-inputTable__headerCell {
  position: relative;
}
/*
モーダルフォーム
バリエーション・オプション
*/
.fs-c-productOption__name .fs-c-productOption__label {
  font-weight: 400;
}
.fs-c-modal__contents .fs-c-inputTable.fs-c-inputTable--inModal .fs-c-requiredMark,
.fs-c-productOption__name .fs-c-productOption__label .fs-c-requiredMark {
  position: relative;
  top: 0;
  right: 0;
  transform: translate(0);
}
.fs-c-productOption__name .fs-c-requiredMark {
  display: none;
}
@media screen and (min-width: 768px) {
  .fs-c-requiredMark {
    position: absolute;
    top: 50%;
    right: 60px;
    transform: translate(0,-50%);
  }
  /* オプション */
  .fs-c-productOption__name .fs-c-productOption__label {
    display: flex;
    align-items: center;
    gap: 0 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1400px) {
  .fs-c-requiredMark {
    right: 10px;
  }
  .fs-c-inputTable__headerCell {
    padding-right: 80px;
  }
}
@media screen and (max-width: 767px) {
  .fs-c-requiredMark {
    margin-left: 20px;
    vertical-align: middle;
  }
  .fs-c-requiredMark::before {
    font-size: 11px;
    line-height: 20px;
  }
}

/* マイページ */
.fs-c-accountService__page:not(.fs-c-accountService__page--accountDelete) .fs-c-accountService__pageLink {
  box-shadow: none;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 5px;
  color: #222;
  font-weight: 600;
  font-size: 12px;
}
.fs-c-accountService__page:not(.fs-c-accountService__page--accountDelete) .fs-c-accountService__pageLink__label::before {
  color: #0A2C4F;
}
.fs-body-my-top .fs-p-accountInfo {
  padding: 15px;
}
.fs-body-my-top .fs-p-accountInfo .fs-p-accountInfo__header {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .fs-c-accountService__page {
    flex-basis: 150px;
    height: 150px;
  }
}
@media screen and (max-width: 767px) {
  .fs-c-accountService {
    justify-content: center;
    gap: 0 10px;
  }
}

.fs-c-productNotice--outOfStock,
.fs-c-productNotice--subscriptionOutOfStock {
  padding: 20px 10px;
  font-weight: 700;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .fs-c-productNotice--outOfStock,
  .fs-c-productNotice--subscriptionOutOfStock {
    font-size: 12px;
  }
}

/* カート */
.fs-c-cartTableContainer {
  border: none;
  padding: 0;
}
.fs-c-listedProductName a,
.fs-c-listedProductName a:visited {
  color: #2A629A;
}
/* 削除ボタン */
.fs-c-button--cancel--cart.fs-c-button--plain {
  background: #B5B5B5;
  min-width: 50px;
  letter-spacing: 0.14em;
  padding: 4px;
  font-size: 12px;
  color: #fff;
  margin: 0 auto;
  text-decoration: none;
}
.fs-c-quantity__select.fs-system-quantity-list {
  padding: 5px 10px;
}
.fs-c-checkout-preview__title {
  font-weight: 700;
}
.fs-c-checkout-heading {
  padding: 1em;
  background: #0A2C4F;
}
.fs-c-cartTable__message {
  font-size: 12px;
  padding: 3px 5px;
}
@media screen and (min-width: 768px) {
  .fs-c-quantity__select.fs-system-quantity-list {
    padding: 5px 15px;
  }
  .fs-c-button--cancel--cart.fs-c-button--plain {
    width: 70px;
  }
  .fs-c-listedProductName,
  .fs-c-cartTable__salesPeriod {
    margin-bottom: 8px;
  }
  .fs-c-continueShopping {
    margin-top: 50px;
  }
  .fs-c-checkout-preview__title {
    font-size: 15px;
    padding-bottom: 1em;
    margin-bottom: 1em;
  }
  .fs-c-cartTable__productInfo {
    font-size: 18px;
  }
}


.fs-c-listedProductName a,
.fs-c-listedProductName a:visited {
  color: #000;
  font-size: 18px;
}
.fs-body-my-wishlist .fs-c-productName__variation,
.fs-body-my-wishlist .fs-c-productListItem__salesPeriod {
  display: none;
}
.fs-p-announcement__title {
  color: #000;
}
.fs-c-list > li,
.fs-c-localNavigation__list > li {
  line-height: 1.8;
}
.fs-c-listedProductName__variation,
.fs-c-listedProductName__selection,
.fs-c-cartTable__salesPeriod {
  font-size: 12px;
}
.fs-c-checkout-heading,
.fs-c-cartTable__message {
  background: #000;
}
@media screen and (min-width: 768px) {
  .fs-c-listedProductName a,
  .fs-c-listedProductName a:visited {
    font-size: 20px;
  }
  .fs-c-listedProductName__variation,
  .fs-c-listedProductName__selection,
  .fs-c-cartTable__salesPeriod {
    font-size: 14px;
  }
}



/* タイトル */
.fs-c-heading--page {
  padding: 0;
  font-size: 24px;
  border: none;
  color: #000;
}
.fs-c-subSection__title,
.fs-c-linkedServiceLogin__title {
  border-bottom: 1px solid #000;
  color: #000;
  font-size: 16px;
  padding-bottom: 1em;
}
@media screen and (min-width: 768px) {
  .fs-c-heading--page {
    font-size: 40px;
  }
  .fs-c-subSection__title,
  .fs-c-linkedServiceLogin__title {
    font-size: 18px;
  }
}


/* 特定商 */
.about-term {
  position: relative;
  padding-bottom: 5px;
}
.about-term .dl {
  padding: 20px 0;
  position: relative;
}
.about-term .dl p {
  margin: 0;
}
.about-term::after,
.about-term .dl::before {
  content: "";
  background-image : linear-gradient(to right, #000 1px, transparent 1px);
  background-size: 3px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
}
.about-term::after {
  top: auto;
  bottom: 0;
}
.about-term .dl p,
.about-term .dl li {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  text-indent: -1em;
  margin-left: 1em;
}
.about-term .dl p.no-indent {
  margin-left: 0;
  text-indent: 0;
}
.about-term .dl ul:not(.small) li::before {
  content: "・";
}
.about-term .dl .dt p {
  font-weight: 700;
}
.about-term .dl a {
  text-decoration: underline;
}
.about-term .dl a:hover {
  opacity: .7;
}
.about-term .dl .small {
  margin-top: 10px;
}
.about-term .dl p.small,
.about-term .dl .small li {
  font-size: 12px;
  text-indent: -1em;
  margin-left: 1em;
}
@media screen and (min-width: 768px){
  .about-term .dl {
    padding: 30px 0;
    display: grid;
    grid-template-columns: 250px 1fr;
  }
  .about-term::after,
  .about-term .dl::before {
    background-size: 5px 5px;
  }
  .about-term .dl .dt {
    padding-right: 20px;
  }
  .about-term .dl p,
  .about-term .dl li {
    font-size: 16px;
    line-height: 2;
  }
}
@media screen and (max-width: 767px){
  .about-term .dl .dt {
    margin-bottom: 10px;
  }
  .fs-body-about-terms .about-term,
  .fs-body-about-privacyPolicy .privacy-term {
    margin-top: 80px;
  }
}

/* 個人情報 */
.privacy-term .dl {
  padding: 40px 0;
  position: relative;
}
.privacy-term .dl p {
  margin: 0;
}
.privacy-term .dl::before {
  content: "";
  background-image : linear-gradient(to right, #000 1px, transparent 1px);
  background-size: 3px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
}
.privacy-term .dl .dt p {
  font-weight: 700;
  font-size: 16px;
  margin-top: 0;
}
.privacy-term .dl p,
.privacy-term .dl ul {
  margin-top: 20px;
}
.privacy-term-in > p,
.privacy-term .dl p,
.privacy-term .dl li {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
}
.privacy-term-in > p {
  margin-bottom: 40px;
}
.privacy-term .dl li {
  text-indent: -1em;
  margin-left: 1em;
}
.privacy-term .dl li::before {
  content: "・";
}
@media screen and (min-width: 768px){
  .privacy-term .dl {
    padding: 80px 0;
  }
  .privacy-term .dl .dt p {
    font-size: 20px;
  }
  .privacy-term-in > p,
  .privacy-term .dl p,
  .privacy-term .dl li {
    font-size: 15px;
    line-height: 2;
  }
  .privacy-term-in > p {
    margin-bottom: 120px;
  }
}

/* 会員登録 */
.member-message {
  text-align: left;
  margin-bottom: 60px;
}
.member-message p {
  margin: 0;
  font-size: 14px;
  line-height: 1.71;
}
.member-header {
  margin-bottom: 60px;
}
.member-header p {
  margin: 5px 0 0;
}
.member-header p.under {
  margin-top: 10px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
}
.member-header p.tx1 {
  font-weight: 500;
  font-size: 13px;
}
.member-header p.tx2 {
  font-weight: 700;
  font-size: 18px;
}
.member-header-item-in {
  background: #fff;
  text-align: center;
  padding: 20px 10px;
}
.member-header-item-in img {
  display: block;
  margin: 0 auto 15px;
  width: 48px;
  height: 48px;
  object-fit: contain;
}
@media screen and (min-width: 768px){
  .member-header {
    margin-bottom: 80px;
  }
  .fs-body-register .fs-c-inputInformation__message {
    display: block;
    margin-top: 80px;
    margin-bottom: 0;
  }
  .member-message {
    margin-bottom: 80px;
  }
  .member-header {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 20px 10px;
  }
  .member-header p.tx1 {
    font-size: 14px;
  }
  .member-header p.tx2 {
    font-size: 20px;
  }
  .member-header-item-in img {
    width: 64px;
    height: 64px;
  }
}
@media screen and (max-width: 767px){
  .member-header-item + .member-header-item {
    margin-top: 20px;
  }
}

.fs-c-accountService__page.fs-c-accountService__page--accountDelete {
  flex-basis: 100%;
  height: auto;
}
.logout_btn a,
.fs-c-accountService__page.fs-c-accountService__page--accountDelete a {
  text-decoration: underline;
  margin-top: 20px;
  display: inline-block;
}


/* 扇屋について */
.about-page .category-fv {
  background-image: url("../image/about/about-fv-sp.jpg");
  position: relative;
}
.about-page .category-fv .fs-c-breadcrumb {
  left: 0;
  margin-bottom: 0 !important;
  position: absolute;
  z-index: 1;
}
.history {
  margin-top: 120px;
}
.shop-page .tl,
.company-page .tl,
.imperial .tl,
.history .tl {
  writing-mode: vertical-rl;
  font-weight: 600;
  font-size: 24px;
  margin: 0 auto 40px;
}
.imperial .tl {
  position: relative;
  margin-bottom: 0;
}
.history-item .image img {
  display: block;
}
.pride .tl,
.imperial-item .ttl,
.history-item .tx p.sub {
  font-weight: 600;
}
.imperial {
  background: url("../image/about/about-bg2.jpg") center center;
  margin-top: 160px;
  padding-bottom: 120px;
}
.imperial-item + .imperial-item {
  margin-top: 40px;
}
.pride {
  padding-bottom: 120px;
}
.pride .image img {
  display: block;
  width: 100%;
}
.company-page .about-term {
  max-width: 1234px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px){
  .company-page {
    margin-bottom: 200px;
  }
  .company-page,
  .about-page {
    margin-top: 120px;
  }
  .about-page .category-fv {
    height: 1117px;
    background-image: url("../image/about/about-fv.jpg");
  }
  .about-page .category-fv .category-name {
    font-size: 48px;
    padding-top: 45px;
    background-size: auto 26px;
  }
}
@media screen and (min-width: 1201px){
  .history {
    margin-top: 200px;
    background: url("../image/about/about-bg.png") 0 center no-repeat;
  }
  .history .tl {
    display: none;
  }
  .history-item {
    display: flex;
    gap: 0 145px;
  }
  .history-item:nth-of-type(even) {
    flex-direction: row-reverse;
  }
  .history-item .image {
    width: 50%;
  }
  .history-item .tx-wrap {
    flex: 1;
  }
  .history-item .tx-wrap-in {
    display: grid;
    padding-top: 80px;
    height: 100%;
  }
  .history-item .tx-wrap-in .tx {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
  }
  .history-item:nth-of-type(odd) .tx-wrap {
    padding-right: 120px;
  }
  .history-item:nth-of-type(even) .tx-wrap {
    padding-left: 120px;
  }
  .history-item .image img {
    width: 100%;
    max-height: 1100px;
    object-fit: cover;
  }
  .history-item .ttl {
    writing-mode: vertical-rl;
    font-weight: 600;
    font-size: 40px;
    margin: 0;
  }
  
  .history-item .tx p {
    writing-mode: vertical-rl;
    font-size: 20px;
    line-height: 2;
  }
  .history-item .tx p.sub {
    font-weight: 500;
    font-size: 34px;
    margin-left: 30px;
  }
  .about-page .category-fv .fs-c-breadcrumb {
    top: 20px;
  }
  .page-template-default .fs-c-breadcrumb,
  .page-template .fs-c-breadcrumb,
  .fs-body-about-privacyPolicy .fs-c-breadcrumb,
  .fs-body-about-terms .fs-c-breadcrumb {
    margin-bottom: 160px;
  }
  .imperial {
    margin-top: 240px;
  }
  .imperial .tl {
    font-size: 44px;
  }
  .imperial-wrap {
    display: flex;
    flex-direction: row-reverse;
    gap: 0 120px;
    max-width: 1234px;
    margin: 0 auto;
  }
  .imperial-wrap .image,
  .imperial-wrap .tx {
    flex: 1;
  }
  .imperial-item + .imperial-item {
    margin-top: 60px;
  }
  .imperial-item .ttl {
    margin-top: 0;
    font-size: 24px;
  }
  .imperial-item p {
    font-size: 16px;
    line-height: 2;
  }
  .pride {
    padding-bottom: 180px;
  }
  .pride-in {
    position: relative;
  }
  .pride-tx {
    background: #eee;
    display: flex;
    flex-direction: row-reverse;
    max-width: 750px;
    max-height: 370px;
    transform: translate(0,-40px);
    padding: 40px;
    gap: 0 50px;
  }
  .pride-tx .pride-cont {
    display: flex;
    flex: 1;
    flex-direction: row-reverse;
    gap: 0 30px;
  }
  .pride-tx .tl,
  .pride-tx .pride-cont p {
    writing-mode: vertical-rl;
    margin: 0;
    font-size: 16px;
    line-height: 2;
  }
  .pride-tx .tl {
    font-size: 24px;
    line-height: 1.8;
  }
}
@media screen and (max-width: 1200px){
  .about-page .category-fv .fs-c-breadcrumb {
    bottom: 20px;
  }
  .history {
    padding-left: 120px;
    padding-right: 120px;
  }
  .history-item .ttl {
    display: none;
  }
  .imperial-item p,
  .history-item .tx p {
    margin-bottom: 0;
    margin-top: 14px;
  }
  .history-item .tx p br {
    display: none;
  }
  .pride .tl,
  .imperial-item .ttl,
  .history-item .tx p.sub {
    font-size: 20px;
  }
  .history-item + .history-item {
    margin-top: 40px;
  }
  .pride p {
    margin-bottom: 0;
    margin-top: 2em;
  }
}
@media screen and (max-width: 767px){
  .history {
    padding-left: 60px;
    padding-right: 60px;
  }
  .pride .image {
    margin-bottom: 40px;
  }
}

/* お買い物ガイド */
.guide-sub li {
  font-size: 16px;
  margin-bottom: 20px;
  opacity: .5;
}
.guide-sub li:hover,
.guide-sub li.active {
  opacity: 1;
}
.guide-sub li a {
  display: flex;
  align-items: center;
  color: #000;
  gap: 0 1em;
}
.guide-sub li a::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 3px;
}
.guide-sub li.active a::before {
  background: #000;
}
.guide-content {
  flex: 1;
}
.guide-select ul,
.guide-select li.active {
  display: none;
}
.guide-select li a {
  display: block;
  border-bottom: 1px dotted #000;
  font-weight: 600;
  padding: .8em 0;
  font-size: 14px;
}
.guide-select .page-title {
  cursor: pointer;
  margin: 0;
  padding: 15px 30px 15px 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  background: url("../image/arrow.svg") right 10px center no-repeat;
  font-weight: 600;
  font-size: 16px;
}
.guide-tl {
  font-weight: 600;
  margin-top: 60px;
  margin-bottom: 40px;
  font-size: 24px;
}
.noshi .ttl {
  font-weight: 600;
  margin: 0;
  font-size: 20px;
  margin-bottom: 1em;
}
.noshi-item .sub {
  font-weight: 600;
  margin: 0 0 20px;
  font-size: 20px;
}
.noshi-item ul {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 5px;
}
@media screen and (min-width: 1201px){
  body:not(.fs-body-category):not(.fs-body-product) .fs-l-main.guide-page {
    padding-right: 240px;
    max-width: 1246px;
  }
  .guide-content {
    display: flex;
    gap: 0 80px;
    justify-content: space-between;
  }
  .guide-main {
    max-width: 850px;
    border-right: 1px solid #ccc;
    padding-right: 80px;
    box-sizing: content-box;
    flex: 1;
  }
  .guide-select {
    display: none;
  }
  .guide-tl {
    margin-top: 120px;
    margin-bottom: 120px;
    font-size: 40px;
  }
  .noshi p {
    font-size: 16px;
    line-height: 2;
  }
  .noshi-item {
    margin-top: 120px;
  }
  .noshi-item .sub {
    font-size: 24px;
  }
  .noshi-item ul {
    grid-template-columns: repeat(3,1fr);
    gap: 10px;
  }
}
@media screen and (min-width: 1601px){
  body:not(.fs-body-category):not(.fs-body-product) .fs-l-main.guide-page {
    padding-right: 120px;
    max-width: 1366px;
  }
  .guide-main {
    padding-right: 140px;
  }
}
@media screen and (max-width: 1200px){
  .guide-sub {
    display: none;
  }
  .noshi-item {
    margin-top: 60px;
  }
  .noshi-item li {
    margin-top: 10px;
  }
}

.guide-item a:not(.fs-c-button--standard) {
  text-decoration: underline;
}
.guide-item ul,
.guide-item p {
  font-size: 14px;
  line-height: 1.8;
  margin: 15px 0;
}
.guide-item .image {
  margin: 15px 0;
}
.guide-item .bold {
  font-weight: 700;
}
.guide-item .under {
  font-size: 12px;
  font-weight: 400;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.guide-item .tl,
.guide-item .ttl {
  font-weight: 600;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 20px;
}
.guide-item .tl {
  font-size: 20px;
}
.guide-item .ttl {
  font-size: 18px;
  margin-top: 20px;
}
.delivery-table {
  border-top: 1px solid #ccc;
}
.delivery-table th,
.delivery-table td {
  text-align: left;
  font-size: 14px;
}
.delivery-table th {
  font-weight: 600;
}
.delivery-table td {
  font-weight: 400;
}
.guide-item + .guide-item {
  margin-top: 80px;
}
.delivery-time ul {
  display: grid;
  text-align: center;
}
.guide-item .member-header p {
  margin-bottom: 0;
  margin-top: 5px;
  line-height: 1.2;
}
.guide-item .member-header .under {
  line-height: 1.6;
  font-size: 14px;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.group-inner {
  background: #fff;
  padding: 15px;
  border: 1px solid #ccc;
  margin: 20px 0;
}
@media screen and (min-width: 768px){
  .guide-item + .guide-item {
    margin-top: 120px;
  }
  .guide-item p,
  .guide-item ul {
    font-size: 16px;
    margin: 30px 0;
  }
  .guide-item .image {
    margin: 30px 0;
  }
  .guide-item .tl {
    font-size: 24px;
  }
  .guide-item .ttl {
    margin-top: 40px;
  }
  .delivery-table table {
    width: 100%;
  }
  .delivery-table th,
  .delivery-table td {
    border-bottom: 1px solid #ccc;
    padding: 15px 0;
  }
  .delivery-table th {
    padding-right: 2em;
  }
  .delivery-table td.price {
    text-align: right;
    padding-left: 2em;
  }
  .guide-item .under {
    font-size: 13px;
    margin-top: 20px;
  }
  .delivery-time ul {
    grid-template-columns: repeat(5,1fr);
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
  }
  .delivery-time ul li {
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    padding: 15px 0;
    font-size: 14px;
  }
  .group-inner {
    margin: 40px 0;
    padding: 40px;
  }
  .guide-item .member-header .under {
    margin-top: 10px;
  }
  .guide-item .credit img,
  .guide-item .banner-pay img {
    max-height: 38px;
    width: auto;
  }
}
@media screen and (max-width: 767px){
  .delivery-table,
  .delivery-table * {
    display: block;
  }
  .delivery-table tr {
    border-bottom: 1px solid #ccc;
    padding: 15px 0;
  }
  .delivery-time ul {
    grid-template-columns: repeat(2,1fr);
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
  }
  .delivery-time ul li {
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    padding: 15px 0;
  }
}

/* お支払い方法について */
.amazon-pay img {
  width: 164px;
}

.cash-on-deli {
  margin: 10px 0;
}
.cash-on-deli dl {
  display: flex;
  align-items: center;
  gap: 0 20px;
  margin: 5px 0;
}
.cash-on-deli dl dt,
.cash-on-deli dl dd {
  padding: 10px 0;
}
.cash-on-deli dl dt {
  border: 1px solid #ccc;
  width: 100px;
  text-align: center;
}
.cash-on-deli dl dd {
  font-weight: 500;
  flex: 1;
  margin-left: 0;
}

.guide-group {
  padding: 20px 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
}
.return .guide-group {
}
.guide-group + .guide-group {
  border-top: 1px solid #ccc;
}
.guide-item p.guide-group-tl {
  margin-top: 0;
  font-weight: 600;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 15px;
  line-height: 1.4;
}
.guide-item .guide-group *:first-child {
  margin-top: 0;
}
.guide-item .guide-group *:last-child {
  margin-bottom: 0;
}
.guide-item .guide-group a {
  text-decoration: underline;
}
@media screen and (min-width: 768px){
  .guide-group {
    padding: 40px 0;
  }
  .guide-item .guide-group p {
    font-size: 14px;
  }
  .guide-item p.guide-group-tl {
    font-size: 16px;
  }
  .guide-item .guide-group p {
    margin: 15px 0;
  }  
}


.mail-item {
  background: #fff;
  padding: 20px 10px;
}
.mail-item p {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1.4;
  font-size: 13px;
}
.mail-item p.bold {
  font-size: 14px;
  margin-bottom: 10px;
}
.mail-item + .mail-item {
  margin-top: 5px;
}
.mail-box {
  border: 1px dotted #000;
  text-align: center;
  padding: 15px 10px;
}
.mail-box p {
  margin: 0;
  font-size: 16px;
}
.mail-box p strong {
  color: #f00;
}
@media screen and (min-width: 768px){
  .mail-item {
    align-items: center;
    display: flex;
    padding: 20px 40px;
    gap: 0 20px;
  }
  .mail-item p {
    font-size: 14xp;
  }
  .mail-item p.bold {
    font-size: 16px;
  }
  .mail-item p.bold br {
    display: none;
  }
  .mail-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 20px;
    max-width: 500px;
  }
  .guide-item .guide-group .mail-box p {
    margin: 0;
  }
  .mail-box .arw {
    position: relative;
    transform: rotate(-90deg);
  }
}
@media screen and (max-width: 767px){
  .mail-item {
    text-align: center;
  }
}

.number-list {
  border-top: 1px solid #ccc;
}
.number-list .list-item {
  border-bottom: 1px solid #ccc;
  display: flex;
  align-items: center;
  gap: 0 10px;
  padding: 15px 0;
}
.number-list .list-item p {
  margin: 0;
  line-height: 1.4;
}
.number-list .list-item .tx {
  flex: 1;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
}
.number-list .list-item .tx strong {
  font-weight: 700;
}
.number-list .list-item .num {
  width: 2em;
}
.number-list .list-item .num span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  border: 1px solid #000;
  border-radius: 50%;
}
@media screen and (min-width: 768px){
  .number-list .list-item {
    gap: 0 20px;
    padding: 20px 0;
  }
  .guide-item .tl br {
    display: none;
  }
}


/* お問い合わせ */
.contact-item .index {
  margin-bottom: 10px;
}
.contact-item .index p {
  font-weight: 700;
  font-size: 15px;
  margin: 0;
}
.contact-item .index p .must {
  color: #f00;
  display: inline-block;
  margin-left: 10px;
}
.contact-item .wpcf7-list-item {
  margin: 5px 0;
  display: block;
}
.contact-item + .contact-item  {
  margin-top: 30px;
}
.contact-item input,
.contact-item textarea {
  background: #ddd;
  font-size: 16px;
  font-weight: 400;
  border: none;
}
.contact-item input[type="radio"] {
  accent-color: #000;
  margin-right: 5px;
}
.fs-c-radio__radio:checked:enabled + label > .fs-c-radio__radioMark {
  border-color: #000;
  border-width: 1px;
}
.fs-c-radio__radio:checked:enabled + label > .fs-c-radio__radioMark::before {
  background-color: #000;
  width: 10px;
  height: 10px;
}
.fs-c-checkbox__checkbox:checked + label > .fs-c-checkbox__checkMark {
  background-color: #005CC8;
  border-color: #005CC8;
}
.fs-c-inputInformation__field a {
  color: #000;
}
.wpcf7 .contact-item input[type="file"] {
  max-width: 100%;
  width: 100%;
  background: none;
  padding: 0;
  font-size: 13px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
}
.wpcf7 .contact-item input[type="file"]::file-selector-button {
  background: #fff;
  border: none;
  padding: 8px 16px;
  margin-right: 10px;
}
.contact-wrap .guide-group {
  border-top: 1px solid #ccc;
  padding: 30px 0;
  margin: 30px 0 0;
}
.privacy-label {
  text-align: center;
  background: #fff;
  font-weight: 700;
  padding: 1em 1em 1em .5em;
  font-size: 13px;
}
.privacy-label .wpcf7-list-item {
  margin: 0;
}
.submit-btn {
  margin-top: 30px;
}
.submit-btn input {
  padding: 0;
  margin: 0 auto;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  color: #fff;
  max-width: 390px;
  height: 64px;
  border: none;
  outline: none;
}
@media screen and (min-width: 768px){
  .contact-item .index p {
    font-size: 16px;
  }
  .contact-item input,
  .contact-item textarea {
    padding: 20px 30px;
  }
  .guide-item .contact-item .under {
    margin-bottom: 0;
    margin-top: 10px;
  }
  .contact-wrap .guide-group {
    padding: 40px 0;
    margin: 40px 0 0;
  }
  .contact-item .wpcf7-list-item {
    margin: 15px 0;
  }
  .contact-item + .contact-item  {
    margin-top: 40px;
  }
  .privacy-label {
    text-align: left;
    font-size: 16px;
    padding: 20px 40px;
  }
  .wpcf7 .contact-item input[type="file"] {
    font-size: 14px;
  }
  .submit-btn input {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px){
  .contact-item input::placeholder {
    font-size: 12px;
  }
}

/* お知らせ */
.column-block {
  flex: 1;
}
.archive .news-category {
  margin-bottom: 50px;
}
.post-item {
  margin-bottom: 60px;
}
.post-item strong {
  font-weight: 900;
}
.post-item .cat,
.post-list-item .cat,
.news-category ul {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  font-size: 13px;
}
.post-item .cat li a,
.post-list-item .cat li span,
.news-category ul li a {
  display: block;
  padding: 4px 8px;
  background: #fff;
}
.post-list-item {
  padding: 40px 0 30px;
}
.navi-item .date,
.post-item .date,
.post-list-item .date {
  font-weight: 300;
  font-size: 12px;
}
.post-list-item .title {
  font-size: 16px;
}
@media screen and (min-width: 768px){
  .archive .news-category {
    margin-top: 160px;
  }
  .news-category {
    align-items: center;
    display: flex;
    gap: 0 20px;
  }
  .news-category p {
    margin: 0;
  }
}

/* 投稿 */
.post-header {
  display: flex;
  align-items: center;
  gap: 0 10px;
}
.post-title {
  font-size: 24px;
  margin-bottom: 40px;
  line-height: 1.4;
}
.post-item .image {
  margin-bottom: 40px;
}
.post-item .content p {
  margin: 2em 0;
  line-height: 1.71;
}
.post-item .content *:first-child {
  margin-top: 0;
}

.post-item .content h2,
.post-item .content h3,
.post-item .content h4,
.post-item .content h5 {
  font-weight: 700;
  line-height: 1.4;
  margin: 2em 0;
}
.post-item .content h2 {
  border-bottom: 1px solid #000;
  padding-bottom: .5em;
  font-size: 20px;
}
.post-item .content h3 {
  padding: 1em;
  background: #d6d6d6;
  font-size: 16px;
  margin-top: 3.5em;
}
.post-item .content h4 {
  padding: 0 1em;
  border-left: 4px solid #000;
  font-size: 15px;
  margin-top: 3.5em;
}
.post-item .content h5 {
  font-weight: 400;
  font-size: 13px;
  background: #fff;
  padding: 1em;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.post-item .content a {
  text-decoration: underline;
}
.post-item .content a:hover {
  opacity: .5;
}
@media screen and (min-width: 768px){
  .post-header {
    margin-top: 160px;
  }
  .post-title {
    font-size: 40px;
    margin-bottom: 60px;
  }
  .post-item .content p {
    font-size: 1.2857em;;
  }
  .post-list-item a {
    display: flex;
    gap: 0 40px;
  }
  .post-list-item a .image {
    width: 215px;
  }
  .post-list-item a .news-tx {
    flex: 1;
  }
  .post-list-item .title {
    font-size: 20px;
    margin: .8em 0;
  }
  .post-item .content h2 {
    font-size: 32px;
  }
  .post-item .content h3 {
    font-size: 24px;
  }
  .post-item .content h4 {
    font-size: 20px;
  }
  .post-item .content h5 {
    font-size: 15px;
    padding: 2em;
    line-height: 1.86;
  }
}


/* ページャー */
.pager {
  flex: 1;
  padding-top: 60px;
}
.wp-pagenavi {
  align-items: center;
  display: flex;
  justify-content: center;
  gap: 4px;
  flex-wrap: wrap;
  width: 100%;
}
.fs-c-pagination__item,
.wp-pagenavi a,
.wp-pagenavi span {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  width: 28px;
  height: 28px;
  border: 1px solid #eee;
}
.wp-pagenavi span {
  border: 1px solid #000;
}
.fs-c-pagination__item.is-active {
  background: none;
  border: 1px solid #000;
  color: #000;
}
.previouspostslink,
.nextpostslink {
  font-size: 0;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 14px auto;
}
.previouspostslink {
  background-image: url("../image/slider-left.svg");
  margin-right: 10px;
}
.nextpostslink {
  background-image: url("../image/slider-right.svg");
  margin-left: 10px;
}
.page-nav {
  margin: 60px 0;
}
.navi-item p {
  margin: 0;
}
.navi-item p.date {
  margin-bottom: 5px;
}
.navi-item a {
  display: block;
  padding: 20px 0;
}
.navi-item a:hover {
  opacity: .5;
}
.navi-item .title {
  font-weight: 600;
  font-size: 16px;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media screen and (min-width: 768px){
  .pager {
    padding-top: 80px;
  }
  .pager .fs-c-button--standard {
    margin: 0 auto;
    font-size: 18px;
  }
  .page-nav {
    margin-top: 80px;
    margin-bottom: 40px;
    display: flex;
    padding: 40px 0;
    gap: 0 100px;
  }
  .page-nav .navi-item {
    flex: 1;
    max-width: 44%;
  }
  .navi-item .title {
    font-size: 18px;
  }
  .navi-item p.date {
    margin-bottom: 10px;
  }
  .page-nav .navi-item.navi-prev {
    background: url("../image/slider-left.svg") 0 center no-repeat;
    padding-left: 50px;
    margin-right: auto;
  }
  .page-nav .navi-item.navi-next {
    text-align: right;
    background: url("../image/slider-right.svg") right center no-repeat;
    padding-right: 50px;
    margin-left: auto;
  }
  .page-nav .bar {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background: #ccc;
    height: 40px;
    width: 1px;
  }
}
@media screen and (max-width: 767px){
  .navi-item a {
    background: url("../image/slider-right.svg") right center no-repeat;
    background-size: 14px auto;
    padding-right: 30px;
  }
  .navi-item + .navi-item {
    border-top: 1px solid #ccc;
  }
}

.shop-page .about-term .dl .dd p,
.company-page .about-term .dl .dd p {
  text-indent: 0;
  margin-left: 0;
}
.shop-page .about-term .dl .dd p + p,
.company-page .about-term .dl .dd p + p {
  margin-top: 1.5em;
}
.shop-page .tl:not(:first-child),
.company-page .tl:not(:first-child) {
  margin-top: 80px;
}
@media screen and (min-width: 768px){
  .shop-page .category-fv,
  .company-page .category-fv {
    width: calc( 100% - 120px );
    background-image: url("../image/about/company-bg.jpg");
    margin-bottom: 20px;
    height: 640px;
  }
  .shop-page .category-fv .category-name,
  .company-page .category-fv .category-name {
    font-size: 40px;
  }
  .shop-page .category-fv .category-name {
    color: #fff;
    background-image: url("../image/name-icon-w.svg");
  }
  .shop-page .category-fv {
    background-image: url("../image/about/shop-bg.jpg");
  }
  .shop-page .fv-image,
  .company-page .fv-image {
    display: none;
  }
  .shop-page .tl,
  .company-page .tl {
    font-size: 30px;
  }
  .company-page .tl:not(:first-child) {
    margin-top: 160px;
  }
  .shop-image {
    margin-top: 80px;
    padding-top: 80px;
  }
  .company-info {
    margin-top: 120px;
  }
}
@media screen and (max-width: 767px){
  .shop-page .category-fv,
  .company-page .category-fv {
    height: auto;
    background: none;
  }
  .shop-page .category-fv .category-name,
  .company-page .category-fv .category-name {
    margin: 50px auto 60px;
    font-size: 24px;
    background-size: auto 15px;
    padding: 30px 15px 0;
  }
  .shop-page .fv-image,
  .company-page .fv-image {
    width: calc( 100% - 60px );
    margin-bottom: 100px;
  }
  .shop-page .fv-image img,
  .company-page .fv-image img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    height: auto;
  }
}

.shop-page iframe {
  width: 100%;
  height: 360px;
  /*filter: grayscale(100%);*/
}
.shop-page .map {
  margin-bottom: 30px;
}
.shop-page .about-term .dl {
  padding-top: 20px;
  padding-bottom: 15px;
}
.shop-item .ttl {
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 10px;
  margin-top: 20px;
}
.shop-wrap {
  max-width: 980px;
  margin: 0 auto;
}
@media screen and (min-width: 1201px){
  .shop-wrap {
    margin-bottom: 100px;
  }
  .shop-page .about-term {
    display: none;
  }
  .shop-page .map {
    margin-bottom: 40px;
  }
  .shop-page iframe {
    height: 450px;
  }
  .shop-info {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .shop-wrap .logo {
    mix-blend-mode: difference;
  }
  .shop-add span {
    text-combine-upright: all;
  }
  .shop-add p,
  .shop-add dl {
    margin: 0 15px;
  }
  .shop-add dl {
    display: grid;
    grid-template-rows: 90px auto;
    margin-right: 0;
  }
  .shop-add dl dd {
    margin: 0;
  }
  .shop-add {
    display: flex;
    flex-direction: row-reverse;
  }
  .shop-add p,
  .shop-add dt,
  .shop-add dd {
    writing-mode: vertical-rl;
    font-size: 16px;
  }
  .shop-add dt {
    position: relative;
    padding-bottom: 10px;
  }
  .shop-add dt::after {
    content: "";
    display: inline-block;
    height: 2px;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    width: 1em;
    position: absolute;
    bottom: 10px;
    right: 4px;
  }
  .shop-add p {
    margin: 0 40px;
  }
  .shop-info .contact {
    padding-right: 145px;
  }
  .shop-info .contact p {
    margin: 0;
    text-align: center;
    font-weight: 600;
    line-height: 1.2;
  }
  .shop-info .contact p.tel-tl {
    font-size: 20px;
    padding-bottom: 15px;
    margin-bottom: 15px;
    position: relative;
  }
  .shop-info .contact p.tel-tl::after {
    content: "";
    width: 20px;
    height: 1px;
    background: #ccc;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%,0);
  }
  .shop-info .contact p.tel-num {
    font-size: 36px;
  }
  .shop-info .contact p.tel-time {
    font-size: 14px;
    margin-top: 5px;
  }
  .shop-item .ttl {
    font-size: 24px;
    margin-top: 30px;
    margin-bottom: 15px;
  }
  .shop-item p {
    font-size: 16px;
    line-height: 2;
  }
  .shop-image .tx {
    display: flex;
    gap: 0 40px;
    margin-top: 60px;
  }
  .shop-image .tx .shop-item {
    flex: 1;
  }
}
@media screen and (max-width: 1200px){
  .shop-page .shop-info {
    display: none;
  }
  .shop-image {
    margin-top: 80px;
  }
  .shop-image::before {
    content: none;
  }
}
@media screen and (max-width: 767px){
  .shop-page .tx .shop-item {
    margin-top: 40px;
  }
}

@media screen and (max-width: 767px){
  .fs-body-my-account-password .fs-c-inputInformation__message {
    margin: 0;
    justify-content: flex-start;
  }
  .fs-body-my-account-password .fs-c-breadcrumb {
    margin-bottom: 0;
  }
  .fs-body-my-account-password .fs-c-inputInformation__field {
    margin-top: 0;
  }
}

.fs-c-checkout-multiDestination__title {
  background: #000;
  font-size: 14px;
  padding: 10px;
}
.fs-c-checkout-multiDestination__subtitle {
  font-size: 14px;
}
.fs-c-checkout-shippingParcel__title {
  font-weight: 700;
}
@media screen and (min-width: 768px){
  .fs-c-checkout-multiDestination__title {
    font-size: 20px;
    padding: 15px;
  }
  .fs-c-checkout-multiDestination__subtitle {
    font-size: 18px;
    border-left-width: 4px;
    padding-left: 15px;
  }
  .fs-c-checkout-delivery__method {
    padding: 14px;
  }
  .fs-c-checkout-multiDestination__info__name {
    font-size: 20px;
  }
  .fs-c-checkout-shippingParcel__title,
  .fs-c-checkout-multiDestination__info__list {
    font-size: 16px;
  }
  .fs-c-checkout-productQuantityWarning,
  .fs-c-checkout-multiDestination__productList {
    font-size: 18px;
  }
  .fs-c-checkout-shippingParcel__productImage__image {
    width: 90px;
    height: 90px;
  }
  .fs-c-checkout-shippingParcel__product {
    font-size: 16px;
  }
}

@media screen and (min-width: 768px) {
  .fs-c-productList__list {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    grid-gap: 80px 40px;
  }
}
@media screen and (min-width: 960px) {
  .fs-c-productList__list {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    grid-gap: 80px 40px;
  }
}

@media screen and (min-width: 960px) {
  .fs-body-login .fs-c-loginForm {
    justify-content: center;
  }
  .fs-body-my-orders .fs-c-history__info {
    margin-top: 24px;
  }
}

.fs-p-announcement__body p {
  margin: 1.5em 0;
}
.fs-c-history__term {
  color: #000;
}


.contact-thanks p {
  line-height: 2;
  margin: 40px 0 80px;
}
@media screen and (min-width: 960px) {
  .contact-thanks h1 {
    font-size: 35px;
  }
  .contact-thanks p {
    font-size: 16px;
    margin: 60px 0 120px;
  }
}

.wpcf7-response-output {
  opacity: 0;
}


.page-id-9 .header-sns {
  bottom: 100px;
}
@media screen and (min-width: 768px) {
  .page-id-9 .header-sns {
    bottom: 90px;
  }
}
