@charset "euc-jp";
.menu__single {
  padding: 10px;
}
.submenu3 li a {
  display: block; 
  width: 100%;
  height: 100%;
  padding: 2px; 
  box-sizing: border-box; 
  text-decoration: none;
  color: inherit;       
}
.slick-slide:focus,
.slick-slide a:focus,
.slick-slide div:focus,
.slick-prev:focus,
.slick-next:focus {
  outline: none !important;
}
.submenu li a {
  display: block; 
  width: 100%;
  height: 100%;
  padding: 2px; /* 任意：上下左右の余白 */
  box-sizing: border-box; /* paddingを含めてサイズ調整 */
  text-decoration: none; /* 任意：下線消す */
  color: inherit;        /* 任意：親と同じ色 */
}
.submenu3 li {
  margin:10px;
  padding: 8px;
  
  text-align: center;
  white-space: nowrap;
  border-radius: 4px;
}
.submenu3 li:hover a {
  background-color: #4f4f4f;
  color: white;

}

.submenu3 li {
  border:1px solid #4f4f4f;

}
.submenu3 li:hover {
  background-color: #4f4f4f;
  color: white;
}
.submenu3 {
  position: fixed;
  border: 1px solid #FFFFFF;
  left: 50%;
  margin-left: -300px; /* widthの半分 */
  width: 600px;
  height: 550px;
  background: rgba(255, 255, 255, 0.8);
  padding: 20px;
  border-radius: 10px;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.35);
  z-index: 2000;

  opacity: 0;
  visibility: hidden;

}

.submenu3.show {


  opacity: 1;
  visibility: visible;
    animation: smoothDrop 1.2s cubic-bezier(0.25, 1.2, 0.5, 1);
}



#header.overlay-active {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
#global-overlay {
  position: fixed;
  top: 0; left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.5);
  z-index: 999;
  display: none;
    transition: opacity 0.3s ease, backdrop-filter 0.3s ease;
    backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}
#global-overlay.active {
  display: block;
}
.fixed{
  position: fixed;
}
#submenu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(50, 50, 50, 0.6); /* ← 好みで暗さ調整 */
  z-index: 1500; /* submenu より下に配置したいなら submenu:1000&#12316;以上 */
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease, backdrop-filter 0.3s ease;
    backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
#submenu-overlay.active {
  opacity: 1;
  pointer-events: auto;
}
#submenu-overlay2 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(50, 50, 50, 0.6); /* ← 好みで暗さ調整 */
  z-index: 1500; /* submenu より下に配置したいなら submenu:1000&#12316;以上 */
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease, backdrop-filter 0.3s ease;
    backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
#submenu-overlay2.active {
  opacity: 1;
  pointer-events: auto;
}
.submenu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.6); /* ← 好みで暗さ調整 */
  z-index: 1500; /* submenu より下に配置したいなら submenu:1000&#12316;以上 */
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease, backdrop-filter 0.3s ease;
    backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.submenu-overlay.active {
  opacity: 1;
  pointer-events: auto;
}

#header2 {
  position: fixed;
  left: 0px;
  top: 0;
  width: 100%;
  height: 40px;             /* ← 高さを指定しないと中央がわからない */
  display: flex;            /* ← 子要素に align-items が効くように */
  align-items: center;      /* ← 子要素を縦中央に */
  justify-content: space-between; /* ← 必要に応じて */
  z-index: 10;
  text-align:center;
 background: rgba(0, 0, 0, 0.2);
  color:white;
  transition: background 0.3s ease, backdrop-filter 0.3s ease;
}
#header2 h4 {
  font-size:12px;
    width: 100%;
  text-align: center;
  font-family: 'Oswald', sans-serif;
      font-weight:normal;
}
#header2.scrolled {
 background: rgba(0, 0, 0, 0.6);
}
#header2.scrolled2 {
 background: rgba(0, 0, 0, 0.1);
}
.row2 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap;
}
a:hover { text-decoration: none; }
.search-wrapper {
  display: flex;
  align-items: center;
  border-bottom: 2px solid #333; /* 下に線を引く */
  padding-bottom: 4px;
  margin:15px;
  max-width: 100%;
  transition: border-color 0.3s ease;
}

.search-wrapper:focus-within {
  border-bottom-color: #333;
}

.search-box {
  flex: 1;
  padding: 8px 10px;
  font-size: 14px;
  border: none;
  background: transparent;
  outline: none;
}

.search-btn {
  padding: 8px 6px;
  font-size: 14px;
  border: none;
  background: transparent;
  color: #525252;
  cursor: pointer;
  transition: color 0.3s ease;
}

.search-btn:hover {
  color: #000;
}


.main-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

.menu-item2 {
  position: relative;
  display: inline-block;
}
.keyword{
 padding:10px 30px;
}
/* submenu2: 初期状態は非表示 */
.submenu2 {
  position: fixed; /* または absolute（親がrelativeのとき） */

  left: 50%;
  margin-left: -175px; /* widthの半分（350px ÷ 2） */
  
    border: 1px solid #FFFFFF;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.35);
  padding: 20px;
  list-style: none;
  z-index: 2000;
  width: 350px;
  height: 400px; /* 高さが分かっている場合は必須 */
  border-radius: 10px;
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  text-align: left;
}


/* JavaScriptで制御される表示クラス */
.submenu2.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
  animation: smoothDrop 1.2s cubic-bezier(0.25, 1.2, 0.5, 1);
}
body{
font-family: 'Oswald', 'Noto Sans JP', sans-serif;


}
/* submenu（通常の方） */
.menu-item {
  position: relative;
  padding: 10px 20px;
  cursor: pointer;
}
.blandd{
text-align:start;

}
a {
  text-decoration: none;
}
.submenu {
  position: fixed;
  top:-1000px;
  left: 50%; /* 横も中央にしたい場合 */
 
  margin-left: -300px; /* 幅が550pxならその半分 */
  border: 1px solid #FFFFFF;
  width: 600px;
  height: 400px; /* 必須：高さを固定 */
  background: rgba(255, 255, 255, 0.8);
  padding: 20px;
  border-radius: 10px;
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.35);
  z-index: 2000;

  opacity: 0;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}



.a5 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.a5 li {
  padding: 4px 6px;
}

.a5 li.title4 {
  grid-column: 1 / -1; /* ← タイトルだけ1行使う */
    background-color: transparent !important;
  color: inherit !important;
    border:0px;
}

.menu-item.show-submenu .submenu {
  opacity: 1;
  top:80px;
  transform: translateY(0);
  pointer-events: auto;
  animation: smoothDrop 1.2s cubic-bezier(0.25, 1.2, 0.5, 1) forwards;
}
.submenu a {
width: 100%;
    padding: 0px 15px;
}

.submenu li {

  text-align: center;
  white-space: nowrap;
  border-radius: 4px;
}
.submenu li:hover a {
  background-color: #4f4f4f;
  color: white;

}

.submenu li {
  border:1px solid #4f4f4f;

}
.submenu li:hover {
  background-color: #4f4f4f;
  color: white;
}

/* アイコン類 */
.icon-b.icon-search {
  background-position: -208px -16px;
}
.icon-w.icon-search {
  background-position: -208px -16px;
}
.icon-lg-b.icon-search {
  background-position: -312px -24px;
}
.icon-lg-w.icon-search {
  background-position: -312px -24px;
}

/* アニメーション */
@keyframes smoothDrop {
  0% {
    transform: translateY(-150px);
  }
  20% {
    transform: translateY(50px);
  }
  50% {
    transform: translateY(-20px);
  }
  85% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}

#header {
  position: fixed;
  top: 10;
  left: 0;
  width: 96%;
  padding-top: 50px;
  padding-left: 2%;
  padding-right: 2%;
  z-index: 2;
  transition: background 0.3s ease, backdrop-filter 0.3s ease;

}
#header.scrolled {
  background: rgba(249, 249, 249, 0.5);
    backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);

}
#slider img {
  width: 100%;
  height: auto;
  display: block;
}

/* スライダー全体に余白 */
#slider {

  padding: 0;
  position: relative;
}


#slider .slick-slide {
  margin: 0;
}


.slick-prev, .slick-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  background: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-size: 0;
  cursor: pointer;
}

.slick-prev {
  left: 0;
}
.slick-next {
  right: 0;
}


.slick-prev::before,
.slick-next::before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.slick-prev::before {
  transform: rotate(-135deg);
  margin-left: 12px;
}

.slick-next::before {
  transform: rotate(45deg);
  margin-left: 14px;
}


/* slick dots 全体の配置 */
.slick-dots {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 0;
  margin: 0;
  list-style: none;
}

/* 各ドットのボタン */
.slick-dots li button {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  border: none;
  text-indent: -9999px;
  overflow: hidden;
  cursor: pointer;
  transition: background 0.3s ease;
}

/* アクティブなドット */
.slick-dots li.slick-active button {
  background: #fff;
  width: 12px;
  height: 12px;
}

.marsa {
  padding-top: 8px;
  margin: 0;
  height: 65px;
}



body {
  background-color: #f9f9f9;
  background-image: url(https://img.shop-pro.jp/tmpl_img/73/bg.gif);
  color: #464e54;
}
a {
  color: #464e54;
}
a:hover {
  color: #5e5e5e;
}
.txt_24 img {

  width: 130px;
  height: auto;
}
.txt_24a img {

  width: 180px;
  height: auto;
}
/*
 * layout
 */
#wrapper {
  width:100%;
  padding-top: 0px;
    margin-left: 0px;
    margin-right: 0px;
}

/*
 * contents
 */

#contents {
  width:100%;
  padding-left: 30px;
}

#contents .topicpath-nav {
  margin-bottom: 5px;
}
  #contents .topicpath-nav li {
    padding: 0;
  }
  #contents .topicpath-nav a {
    margin-left: 5px;
  }

/*
 * side
 */

#side .unstyled img {
  display: block;
  margin-bottom: 5px;
}

/*
 * temp
 */

/* font */
.txt_l { text-align: left; }
.txt_c { text-align: center; }
.txt_r { text-align: right; }
.txt_fwn { font-weight: normal; }
.txt_fwb { font-weight: bold; }
.txt_10 { font-size: 10px; }
.txt_12 { font-size: 12px; }
.txt_14 { font-size: 14px; }
.txt_16 { font-size: 16px; }
.txt_18 { font-size: 18px; }
.txt_20 { font-size: 20px; }
.txt_24 { font-size: 24px; }
.txt_28 { font-size: 28px; }
.txt_33 { font-size: 33px; }
.txt_c_333 {color: #333;}

/* background */
.bgc_gray {
  background-color: #f1f1f1;
}

/* margin */
.mar_auto { margin: 0 auto; }
.mar_0 { margin: 0; }
.mar_t_0 { margin-top: 0; }
.mar_r_0 { margin-right: 0; }
.mar_b_0 { margin-bottom: 0; }
.mar_l_0 { margin-left: 0; }
.mar_5 { margin: 5px; }
.mar_20 { margin: 20px; }
.mar_t_5 { margin-top: 5px; }
.mar_r_5 { margin-right: 5px; }
.mar_b_5 { margin-bottom: 5px; }
.mar_l_5 { margin-left: 5px; }
.mar_t_10 { margin-top: 10px; }
.mar_r_10 { margin-right: 10px; }
.mar_b_10 { margin-bottom: 10px; }
.mar_l_10 { margin-left: 10px; }
.mar_t_20 { margin-top: 20px; }
.mar_r_20 { margin-right: 20px; }
.mar_b_20 { margin-bottom: 20px; }
.mar_l_20 { margin-left: 20px; }
.mar_t_30 { margin-top: 30px; }
.mar_r_30 { margin-right: 30px; }
.mar_b_30 { margin-bottom: 30px; }
.mar_l_30 { margin-left: 30px; }
.mar_t_50 { margin-top: 50px; }
.mar_r_50 { margin-right: 50px; }
.mar_b_50 { margin-bottom: 50px; }
.mar_l_50 { margin-left: 50px; }

/* padding */
.pad_v_10 { padding: 10px 0; }
.pad_v_20 { padding: 20px 0; }
.pad_v_30 { padding: 30px 0; }
.pad_0 { padding: 0; }
.pad_t_0 { padding-top: 0; }
.pad_r_0 { padding-right: 0; }
.pad_b_0 { padding-bottom: 0; }
.pad_l_0 { padding-left: 0; }
.pad_5 { padding: 5px; }
.pad_t_5 { padding-top: 5px; }
.pad_r_5 { padding-right: 5px; }
.pad_b_5 { padding-bottom: 5px; }
.pad_l_5 { padding-left: 5px; }
.pad_10 { padding: 10px; }
.pad_t_10 { padding-top: 10px; }
.pad_r_10 { padding-right: 10px; }
.pad_b_10 { padding-bottom: 10px; }
.pad_l_10 { padding-left: 10px; }
.pad_20 { padding: 20px; }
.pad_t_20 { padding-top: 20px; }
.pad_r_20 { padding-right: 20px; }
.pad_b_20 { padding-bottom: 20px; }
.pad_l_20 { padding-left: 20px; }
.pad_30 { padding: 30px}
.pad_t_30 { padding-top: 30px; }
.pad_r_30 { padding-right: 30px; }
.pad_b_30 { padding-bottom: 30px; }
.pad_l_30 { padding-left: 30px; }

/* border */
.bor_t_1 { border-top: 1px solid #eee; }
.bor_r_1 { border-right: 1px solid #eee; }
.bor_b_1 { border-bottom: 1px solid #eee; }
.bor_l_1 { border-left: 1px solid #eee; }

/* vertical align */
.va-10 { vertical-align: -10%; }
.va-20 { vertical-align: -20%; }
.va-30 { vertical-align: -30%; }
.va-35 { vertical-align: -35%; }
.va-40 { vertical-align: -40%; }

@media (max-width: 980px) {
  /* ~980px */
  #base_gmoWrapp,
  #gmo_CMSPbar {
    overflow: hidden;
    min-width: 100% !important;
    width: 100% !important;
  }
}
@media (max-width: 768px) {
  /* ~768px */
  #contents {
    padding-left: 0;
  }
}
@media (max-width: 480px) {
  /* ~480px */
}

/*
 * icons
 */
.icon-user { background-position: -208px 0px; }
.icon-lg-b.icon-user { background-position: -312px 0px; }
.icon-adduser { background-position: -240px 0px; }
.icon-lg-b.icon-adduser { background-position: -360px 0px; }
.icon-login { background-position: -48px -80px; }
.icon-lg-b.icon-login { background-position: -72px -120px; }
.icon-logout { background-position: -32px -80px; }
.icon-lg-b.icon-logout { background-position: -48px -120px; }
.icon-home { background-position: -176px -16px; }
.icon-lg-b.icon-home { background-position: -264px -24px; }
.icon-mail { background-position: -64px 0px; }
.icon-lg-b.icon-mail { background-position: -96px 0px; }
.icon-pencil { background-position: -96px 0px; }
.icon-lg-b.icon-pencil { background-position: -144px 0px; }
.icon-help { background-position: -272px -80px; }
.icon-lg-b.icon-help { background-position: -408px -120px; }
.icon-cart { background-position: -176px -64px; }
.icon-lg-b.icon-cart { background-position: -264px -96px; }
.icon-search { background-position: -208px -16px; }
.icon-lg-b.icon-search { background-position: -312px -24px; }
.icon-chevron_up { background-position: -0px -144px; }
.icon-lg-b.icon-chevron_up { background-position: -0px -216px; }
.icon-chevron_down { background-position: -352px -128px; }
.icon-lg-b.icon-chevron_down { background-position: -528px -192px; }
.icon-twitter { background-position: -96px -176px; }
.icon-lg-b.icon-twitter { background-position: -144px -264px; }
.icon-instagram { background-position: -112px -192px; }
.icon-lg-b.icon-instagram { background-position: -168px -288px; }
.icon-facebook { background-position: -128px -176px; }
.icon-lg-b.icon-facebook {background-position: -192px -264px; }
.icon-youtube { background-position: -128px -160px; }
.icon-lg-b.icon-youtube { background-position: -191px -240px; }

.icon-b,
.icon-w {
  width: 16px;
  height: 16px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
.icon-lg-b,
.icon-lg-w {
  width: 24px;
  height: 24px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

.icon-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon16_b.png); }
.icon-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon16_w.png); }
.icon-lg-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_b.png); }
.icon-lg-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_w.png); }

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
  .icon-b,
  .icon-w {
    -webkit-background-size: 368px 320px;
    background-size: 368px 320px;
  }

  .icon-lg-b,
  .icon-lg-w {
    -webkit-background-size: 552px 480px;
    background-size: 552px 480px;
  }

  .icon-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon16_2x_b.png); }
  .icon-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon16_2x_w.png); }
  .icon-lg-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_2x_b.png); }
  .icon-lg-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_2x_w.png); }
}
@media (max-width: 768px) {
  .icon-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_b.png); }
  .icon-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_w.png); }
}
@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2), only screen and (max-width: 768px) and (min--moz-device-pixel-ratio: 2), only screen and (max-width: 768px) and (-o-min-device-pixel-ratio: 2 / 1), only screen and (max-width: 768px) and (min-device-pixel-ratio: 2), only screen and (max-width: 768px) and (min-resolution: 192dpi), only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .icon-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_2x_b.png); }
  .icon-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_2x_w.png); }
}
/* 16px black */
.icon-b.icon-numbered_list {
  background-position: -144px -96px;
}
/* 16px white */
.icon-w.icon-numbered_list {
  background-position: -144px -96px;
}
/* 24px black */
.icon-lg-b.icon-numbered_list {
  background-position: -216px -144px;
}
/* 24px white */
.icon-lg-w.icon-numbered_list {
  background-position: -216px -144px;
}
body.submenu2-active .submenu,
body.submenu2-active .menu-item:hover .submenu {
  pointer-events: none;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* リセット */
ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* PCナビ（デフォルト表示） */
.pc-nav {
  display: flex;
  gap: 20px;
}

.pc-nav li {
  position: relative;
}

.pc-nav a {
  text-decoration: none;
  color: #333;
  padding: 10px;
}

/* ハンバーガー */
.hamburger {
  display: none;
  flex-direction: column;
  width: 5%;
  cursor: pointer;
  position: absolute;

  top: 72%;               /* 上から50% */
  transform: translateY(-72%); /* 自分の高さの半分だけ上にずらす → 真ん中 */
  right: 20px;            /* 右端からの距離 */
  z-index: 2001;
}

.hamburger span {
  height: 4px;
  background: #333;
  margin: 5px 0;
  border-radius: 2px;
}

/* モバイルナビ初期状態 */
/* 初期状態 */
.mobile-nav {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  background: rgba(255, 255, 255, 0.8);
  position: absolute;
  top: 5vw;
  width: 90vw;
  border:1px solid #FFFFFF;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  z-index: 2000;
  padding: 10px;
  border-radius: 10px;
  left:0;
  pointer-events: none; /* クリック無効化（非表示時） */
   max-height: 90vh;     /* 画面高の90%までに制限 */
  overflow-y: auto;     /* 内容が多ければ縦スクロール */
  overscroll-behavior: contain; /* iOSでスクロールバウンド抑制（任意） */
}
.has-submenu.open .submenu-mobile {
    margin: 10px 33px;
}

.mobile-nav.open {
    margin:8px;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
    animation: smoothDrop 1.2s cubic-bezier(0.25, 1.2, 0.5, 1);
  pointer-events: auto; /* クリック有効化 */
}
.mobile-nav ul li {
  border-bottom: 1px solid #eee;
  padding: 10px 0;
}

 .submenu-mobile {

  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.3s ease, opacity 0.3s ease;

}

/* Chrome・Edge用スクロールバーのカスタム（任意） */
.submenu-mobile::-webkit-scrollbar {
  width: 6px;
}
.submenu-mobile::-webkit-scrollbar-thumb {
  background: #aaa;
  border-radius: 3px;
}

.has-submenu.open .submenu-mobile {
  opacity: 1;
    max-height: 260px;          /* 高さを制限 */
  overflow-y: auto;           /* 縦方向スクロールを有効にする */
  scrollbar-width: thin;      /* Firefox用（任意） */
}
@media (max-width: 768px) {
  .txt_24 {
    width: 30%!important;
}

  .search-box {
  width:90%;
  flex: 1;
  padding: 8px 10px;
font-size:20px;
  border: none;
  background: transparent;
  outline: none;
}
  
  .txt_24 img {

  width: 160px;
  height: auto;
}
#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 96%;
  padding-top: 60px;
    padding-bottom: 20px;
  padding-left: 2%;
  padding-right: 2%;
  z-index: 2;


}
  
}
/* メディアクエリ：スマホ用 */
@media (max-width: 768px) {
  .pc-nav {
    display: none;
  }
body {
font-size:17px;
}
.tile-grid{
font-size:14px;
}
  .hamburger {
    display: flex;
  }
.search-wrapper {
  display: flex;
  align-items: center;
  border-bottom: 2px solid #333; /* 下に線を引く */
  padding-bottom: 4px;
  margin:0px;
  max-width: 100%;
  transition: border-color 0.3s ease;
}
  .mobile-nav.open {
    display: block;
  }
  #header2 {
font-size:12px;
  height: 40px;
}

    .container {
        width: auto;
        padding: 0;
   
}

.c
}
.txt_24{
width:20%;
}

/* 白いオーバーレイの設定 */
#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  z-index: 9999;
  transition: opacity 1s ease;
}


/* フェードアウト時の状態 */
#overlay.fade-out {
  opacity: 0;
}

/* 本文の基本スタイル */
body, html {
  margin: 0;
  padding: 0;
  height: 100%;
}



.wrapper {
  padding: 100px;
  text-align: center;
  font-family: sans-serif;
}





/* 枠線だけのシンプルボタン */
.txt_c .btn {
  display: inline-block;
  padding: 8px 106px;
  font-size: 14px;
  color: #333;
  background-color: transparent;
  border: 1px solid #999;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.2s ease;
}

/* ホバー時に少し濃く */
.txt_c .btn:hover {
  background: #444;
  color: #FFF;
}

/* 無効状態のボタン（非アクティブ） */
.txt_c .btn.disabled {
  color: #aaa;
  border-color: #ccc;
  pointer-events: none;
}

/* ページ数表示 */
.txt_c p {
  margin-top: 10px;
  font-size: 14px;
  color: #555;
}
