html,
body {
  overflow-x: hidden !important;
}

div.p-breadcrumb {
  width: 94%;
  max-width: 1440px;
}

ul {
  all: unset;
  list-style: none;
}

body section {
  margin-left: auto;
  margin-right: auto;
  max-width: 2000px;
}

@media (min-width: 1000px) {
  .l-headerUnder {
    display: none !important;
  }
}

@media (max-width: 783px) {
  .p-fixBtnWrap {
    bottom: 8% !important;
    right: 1.2% !important;
  }
}

/* 両サイドの余白をなくす　*/
.l-container {
  padding-left: 0;
  padding-right: 0;
}

/* SP ドロワーメニュー　*/
.l-header__body .p-drawer {
  background: #fff3e7;
  color: #a68257;
}

.l-header__body .c-iconBtn {
  color: #a68257;
}

/******　SNSの投稿ボタン　******/
.share-button {
  display: inline-block;
  width: 100px;
  line-height: 2em;
  text-align: center;
  margin-left: 5px;
  margin-right: 5px;
  color: white;
  border-radius: 5px;
  margin-top: 25px !important;
}

.share-button-inner {
  display: grid;
}

.share-button-x {
  background-color: black;
}

.share-button-instagram {
  background-color: #e73562;
}

.share-button-facebook {
  background-color: #0866ff;
}

.share-button-insta {
  background-color: #e73562;
}

/****　  ページタイトル　ななポンららポン付き   *****/

.page_ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 40px;
}

.page_ttl img {
  width: 60px;
  height: auto;
  margin-bottom: -0.6em;
}

.page_ttl h2 {
  font-size: 1.75em;
  color: #ff6666;
  font-weight: bold;
  margin: 0 0.4em 0 0.6em;
  text-align: left;
}

@media screen and (max-width: 800px) {
  .page_ttl h2 {
    font-size: min(5.25vw, 35px);
  }

  .page_ttl img {
    width: 8vw;
  }
}

/****　  ページタイトル　ななポンららポン付き 　ここまで  *****/

/****　  PC グローバルナビ  *****/
.header__gnav {
  margin-top: 1.2em;
  margin-bottom: 2em;
}

#gnav {
  width: 100%;
  max-width: 1440px;
  background-color: #fff;
  margin: 0 auto;
  border-bottom: #929292 1px solid;
  border-top: #929292 1px dashed;
}

#gnav ul.c-gnav {
  display: flex;
  justify-content: space-between;
  padding-left: 0px;
}

#gnav ul.c-gnav li {
  list-style: none;
  color: #a68257;
  font-weight: bold;
  font-size: 1.15em;
  background-repeat: no-repeat;
  width: 16.5%;
  height: 60px;
  margin-left: 0px;
  margin-top: 8px;
  margin-bottom: 8px;
  line-height: 60px;
  padding: 0 0.4%;
  border-right: #ffeca5 1px solid;
}

#gnav ul.c-gnav li a {
  padding: 0px 0px;
}

#gnav ul.c-gnav li:nth-child(1) {
  background-image: url(/../../wp/wp-content/uploads/2025/03/menu01.png);
  background-size: 2.6em;
  background-position: 3% center;
}

#gnav ul.c-gnav li:nth-child(2) {
  background-image: url(/../../wp/wp-content/uploads/2025/03/menu02.png);
  background-size: 2.7em;
  background-position: 7% center;
}

#gnav ul.c-gnav li:nth-child(3) {
  background-image: url(/../../wp/wp-content/uploads/2025/03/menu03.png);
  background-size: 2.1em;
  background-position: 8% center;
}

#gnav ul.c-gnav li:nth-child(4) {
  background-image: url(/../../wp/wp-content/uploads/2025/03/menu04.png);
  background-size: 3.6em;
  background-position: 88% center;
}

#gnav ul.c-gnav li:nth-child(5) {
  background-image: url(/../../wp/wp-content/uploads/2025/03/menu05.png);
  background-size: 3.6em;
  background-position: 90% center;
}

#gnav ul.c-gnav li:nth-child(6) {
  background-image: url(/../../wp/wp-content/uploads/2025/03/menu06.png);
  background-size: 4.1em;
  background-position: 94% center;
  border-right: none;
}

#gnav ul.c-gnav li:nth-child(1) a,
#gnav ul.c-gnav li:nth-child(2) a,
#gnav ul.c-gnav li:nth-child(3) a {
  margin-left: 2em;
}

#gnav ul.c-gnav li:nth-child(4) a {
  text-align: left;
  margin-left: 2.4em;
  letter-spacing: 0.8em;
}

#gnav ul.c-gnav li:nth-child(5) a,
#gnav ul.c-gnav li:nth-child(6) a {
  text-align: left;
  padding-left: 1.5%;
}

@media screen and (max-width: 1440px) {
  #gnav ul.c-gnav li {
    font-size: 1.15vw;
  }
}

@media screen and (max-width: 1000px) {
  .header__gnav {
    display: none;
  }
}

/****　  PC グローバルナビ ここまで　 *****/

/*************　  footer の設定  **************/

.l-footer {
  border-top: #ccc 1px solid;
}

.l-footer a {
  text-decoration: none;
}

.footer01 {
  width: 90%;
  max-width: 1440px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  font-size: 1em;
  color: #7b4b21;
}

.footer01 div.footer_info_l,
.footer01 div.footer_info_r {
  width: 48%;
}

.footer_info_r p {
  color: #666;
}

.footer_info_r p span {
  font-weight: bold;
  color: inherit;
}

.footer01 div.footer_info_l {
  display: flex;
  align-items: center;
}

.footer01 div.footer_info_l .f-info_l_img {
  width: 50%;
}

.footer01 div.footer_info_l .f-info_l_img img {
  max-width: 300px;
  width: 100%;
}

.footer01 div.footer_info_l p.f-info_l_txt {
  margin-left: 0.8em;
  width: 50%;
  vertical-align: middle;
}

.footer01 div.footer_info_r {
  position: relative;
}

.footer01 div.footer_info_r .f-info_link a img {
  position: absolute;
  bottom: -38px;
  right: 30%;
}

@media screen and (max-width: 1150px) {
  .footer01 div.footer_info_r .f-info_link a img {
    position: absolute;
    bottom: -38px;
    right: 50px;
  }
}

.footer02 {
  width: 100%;
  background: #ffd8c0;
  font-size: 0.8em;
  padding-top: 4em;
  padding-bottom: 4em;
  color: #7b4b21;
}

.footer02 .footer02_ttl {
  width: 90%;
  max-width: 1440px;
  margin: 0 auto;
}

.footer02 .footer02_ttl h3 {
  padding-bottom: 0.5em;
  margin-bottom: 1em;
}

.footer02 .footer02_ttl h3 span {
  border-bottom: #7b4b21 3px solid;
  border-radius: 1.5px;
}

.footer02_inner {
  display: flex;
  width: 90%;
  max-width: 1440px;
  margin: 0 auto;
}

.footer02_inner h4 {
  font-size: 1.15em;
  margin-bottom: 1em;
  margin-top: 1em;
}

.footer02_inner ul li {
  text-indent: -1em;
  padding-left: 1em;
  padding-bottom: 0.6em;
  line-height: 1.8em;
  margin-right: 1.6em;
}

.footer02_inner ul li:before {
  content: "- ";
}

.footer02 .footer_index_l,
.footer02 .footer_index_r {
  width: 50%;
  display: flex;
  justify-content: space-between;
}

.footer02 .footer_index_l div.footer_index_l-1 {
  width: 40%;
}

.footer02 .footer_index_l div.footer_index_l-2 {
  width: 60%;
}

.footer02 .footer_index_r div.footer_index_r-1,
.footer02 .footer_index_r div.footer_index_r-2 {
  width: 50%;
}

@media screen and (max-width: 1000px) {
  .footer01 {
    display: block;
    text-align: center;
  }

  .footer01 div.footer_info_l {
    width: 100%;
    display: block;
    margin-bottom: 2em;
  }

  .footer01 div.footer_info_l .f-info_l_img {
    width: 100%;
  }

  .footer01 div.footer_info_l .f-info_l_img img {
    max-width: 300px;
    width: 100%;
  }

  .footer01 div.footer_info_l p.f-info_l_txt {
    margin-left: 0;
    width: 100%;
  }

  .footer01 div.footer_info_r {
    width: 100%;
  }

  .footer01 div.footer_info_r .f-info_link a img {
    position: static;
    margin-top: 1em;
  }

  .footer02 .footer02_ttl {
    text-align: center;
  }

  .footer02 .footer_index_l,
  .footer02 .footer_index_r {
    display: block;
  }

  .footer02 .footer_index_l div.footer_index_l-1,
  .footer02 .footer_index_l div.footer_index_l-2,
  .footer02 .footer_index_r div.footer_index_r-1,
  .footer02 .footer_index_r div.footer_index_r-2 {
    width: 100%;
  }
}

@media screen and (max-width: 783px) {
  .footer01 {
    font-size: min(3vw, 1em);
  }

  .footer02 .footer02_inner {
    display: block;
    text-align: center;
  }

  .footer02 .footer_index_l,
  .footer02 .footer_index_r {
    width: 100%;
  }
}

/**********　footer の設定   ここまで　***********/

/**********  固定メニューの設定　ここから　　　***********/
/******　PC 右固定メニュー　******/

#pc_right_menu {
  position: fixed;
  box-sizing: border-box;
  width: 250px;
  right: 0;
  top: 200px;
  font-weight: bold;
  background: rgba(255, 218, 206, 0.85);
  box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.1);
  border-top-left-radius: 24px;
  border-bottom-left-radius: 24px;
  transition: right 0.7s, opacity 0.7s;
  z-index: 9999;
}

#pc_right_menu ul {}

#pc_right_menu ul li {
  margin: 0 auto 14px 10px;
  list-style: none;
}

#pc_right_menu ul li a {
  text-decoration: none;
  color: #ff6666;
  font-weight: bold;
}

#pc_right_menu .link_ellipse01 {
  display: inline-block;
  width: 230px;
  height: 36px;
  border-radius: 18px;
  background: #fff;
  line-height: 36px;
  color: #ff6666;
  text-decoration: none;
  text-align: center;
  font-size: 1.1em;
}

#pc_right_menu .link_ellipse02 {
  position: relative;
  display: inline-block;
  width: 230px;
  height: 46px;
  border-radius: 23px;
  background: #fff;
  font-size: 0.9em;
  margin-bottom: -8px;
}

#pc_right_menu .link_ellipse02 span {
  position: absolute;
  display: inline-block;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 200px;
  text-align: left;
  margin-left: 1.2em;
  color: #ff6666;
  line-height: 1.2em;
}

#pc_right_menu .link_ellipse02 span.pc_kotei_card {
  left: 1.6em;
}

#pc_right_menu .link_txt01 {
  color: #5f3b1f;
  margin-bottom: 8px;
  margin-left: 6px;
}

#pc_right_menu .link_txt02 {
  color: #a68257;
  line-height: 1.6em;
  margin-left: 6px;
}

#pc_right_menu .link_txt02 span {
  color: #ff6666;
  font-size: 1.6em !important;
}

#pc_right_menu .link_txt03 {
  color: #a68257;
  font-size: 0.95em;
  line-height: 1.6em;
  margin-left: 6px;
}

#pc_right_menu .link_txt03 span {
  font-size: 0.7em !important;
  float: right;
}

#pc_right_menu .link_border_y hr {
  width: 180px;
  height: 2px;
  background-color: #a68257;
  border-radius: 1px;
  margin: 16px auto;
}

#pc_right_menu .link_ellipse01 img {
  width: 22px;
  margin-bottom: -4px;
  margin-right: 8px;
}

#pc_right_menu ul li.link_border_y:nth-child(1) {
  margin-top: 2.6em;
}

@media only screen and (max-width: 800px) {
  #add-control_pc {
    display: none;
  }
}

/******　PC 右固定メニュー　表示・非表示切り替え　******/

#add-control_pc {
  position: fixed;
  z-index: calc(infinity);
}

#add-control_pc input~#pc_right_menu {
  display: block;
}

#add-control_pc #close_pc {
  display: none;
}

#add-control_pc label {
  position: fixed;
  top: 190px;
  right: 0.3em;
  z-index: calc(infinity);
}

#add-control_pc label .txt_cls {
  display: block;
  font-size: 36px;
  line-height: 42px;
}

#add-control_pc label .txt_opn {
  display: none;
}

#add-control_pc label p {
  color: #fff;
  background: #fe863e;
  height: 46px;
  width: 46px;
  border-radius: 50%;
  text-align: center;
  font-weight: bold;
  font-size: 0.85em;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}

#add-control_pc input:checked+label .txt_cls {
  display: none;
}

#add-control_pc input:checked+label .txt_opn {
  display: block;
  letter-spacing: -0.2px;
  line-height: 46px;
}

#close_pc:checked+label+#pc_right_menu {
  right: -254px;
  opacity: 0;
}

/******　SP　下部固定メニュー　******/

@media only screen and (min-width: 801px) {
  #add-control_sp {
    display: none;
  }
}

#sp_bottom_menu {
  position: fixed;
  width: 100%;
  bottom: 0px;
  font-size: 0;
  border-top-left-radius: 3vw;
  border-top-right-radius: 3vw;
  background: rgba(255, 218, 206, 0.8);
  z-index: 9999;
  box-shadow: 1px -1px 10px rgba(0, 0, 0, 0.1);
}

#sp_bottom_menu ul {
  /*メニューを横並びにする*/
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}

#sp_bottom_menu ul:nth-child(1) {}

#sp_bottom_menu li {
  justify-content: center;
  align-items: center;
  width: 50%;
  padding: 2vw 1.5% 0.5vw 1.5%;
  margin: 0;
  font-size: 2.8vw;
}

#sp_bottom_menu li a {
  /*ボタンを調整*/
  display: inline-block;
  width: 100%;
  padding: 0px 10px 20px 10px;
}

#sp_bottom_menu .link_ellipse01 {
  display: inline-block;
  width: 100%;
  height: 8vw;
  border-radius: 4vw;
  background: #fff;
  text-align: left;
  line-height: 8vw;
  color: #ff6666;
  text-decoration: none;
  text-align: center;
  font-size: 3vw;
  margin-top: 0px;
  font-weight: bold;
}

#sp_bottom_menu .link_ellipse01 img {
  width: 3.6vw;
  margin-bottom: -1vw;
  margin-right: 0.8vw;
}

#sp_bottom_menu .link_ellipse02 {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 9vw;
  border-radius: 4.5vw;
  background: #fff;
  font-size: 2.7vw;
  font-weight: bold;
}

#sp_bottom_menu .link_ellipse02 span {
  position: absolute;
  display: inline-block;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  text-align: left;
  color: #ff6666;
  line-height: 1.2em;
}

#sp_bottom_menu .link_ellipse02 span.link_card {
  margin-left: 9vw;
}

#sp_bottom_menu .link_ellipse02 span.link_join {
  margin-left: 5vw;
}

.bottom_tel {}

#sp_bottom_menu .bottom_tel li {
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 1vw 10% 3vw 10%;
  margin: 0;
  font-size: 2.8vw;
  font-weight: bold;
}

#sp_bottom_menu .link_txt01 {
  color: #5f3b1f;
}

#sp_bottom_menu .link_txt02 {
  color: #a68257;
  line-height: 1.3em;
}

#sp_bottom_menu .link_txt02 span {
  color: #ff6666;
  font-size: 4.2vw !important;
}

#sp_bottom_menu .link_txt03 {
  color: #a68257;
}

#sp_bottom_menu .link_txt03 span {
  font-size: 0.85em;
}

#sp_bottom_menu .link_border_y {
  border-top: 3px solid #a68257;
  border-bottom: 0px;
  border-radius: 1.5px;
  margin: 0 auto 3vw auto;
  width: 90%;
}

#sp_bottom_menu {
  position: fixed;
  box-sizing: border-box;
  width: 100%;
  bottom: 0;
  transition: bottom 0.7s, opacity 0.7s;
}

/******　SP 下部固定メニュー　表示・非表示切り替え　******/

#add-control_sp {}

#add-control_sp input~#sp_bottom_menu {
  display: block;
}

#add-control_sp #close_sp {
  display: none;
}

#add-control_sp label {
  position: fixed;
  bottom: 0.8vw;
  right: 0.8vw;
  z-index: calc(infinity);
}

#add-control_sp label {
  z-index: 99999;
}

#add-control_sp label .txt_cls {
  display: block;
  font-size: 36px;
  line-height: 42px;
}

#add-control_sp label .txt_opn {
  display: none;
}

#add-control_sp label p {
  color: #fff;
  background: #fe863e;
  height: 46px;
  width: 46px;
  border-radius: 50%;
  text-align: center;
  font-weight: normal;
  font-size: 1em;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}

#add-control_sp input:checked+label .txt_cls {
  display: none;
}

#add-control_sp input:checked+label .txt_opn {
  display: block;
  letter-spacing: -0.5px;
  line-height: 46px;
}

#close_sp:checked+label+#sp_bottom_menu {
  bottom: -70vw;
  opacity: 0;
}

/*  ページ編集作業中は固定メニューを非表示にする　　　*/
/* 
#add-control_pc {
  display: none;
}

@media only screen and (max-width: 800px) {
  #add-control_sp {
    display: none;
  }
}
*/
/**********  固定メニューの設定　ここまで　　　***********/

/* 数値の入力欄にスピナーを常時表示する */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  opacity: 1;
}

@media only screen and (min-width: 801px) {
  .pc-no {
    display: none;
  }
}

/* お買い物かごボタン */

.cart-button-area {
  position: fixed;
  top: 8%;
  right: 2%;
  z-index: 9999;
}

.cart-button-area .archive-cart-button {
  width: 10em;
}