@charset "UTF-8";
/*-------------------
----- top page -----
-------------------*/

/*==========================================================
   main / header
==========================================================*/

main {
   margin-top: -60px;
}

header {
   position: static;
}

br {
   display: none;
}



#fixed-header {
   transform: translateY(-60px);
   transition: .5s; /* アニメーションタイミング */
}

#fixed-header.is-show,
#fixed-header.is_active {
   transform: translateY(0);
   position: sticky;
   top: 0;
}


/*---------------------------------------------------------
   PC（画面幅1080px以上で読み込む）
---------------------------------------------------------*/
@media screen and (min-width:1080px) {
   main {
      margin-top: 0;
   }

   header {
      position: absolute;
   }
}

/*==========================================================
   mv
==========================================================*/

#mv {
   position: relative;
   height: 845px;
   background-image: url(../image/common/parts_tree01.png),
                     url(../image/common/parts_tree02.png),
                     url(../image/common/parts_main.png);
   background-repeat: no-repeat,no-repeat,no-repeat;
   background-position: left top, right top, center bottom;
   background-size: 47%, 40%, 100%;
}

#mv .logo {
   position: absolute;
   top: 23%;
   left: 50%;
   transform: translateX(-50%);
   width: 80%;
   max-width: 305px;
}

@media screen and (max-width:389.98px) {
   #mv {
      height: 205vw;
   }
}

/*==========================================================
   news
==========================================================*/

h2 {
   border-bottom: none;
   text-align: center;
   color: #97C765;
   font-size: 2.4rem;
}

h2::before {
   content: none;
}

article:last-of-type {
   border-bottom: none;
}

/*==========================================================
   login modal
==========================================================*/

.modaal-overlay {
   z-index: 9998 !important;
}

.modaal-container {
   border-radius: 5px;
}

.modaal-content-container {
   padding: 8vw 6vw;
}

@media screen and (min-width:768px) {
   .modaal-content-container {
      padding: 50px 30px;
   }
}

.modal-wrap {
   margin: 0 auto;
   width: 100%;
   max-width: 500px;
   text-align: center;
}

.wpmem_msg {
   text-align: left !important;
   color: #E0541B;
   width: 100% !important;
   font-size: 1.2rem;
   background: none !important;
   border: none !important;
   padding: 0 !important;
   margin: 0 !important;
}

.wpmem_msg.ff-ano {
   font-weight: normal !important;
}

#wpmem_login {
   width: 100% !important;
   margin: 0 auto;
   text-align: center;
}
#wpmem_login fieldset {
   margin: 0 !important;
}

#wpmem_login, #wpmem_reg {
   color: #5D4923 !important;
   font-family: "Zen Maru Gothic", "メイリオ", "Meiryo", sans-serif !important;
   font-weight: 500;
   line-height: 1.7;
}

input[name="rememberme"], label[for="rememberme"] {
   display: none !important;
}

input[type="submit"] {
   display: block;
   margin: 0 auto !important;
}

/*==========================================================
heading
==========================================================*/

h2 {
   padding-bottom: 30px;
   border-bottom: none;
   text-align: center;
   color: #97C765;
   font-size: 2.4rem;
}

h2::before {
   content: none;
}


/*==========================================================
login field
==========================================================*/

.login_field {
   margin: 10px auto 30px;
}

.login_field dt,
.login_field dd {
   width: 100%;
}

.login_field dt {
   text-align: left;
   line-height: 2;
}

#wpmem_login input[type=password],
#wpmem_login input[type=text],
#wpmem_reg input[type=date],
#wpmem_reg input[type=email],
#wpmem_reg input[type=number],
#wpmem_reg input[type=password],
#wpmem_reg input[type=text],
#wpmem_reg input[type=url],
#wpmem_reg textarea {
   padding: .8rem 1.2rem;
   line-height: 1.2;
   border: 1px solid #CCCCCC;
   background: #F7F7F7 !important;
   border-radius: 10px !important;
   width: 100%;
}

@media screen and (min-width:536px) {
   .login_field dt {
      width: 45%;
   }

   .login_field dd {
      width: 53%;
   }
}

/*==========================================================
btn
==========================================================*/

.login-btn__wrap {
   display: flex;
   position: relative;
   align-items: center;
   margin: 0 auto 0 0;
   width: 100%;
   max-width: 350px;
   background: #97C765;
   border-radius: 100vh;
   overflow: hidden;
   z-index: 0;
}

@media screen and (min-width:531px) {
   .login-btn__wrap {
      margin: 0 auto;
   }
}

.login-btn__wrap::before {
   content: "";
   display: block;
   position: absolute;
   top: 0;
   left: 0;
   width: 0%;
   height: 100%;
   background: #E0541B;
   -webkit-transition: .3s;
   transition: .3s;
   z-index: -1;
}

.login-btn {
   width: 100%;
   height: 50px;
   color: #fff;
   font-size: 1.8rem;
   font-weight: 400;
   letter-spacing: .1rem;
   border-radius: 100vh;
}

/*
hover
------------------*/

.login-btn__wrap:hover::before {
   width: 100%;
}

/*==========================================================
mail/tel
==========================================================*/

.mail {
   display: inline-block;
   margin-top: 40px;
   text-decoration: underline;
}

.tel {
   margin-top: 15px;
   font-size: 2.4rem;
   font-weight: 700;
}

.tel span {
   font-size: 60%;
}

a[href*="tel:"] {
   pointer-events: auto;
}

@media (min-width: 768px) {
   a[href*="tel:"] {
      pointer-events: none;
      cursor: default;
   }
}
