.hamburger {
  display: block;
  position: fixed;
  top: 0rem;
  right: 0rem;
  z-index: 9991;
  height:80px;
  width:80px;
  text-align:center;
  background-color: #f39801;
}



.hamburger__icon {
  position: relative;
  display: block;
  height: 80px;
  width: 80px;
}
/*
.hamburger::after {
  content: "MENU";
  display: block;
  position: absolute;
  top: 55px;
  left: 50%;
  transform: translateX(-50%);
  font-size: .75rem !important;
  font-weight: 600;
  color: #fff;
}*/


.hamburger__icon:before,
.hamburger__icon:after {
  content: "";
  display: block;
  height: 2px;
  width: 40px;
  background-color: #fff;
  position: absolute;
  left: 20px;
  transition: 0.4s ease;
}

.hamburger__icon:before {
  top: 30px;
}
.hamburger__icon:after {
  top: 40px;
}

.hamburger.active .hamburger__icon:before,
.hamburger.active .hamburger__icon:after {
  top: 35px; /* 中央に移動 */
}

.hamburger.active .hamburger__icon:before {
  transform: rotate(45deg);
}

.hamburger.active .hamburger__icon:after {
  transform: rotate(-45deg);
}


.fat-nav {
  top: 0;
  left: 0;
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  background: #f39801;
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
  -moz-transition-property: -moz-transform;
  -o-transition-property: -o-transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: transform;
  -moz-transition-duration: 0.4s;
  -o-transition-duration: 0.4s;
  -webkit-transition-duration: 0.4s;
  transition-duration: 0.4s;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  box-sizing:border-box;
  z-index: 9990;
}
.fat_content_wrap{
  width: 100%;
  height: 100%;
      display: flex;
  justify-content: center;
  align-items: center;
}



.fat-nav__wrapper {
  position: relative;
  width:100%;
  height: 100%;
  margin:0 auto;
}
/
.fat-nav.active {
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

 .fat-head{
  text-align: center;
 }
 .fat-head .name{
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 10px;
  color: #fff;
 }
.fat-head .tel-wrapper{
    text-align: center;
  background-color: #fff;
  padding: 20px;
  border-radius: 1rem;
}
.fat-head .tel {
  font-size: 1.4rem;
  font-weight: bold;
}
.fat-head .tel a{
  color: #000;
}
.fat-head p{
  font-size: 12px;
  margin: 0;
  padding: 0;
}


.fat-list {
  margin-bottom: 3rem;
} 
.fat-list ul{
  margin: 0;
  position: 0;
} 
.fat-list li{
  margin:0;
  text-align: center;
} 
.fat-list li:last-child{
  margin-bottom:0px;
}  
.fat-list li a {
  position: relative;
  display: block;
  padding: 1rem 2rem;
  font-size: 1.2rem;
  color: #fff;
} 


/*.fat-list li a:before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #000;
  width: 100%;
  height: 1px;
  border-radius:100px;
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}

 .fat-list li a:hover:before{
  transform-origin:left top;
  transform:scale(1, 1);
}*/


/*.active .fat-inner .fat-list li:nth-child(odd) {
  animation:leftin 1s ease-in-out .5s forwards;
}

.active .fat-inner .fat-list li:nth-child(even) {
  animation:leftin 1s ease-in-out .5s forwards;
}*/

/*
.active .fat-list li:nth-child(1) {
  animation:leftin .4s ease-in-out .1s forwards;
}

.active .fat-list li:nth-child(2) {
  animation:leftin .4s ease-in-out .2s forwards;
}

.active .fat-list li:nth-child(3) {
  animation:leftin .4s ease-out .3s forwards;
}

.active .fat-list li:nth-child(4) {
  animation: leftin .4s ease-out .4s forwards;
}

.active .fat-list li:nth-child(5) {
  animation:leftin .4s ease-out .5s forwards;
}
.active .fat-list li:nth-child(6) {
  animation:leftin .4s ease-out .6s forwards;
}


@keyframes leftin {
    0% {opacity: 0;}
    100% {opacity: 1;}
} */




.fat-list{}
.fat-list ul{
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: .9rem;
}


@media (max-width: 767px) {

 .fat-nav {overflow-y: scroll;}


.hamburger {
  display: block;
  position: fixed;
  top: 0px;
  right: 0px;
  height:60px;
  width:60px;
}

.hamburger__icon {
  position: relative;
  display: block;
  height: 60px;
  width: 60px;
}

.hamburger__icon:before,
.hamburger__icon:after {
  width: 30px;
  position: absolute;
  left: 15px;
}

.hamburger__icon:before {
  top: 20px;
}
.hamburger__icon:after {
  top: 30px;
}

.hamburger.active .hamburger__icon:before,
.hamburger.active .hamburger__icon:after {
  top: 25px;
  width: 30px;
}

.hamburger.active .hamburger__icon:before {
  transform: rotate(45deg);
}

.hamburger.active .hamburger__icon:after {
  transform: rotate(-45deg);
}





.fat-nav {
}
/*
.fat-nav__wrapper::after{
  content:"";
  position: absolute;
  z-index: 2;
  width: 40px;
  height: 100%;
  top:0;
  left: 0;
  background:top right / contain repeat-y url(../img/bg-key-piano-left.svg);
}*/



 .fat-head{
  text-align: center;
 }
 .fat-head .name{
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: 10px;
  color: #fff;
 }
.fat-head .tel-wrapper{
    text-align: center;
  background-color: #fff;
  padding: 15px;
  border-radius: 1rem;
}
.fat-head .tel {
  font-size: 1.4rem;
  font-weight: bold;
}
.fat-head .tel a{
  color: #000;
}
.fat-head p{
  font-size: 11px;
  margin: 0;
  padding: 0;
}




.fat-nav__wrapper {
  position: relative;
  width:100%;
  height: 100%;
  margin:0 auto;
  padding: 50px 20px 30px;
}


.fat-nav.active {
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

.fat-list{
  list-style: none;
  padding: 0;
  width: 100%;
}

.fat-list li{
  text-align: center;
} 

.fat-list li a {
} 


}


/* ▼ ハンバーガー下に「MENU」を表示する（スマホ＆PC共通） ▼ */
.hamburger::after {
  content: "MENU";
  display: block;
  position: absolute;
  width: 100%;
  text-align: center;
  font-size: 10px;
  font-weight: 600;
  color: #fff;
  top: 52px;  /* ← 三本線の下に来るように調整（PCサイズ） */
  left: 0;
  pointer-events: none;
}

/* ▼ スマホサイズ（60px版）では位置を調整 ▼ */
@media (max-width: 767px) {
  .hamburger::after {
    top: 38px; /* ←60px版ならこのぐらいがちょうど良い */
    font-size: 10px;
  }
}

/* ▼ active 状態（開いた時）は CLOSE 表示にする ▼ */
.hamburger.active::after {
  content: "CLOSE";
}