/* Style for PCs */
@media screen and (min-width: 1025px) {


/* Menu botton*/
.menubnbase {
  width:100px;
  height:100px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color:var(--color-333);
  position: fixed;
  top:0;
  right:0;
  z-index:26500;
}
.menubnbase.scr_active {
  width:70px;
  height:70px;
}

.menubn {
display: block;
width: 50px;
height: 50px;
cursor: pointer;
text-align: center;
position: relative;
background-image: url(../img-group/header/ic-menu_open.webp);
background-repeat: no-repeat;
background-position: center bottom;
background-size: auto 11px;
}

.menubn.ausp_active {
display: block;
width: 50px;
height: 50px;
cursor: pointer;
text-align: center;
}

.menubn span {
display: block;
position: absolute;
width: 40px;
height: 2px;
left: 6px;
background: var(--color-white);
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.menubn span:nth-child(1) {
top: 10px;
}

.menubn span:nth-child(2) {
top: 20px;
}

.menubn span:nth-child(3) {
top: 30px;
}

/* ナビ開いてる時のボタン */
.menubn.active {
background-image: url(../img-group/header/ic-menu_close.webp);
}
.menubn.active span:nth-child(1) {
top: 16px;
left: 6px;
background: var(--color-white);
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
}

.menubn.active span:nth-child(2),
.menubn.active span:nth-child(3) {
top: 16px;
background: var(--color-white);
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
}

nav.navmenu {
position: fixed;
z-index: 25600;
top:  0;
left:-9999px;
color: var(--color-black);
background: rgba(255, 255, 255, 0.80);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
width: 100%;
height: 100%;
min-height: 100%;
padding:150px 10% 250px;
opacity: 0;
transition: .4s all;
}

nav.navmenu ul {
width: 100%;
height: 100%;
min-height: 100%;
flex-direction: column;
justify-content: center;
align-items: center;
}

nav.navmenu ul li {
list-style-type: none;
padding: 0;
width: 100%;
font-size: 16px;
transition: .4s all;
border-bottom: 1px dotted rgba(0, 0, 0, 0.5);
}

nav.navmenu ul li:last-child {
border-bottom: none;
}

nav.navmenu ul li a {
width: 100%;
height: auto;
display: block;
color: var(--color-black);
text-decoration: none;
background-image: url(../img-group/header/ic-ar_h_b.webp);
background-position: 98% center;
background-repeat: no-repeat;
background-size: auto 30px!important;
}

nav.navmenu ul li:hover {
background: rgba(255, 255, 255, 0.15);
}

/* このクラスを、jQueryで付与・削除する */
nav.navmenu.active {
opacity: 100;
left:0;
overflow-y: scroll;
}

/* Accordion menu */
.mobmenu {
width:100%;
height:auto;
display:block;
}
.mobmenu span {
cursor: pointer;
width:100%;
height:70px;
display:block;
font-size:18px;
font-weight:300;
letter-spacing: 0px;
color:var(--color-black);
line-height:70px;
padding:0px 10px;
border-bottom:1px dotted var(--color-ccc);
background-position:98% center;
background-repeat:no-repeat;
background-size:auto 30px;
background-image: url(../img-group/header/ic-submenu_open.webp);
}
.mobmenu span.smact {
color:var(--color-white);
background-color:var(--color-1st);
background-image: url(../img-group/header/ic-submenu_close.webp);
}
.mobmenu ul.m_submenu {
  width: 100%;
  height: auto;
  display: none;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding:10px;
}

.mobmenu ul.m_submenu li{
width:24%;
height: auto;
display: block;
font-size:14px!important;
font-weight:300;
margin:0 0.5% 1%;
border:none;
}
.mobmenu ul.m_submenu li a {
width:100%;
height: auto;
display:flex;
justify-content: center;
padding:60px 10px 15px 10px;
text-decoration: none;
text-align: center!important;
background-repeat: no-repeat;
background-position: center 5px!important;
background-size: auto 50px!important;
background-color:var(--color-white);
border:1px solid var(--color-ccc);
border-radius: 5px;
transition: .4s all;
}
.mobmenu span strong {
  font-weight: 700;
}
.mobmenu ul.m_submenu li a:hover {
  border:1px solid var(--color-1st);
}

.mobmenu ul.m_submenu.ms_shops li{
width:49%;
height: auto;
display: block;
font-size:14px!important;
font-weight:300;
margin:0 0.5% 1%;
border:none;
}
.mobmenu ul.m_submenu.ms_shops li a {
width:100%;
height: auto;
display:flex;
flex-direction: column;
align-items: flex-start;
justify-content: center;
padding:15px 10px 15px 10px;
text-decoration: none;
text-align: left!important;
background-color:var(--color-white);
background-image: url(../img-group/header/ic-ar_h_b.webp)!important;
background-repeat: no-repeat;
background-position: 96% center!important;
background-size: auto 20px!important;
border:1px solid var(--color-ccc);
border-radius: 5px;
transition: .4s all;
}
.mobmenu ul.m_submenu.ms_shops li a h4 {
  font-size:16px;
  font-weight: 700;
  line-height: 1.1em;
  color:var(--color-1st);
  margin-bottom: 0.3em;
}
.mobmenu ul.m_submenu.ms_shops li a p {
  font-size:12px;
  font-weight: 300;
  line-height: 1.5em;
  color:var(--color-black);
  margin-bottom: 0em;
}
.mobmenu ul.m_submenu.ms_shops li a:hover {
  border:1px solid var(--color-1st);
background-position: 98% center!important;
}

.mobmenu2 {
width:100%;
height:auto;
display:block;
}
.mobmenu2 li {
width:100%;
height:auto;
display:block;
}
.mobmenu2 li:last-child {
border-bottom:none;
}
.mobmenu2 li a {
width:100%;
height:70px;
display:block;
text-decoration: none;
font-size:18px;
font-weight:300;
letter-spacing: 0px;
color:var(--color-black);
line-height:70px;
padding:0px 10px;
border-bottom:1px dotted var(--color-ccc);
background-image: url(../img-group/header/ic-ar_h_b.webp);
background-repeat: no-repeat;
background-position: 98% center;
background-size: auto 30px!important;
}


}


/* Style for iPad Pro */
@media screen and (min-width: 769px) and (max-width: 1024px) {
/* Menu botton*/
.menubnbase {
  width:100px;
  height:100px;
  display: flex;
  justify-content: center;
  align-items: center;

  background-color:var(--color-333);
  position: fixed;
  top:0;
  right:0;
  z-index:26500;
}

.menubnbase.scr_active {
  width:70px;
  height:70px;
}

.menubn {
display: block;
width: 50px;
height: 50px;
cursor: pointer;
text-align: center;
position: relative;
background-image: url(../img-group/header/ic-menu_open.webp);
background-repeat: no-repeat;
background-position: center bottom;
background-size: auto 11px;
}

.menubn.ausp_active {
display: block;
width: 50px;
height: 50px;
cursor: pointer;
text-align: center;
}

.menubn span {
display: block;
position: absolute;
width: 40px;
height: 2px;
left: 6px;
background: var(--color-white);
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.menubn span:nth-child(1) {
top: 10px;
}

.menubn span:nth-child(2) {
top: 20px;
}

.menubn span:nth-child(3) {
top: 30px;
}

/* ナビ開いてる時のボタン */
.menubn.active {
background-image: url(../img-group/header/ic-menu_close.webp);
}
.menubn.active span:nth-child(1) {
top: 16px;
left: 6px;
background: var(--color-white);
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
}

.menubn.active span:nth-child(2),
.menubn.active span:nth-child(3) {
top: 16px;
background: var(--color-white);
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
}

nav.navmenu {
position: fixed;
z-index: 25600;
top:  -100%;
left:0;
color: var(--color-black);
background: rgba(255, 255, 255, 0.80);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
width: 100%;
height: 100%;
min-height: 100%;
padding:25% 10%;
opacity: 0;
transition: .4s all;
}

nav.navmenu ul {
width: 100%;
height: 100%;
min-height: 100%;
flex-direction: column;
justify-content: center;
align-items: center;
}

nav.navmenu ul li {
list-style-type: none;
padding: 0;
width: 100%;
font-size: 16px;
transition: .4s all;
border-bottom: 1px dotted rgba(0, 0, 0, 0.5);
}

nav.navmenu ul li:last-child {
border-bottom: none;
}

nav.navmenu ul li a {
width: 100%;
height: auto;
display: block;
color: var(--color-black);
text-decoration: none;
background-image: url(../img-group/header/ic-ar_h_b.webp);
background-position: 98% center;
background-repeat: no-repeat;
background-size: auto 30px!important;
}

nav.navmenu ul li:hover {
background: rgba(255, 255, 255, 0.15);
}

/* このクラスを、jQueryで付与・削除する */
nav.navmenu.active {
opacity: 100;
top:0;
overflow-y: scroll;
}

/* Accordion menu */
.mobmenu {
width:100%;
height:auto;
display:block;
}
.mobmenu span {
cursor: pointer;
width:100%;
height:70px;
display:block;
font-size:18px;
font-weight:300;
letter-spacing: 0px;
color:var(--color-black);
line-height:70px;
padding:0px 10px;
border-bottom:1px dotted var(--color-ccc);
background-position:98% center;
background-repeat:no-repeat;
background-size:auto 30px;
background-image: url(../img-group/header/ic-submenu_open.webp);
}
.mobmenu span.smact {
color:var(--color-white);
background-color:var(--color-1st);
background-image: url(../img-group/header/ic-submenu_close.webp);
}
.mobmenu ul.m_submenu {
  width: 100%;
  height: auto;
  display: none;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding:10px;
}

.mobmenu ul.m_submenu li{
width:24%;
height: auto;
display: block;
font-size:14px!important;
font-weight:300;
margin:0 0.5% 1%;
border:none;
}
.mobmenu ul.m_submenu li a {
width:100%;
height: auto;
display:flex;
justify-content: center;
padding:60px 10px 15px 10px;
text-decoration: none;
text-align: center!important;
background-repeat: no-repeat;
background-position: center 5px!important;
background-size: auto 50px!important;
background-color:var(--color-white);
border:1px solid var(--color-ccc);
border-radius: 5px;
transition: .4s all;
}
.mobmenu span strong {
  font-weight: 700;
}
.mobmenu ul.m_submenu li a:hover {
  border:1px solid var(--color-1st);
}

.mobmenu ul.m_submenu.ms_shops li{
width:49%;
height: auto;
display: block;
font-size:14px!important;
font-weight:300;
margin:0 0.5% 1%;
border:none;
}
.mobmenu ul.m_submenu.ms_shops li a {
width:100%;
height: auto;
display:flex;
flex-direction: column;
align-items: flex-start;
justify-content: center;
padding:15px 10px 15px 10px;
text-decoration: none;
text-align: left!important;
background-color:var(--color-white);
background-image: url(../img-group/header/ic-ar_h_b.webp)!important;
background-repeat: no-repeat;
background-position: 96% center!important;
background-size: auto 20px!important;
border:1px solid var(--color-ccc);
border-radius: 5px;
transition: .4s all;
}
.mobmenu ul.m_submenu.ms_shops li a h4 {
  font-size:16px;
  font-weight: 700;
  line-height: 1.1em;
  color:var(--color-1st);
  margin-bottom: 0.3em;
}
.mobmenu ul.m_submenu.ms_shops li a p {
  font-size:12px;
  font-weight: 300;
  line-height: 1.5em;
  color:var(--color-black);
  margin-bottom: 0em;
}
.mobmenu ul.m_submenu.ms_shops li a:hover {
  border:1px solid var(--color-1st);
background-position: 98% center!important;
}

.mobmenu2 {
width:100%;
height:auto;
display:block;
}
.mobmenu2 li {
width:100%;
height:auto;
display:block;
}
.mobmenu2 li:last-child {
border-bottom:none;
}
.mobmenu2 li a {
width:100%;
height:70px;
display:block;
text-decoration: none;
font-size:18px;
font-weight:300;
letter-spacing: 0px;
color:var(--color-black);
line-height:70px;
padding:0px 10px;
border-bottom:1px dotted var(--color-ccc);
background-image: url(../img-group/header/ic-ar_h_b.webp);
background-repeat: no-repeat;
background-position: 98% center;
background-size: auto 30px!important;
}
}

/* Style for Smartphone */
@media screen and (max-width: 768px) {
/* Menu botton*/
.menubnbase {
  width:70px;
  height:70px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color:var(--color-333);
  position: fixed;
  top:0;
  right:0;
  z-index:26500;
}

.menubnbase.scr_active {
  width:60px;
  height:60px;
}
.menubn {
display: block;
width: 45px;
height: 45px;
cursor: pointer;
text-align: center;
position: relative;
background-image: url(../img-group/header/ic-menu_open.webp);
background-repeat: no-repeat;
background-position: center bottom;
background-size: auto 9px;
}

.menubn.ausp_active {
display: block;
width: 45px;
height: 45px;
cursor: pointer;
text-align: center;
}

.menubn span {
display: block;
position: absolute;
width: 35px;
height: 2px;
left: 6px;
background: var(--color-white);
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.menubn span:nth-child(1) {
top: 5px;
}

.menubn span:nth-child(2) {
top: 15px;
}

.menubn span:nth-child(3) {
top: 25px;
}

/* ナビ開いてる時のボタン */
.menubn.active {
background-image: url(../img-group/header/ic-menu_close.webp);
}
.menubn.active span:nth-child(1) {
top: 16px;
left: 6px;
background: var(--color-white);
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
}

.menubn.active span:nth-child(2),
.menubn.active span:nth-child(3) {
top: 16px;
background: var(--color-white);
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
}

nav.navmenu {
position: fixed;
z-index: 25600;
top:  0;
left:-9999px;
color: var(--color-black);
background: rgba(255, 255, 255, 0.80);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
width: 100%;
height: 100%;
min-height: 100%;
padding:25% 10%;
opacity: 0;
transition: .4s all;
}

nav.navmenu ul {
width: 100%;
height: 100%;
min-height: 100%;
flex-direction: column;
justify-content: center;
align-items: center;
}

nav.navmenu ul li {
list-style-type: none;
padding: 0;
width: 100%;
font-size: 16px;
transition: .4s all;
border-bottom: 1px dotted rgba(0, 0, 0, 0.5);
}

nav.navmenu ul li:last-child {
border-bottom: none;
}

nav.navmenu ul li a {
width: 100%;
height: auto;
display: block;
color: var(--color-black);
text-decoration: none;
background-image: url(../img-group/header/ic-ar_h_b.webp);
background-position: 98% center;
background-repeat: no-repeat;
background-size: auto 30px!important;
}

nav.navmenu ul li:hover {
background: rgba(255, 255, 255, 0.15);
}

/* このクラスを、jQueryで付与・削除する */
nav.navmenu.active {
opacity: 100;
left:0;
overflow-y: scroll;
}

/* Accordion menu */
.mobmenu {
width:100%;
height:auto;
display:block;
}
.mobmenu span {
cursor: pointer;
width:100%;
height:50px;
display:block;
font-size:14px;
font-weight:300;
letter-spacing: 0px;
color:var(--color-black);
line-height:50px;
padding:0px 10px;
border-bottom:1px dotted var(--color-ccc);
background-position:98% center;
background-repeat:no-repeat;
background-size:auto 20px;
background-image: url(../img-group/header/ic-submenu_open.webp);
}
.mobmenu span.smact {
color:var(--color-white);
background-color:var(--color-1st);
background-image: url(../img-group/header/ic-submenu_close.webp);
}
.mobmenu ul.m_submenu {
  width: 100%;
  height: auto;
  display: none;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  padding:5px 0px;
}

.mobmenu ul.m_submenu li{
width:48%;
height: auto;
display: block;
font-size:12px!important;
letter-spacing: -1px!important;
font-weight:400;
margin:0 0.5% 1%;
border:none;
}
.mobmenu ul.m_submenu li a {
width:100%;
height: auto;
display:flex;
justify-content: center;
padding:40px 10px 5px 10px;
text-decoration: none;
text-align: center!important;
background-repeat: no-repeat;
background-position: center 5px!important;
background-size: auto 35px!important;
background-color:var(--color-white);
border:1px solid var(--color-ccc);
border-radius: 5px;
transition: .4s all;
}
.mobmenu span strong {
  font-weight: 700;
}
.mobmenu ul.m_submenu li a:hover {
  border:1px solid var(--color-1st);
}

.mobmenu ul.m_submenu.ms_type li a {
background-size: auto 45px!important;
}

.mobmenu ul.m_submenu.ms_shops li{
width:100%;
height: auto;
display: block;
font-size:14px!important;
font-weight:400;
margin:0 0 5px;
border:none;
}
.mobmenu ul.m_submenu.ms_shops li a {
width:100%;
height: auto;
display:flex;
flex-direction: column;
align-items: flex-start;
justify-content: center;
padding:10px 10px 10px 10px;
text-decoration: none;
text-align: left!important;
background-color:var(--color-white);
background-image: url(../img-group/header/ic-ar_h_b.webp)!important;
background-repeat: no-repeat;
background-position: 96% center!important;
background-size: auto 20px!important;
border:1px solid var(--color-ccc);
border-radius: 5px;
transition: .4s all;
}
.mobmenu ul.m_submenu.ms_shops li a h4 {
  font-size:12px;
  font-weight: 700;
  line-height: 1.1em;
  color:var(--color-1st);
  margin-bottom: 0.3em;
}
.mobmenu ul.m_submenu.ms_shops li a p {
  font-size:10px;
  font-weight: 400;
  line-height: 1.5em;
  color:var(--color-black);
  margin-bottom: 0em;
}
.mobmenu ul.m_submenu.ms_shops li a:hover {
  border:1px solid var(--color-1st);
background-position: 98% center!important;
}

.mobmenu2 {
width:100%;
height:auto;
display:block;
}
.mobmenu2 li {
width:100%;
height:auto;
display:block;
}
.mobmenu2 li:last-child {
border-bottom:none;
}
.mobmenu2 li a {
width:100%;
height:50px;
display:block;
text-decoration: none;
font-size:14px;
font-weight:400;
letter-spacing: 0px;
color:var(--color-black);
line-height:50px;
padding:0px 10px;
border-bottom:1px dotted var(--color-ccc);
background-image: url(../img-group/header/ic-ar_h_b.webp);
background-repeat: no-repeat;
background-position: 98% center;
background-size: auto 20px!important;
}

}
