@charset "UTF-8";

/*----------------------------
* メニュー開閉ボタン
*----------------------------*/
.menu-btn button {
    border: none;
    background: transparent;
}
.menu-btn{
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 2;
    width: 80px;
    height: 80px;
    background: rgb(105, 181, 88);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
}
@media screen and (max-width: 1216px) {
.menu-btn{width: 60px;height: 60px;}
}
/*----------------------------
* メニュー本体
*----------------------------*/
.menu{
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1;
    width: 100vw;
    height: 100vh;
    display: flex;
    padding: 72px;
    background: #eaece7;
    overflow: auto;
}
.menu .left_area {
    width: 50%;
}
.menu .right_area {
    width: 50%;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center; /* ←縦中央 */
    align-items: center;     /* ←横中央 */
}
.global-navigation_list ul {
}
.global-navigation_list li {
    font-family: "Shippori Mincho", serif;
    font-size: 2.1rem;
    font-weight: 400;
    display: block;
    background-image: url(../img/navi_icon.svg);
    background-size: 30px auto;
    background-repeat: no-repeat;
    background-position: 0px 25px;
    text-indent: 48px;
    margin-bottom: 32px;
}
.global-navigation_list li span {
    display: block;
    font-family: "Josefin Sans", sans-serif;
    color: #a37e39;
    font-size: 1.0rem;
    font-weight: 400;
}
.global-navigation_list li a {
    display: block;
    height: 100%;
    width: 100%;
    color: #4ca64f;
    text-decoration: none;
}
.global-navigation_list li a:hover {
    color: #37772b;
}
 .right_area p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 16px;
  color: #6a6961;
  line-height: 2;
  margin-bottom: 50px;
}



    
@media screen and (max-width: 1216px) {
.menu{display: block;padding: 5% 0px 5% 0px;}
.menu .left_area {width: 70%;margin: 10% auto 10% auto;}
.menu .right_area {width: 90%;margin: auto;text-align: center;}
.menu .right_area h2 {font-size: 2rem;line-height: 2rem;}
.menu .right_area h2 span {font-size: 1rem;}
.menu .right_area p {display: none;}
.global-navigation_list li {font-size: 1.6rem;background-size: 24px auto;margin-bottom: 12px;margin: 0px auto 0px auto;width: 350px;}
.menu .right_area .m_t_3{margin-top: 1rem;}
.global-navigation_list li { background-position: 0px 14px;}
}



    
@media screen and (max-width: 768px) {
.menu { padding: 88px 16px 32px; }
.menu .left_area {width: 100%;margin: 0 auto 24px;}
.global-navigation_list li {
  font-size: 1.25rem;
  line-height: 1.45;
  background-size: 20px auto;
  background-position: 0 8px;
  text-indent: 0;
  padding-left: 32px;
  margin: 0 auto 14px;
  width: 100%;
  max-width: 320px;
}
.global-navigation_list li a {
  white-space: normal;
}
}


/*----------------------------
* アニメーション部分
*----------------------------*/

/* アニメーション前のメニューの状態 */
.menu{
    pointer-events: none;
    opacity: 0;
    transition: opacity .3s linear;
}
/* アニメーション後のメニューの状態 */
.menu.is-active{
    pointer-events: auto;
    opacity: 1;
}
.MenuBtn.Style01 {
    position: relative;
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.MenuBtn.Style01 .MenuBtn-BarFrame {
    position: relative;
    display: block;
    width: 24px;
    height: 2px;
    top: -5px;
}
.MenuBtn.Style01 .MenuBtn-BarFrame::after {
    font-family: "Josefin Sans", sans-serif;
    display: block;
    content: "MENU";
    margin-top: 14px;
    letter-spacing: 0.1rem;
    text-align: center;
    color: #fff;
    font-size: 12px;
    font-weight: 400;
    text-indent: -10px;
}
.MenuBtn.Style01 .MenuBtn-BarFrame-FirstBar {
    position: absolute;
    display: block;
    width: 50%;
    height: 50%;
    background-color: #f5ece7;
    transition: all .15s linear;
}
.MenuBtn.Style01 .MenuBtn-BarFrame-SecondBar {
    position: absolute;
    display: block;
    width: 100%;
    height: 50%;
    background-color: #f5ece7;
    transition: all .15s linear;
    transform: translateY(-8px) rotate(0deg);
}

.MenuBtn.Style01 .MenuBtn-BarFrame-ThirdBar {
    position: absolute;
    display: block;
    width: 100%;
    height: 50%;
    background-color: #f5ece7;
    transition: all .15s linear;
    transform: translateY(8px) rotate(0deg);
}
.MenuBtn.Style01.isClosed .MenuBtn-BarFrame-FirstBar {
    opacity: 0;
}
.MenuBtn.Style01.isClosed .MenuBtn-BarFrame-SecondBar {
    transform: translateY(0) rotate(45deg);
}
.MenuBtn.Style01.isClosed .MenuBtn-BarFrame-ThirdBar {
    transform: translateY(0) rotate(-45deg);
}

@media screen and (max-width: 1216px) {
.MenuBtn.Style01 .MenuBtn-BarFrame::after {font-size: 9px;padding-left: 7px;}
}

