@charset "UTF-8";

:root {
  --main-color: #158225;
}

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { font-size: 10px; }
body { background: #f0f4db; color: #111; font-family: 'Noto Sans JP', sans-serif; font-size: 1.8rem; font-weight: 400; line-height: 1.6; -webkit-text-size-adjust: 100%; }
img { border: 0; vertical-align: top; transition: all .3s ease; -ms-interpolation-mode: bicubic; }
button { background: transparent; border: none; appearance: none; cursor: pointer; outline: none; }
a { outline: none; transition: all .3s ease; }
a:link { text-decoration: none; }
a:visited { text-decoration: none; }
a:hover { text-decoration: underline; }
a:hover img { opacity: 0.8; }

/* --------------------------------------------------
  汎用クラス
-------------------------------------------------- */

.d-block { display: block; }
.d-flex { display: flex; }
.d-none { display: none; }
.text-left { text-align: left; }
.text-center { text-align: center; }
.text-right { text-align: right; }
.clearfix::after { content: ''; display: block; clear: both; }

/* --------------------------------------------------
  ヘッダ
-------------------------------------------------- */
#globalHeader{
  width: 100%;
  color: #23572B;
  background: rgba(255, 255, 255, 0.7);
  position: fixed;
  top: 0;
  z-index: 999;
}
#globalHeader a{
  color: #23572B;
}
#globalHeader .inner{
  padding: 21px 60px;
}
#globalHeader .inner h1 a img{
  max-width: 254px;
  height: auto;
}
#globalHeader .inner .navi-block{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 17px;
}
#globalHeader .inner .contact{
  display: flex;
  align-items: center;
  justify-content: end;
  gap: 20px;
  margin-bottom: 15px;
}
#globalHeader .inner .contact div{
  display: flex;
  align-items: center;
  gap: 15px;
}
#globalHeader .inner .contact div p{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#globalHeader .inner .contact div p::before{
  content: "";
  width: 24px;
  height: 24px;
  background: url(/ureshino/img/common/tel_logo.png) center no-repeat;
  background-size: cover;
  display: block;
}
#globalHeader .inner .contact div p a{
  font-size: 2.5rem;
  pointer-events: none;
}
#globalHeader .inner .contact a{
  font-size: 20px;
  font-weight: bold;
}
#globalHeader .inner .contact div span{
  font-size: 15px;
  font-weight: bold;
}
#globalHeader .inner .contact .mail{
  display: flex;
  gap: 5px;
}
#globalHeader .inner #globalNavi ul{
  font-weight: bold;
  display: flex;
  gap: 50px;
}
#globalHeader .inner #globalNavi ul li{
  list-style: none;
}
@media screen and (max-width: 767px) {
  #globalHeader a{
    display: flex;
  }
  #globalHeader .inner{
    padding: 8px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
  }
  #globalHeader .inner h1 a img{
    max-width: 254px;
    height: auto;
  }
  #globalHeader .inner .navi-block #globalNavi{
    display: none;
  }
  body.on #globalHeader .inner .navi-block #globalNavi{
    width: 100%;
    height: calc(100vh - 73px);
    padding: 45px 15px;
    display: block;
    position: absolute;
    background: #fff;
    top: 73px;
    left: 0;
  }
  #globalHeader .inner .contact{
    flex-direction: column;
  }
  #globalHeader .inner .contact div{
    flex-direction: column;
  }
  #globalHeader .inner .contact div p a{
    text-decoration: underline;
    font-size: 20px;
    pointer-events: unset;
  }
  #globalHeader .inner #globalNavi ul{
    margin-top: 30px;
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  #globalHeader .inner #globalNavi ul li a{
    text-decoration: underline;
  }
}
/* --------------------------------------------------
  パンくず
-------------------------------------------------- */
#path{
  max-width: 1100px;
  margin: 148.59px auto 130px;
  padding-top: 50px;
  font-size: 15px
}
@media screen and (max-width: 767px) {
  #path{
    margin: 75.33px auto 130px;
    padding: 25px 0 0 20px;
  }
}

/* --------------------------------------------------
  メイン
-------------------------------------------------- */
@media screen and (max-width: 767px) {
  main{
    padding: 0 20px;
  }
}


/* --------------------------------------------------
  フッタ
-------------------------------------------------- */
#globalFooter{
  color: #fff;
  background: #23572B;
}
#globalFooter .inner{
  max-width: 1100px;
  margin: 0 auto;
  padding: 50px 0 20px;
}
#globalFooter .inner .content01{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#globalFooter .inner .content01 ul{
  list-style: none;
  display: flex;
  gap: 50px;
}
#globalFooter .inner .content01 ul li a{
  color: #fff;
  font-size: 16px;
  font-weight: bold;
}
#globalFooter .inner .content02{
  margin-top: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#globalFooter .inner .content02 .access{
  display: flex;
  flex-direction: column;
  gap: 25px;
}
#globalFooter .inner .content02 .access ul li{
  list-style: none;
}
#globalFooter .inner .content02 .access ul li:nth-child(1){
  list-style: disc;
  margin-left: 27px;
}
#globalFooter .inner .content02 .access ul li a{
  color: #fff;
  pointer-events: none;
}
#globalFooter .inner .content02 .button{
  display: flex;
  flex-direction: column;
  align-items: end;
  gap: 30px;
}
#globalFooter .inner .content03{
  font-size: 14px;
  margin-top: 25px;
  display: flex;
  align-items: end;
  justify-content: space-between
}
#globalFooter .inner .content03 .bottom-menu{
  display: flex;
  flex-direction: column;
  align-items: end;
  gap: 10px;
}
#globalFooter .inner .content03 .bottom-menu ul{
  list-style: none;
  display: flex;
  gap: 20px;
}
#globalFooter .inner .content03 .bottom-menu ul li a{
  color: #fff;
}
@media screen and (max-width: 767px) {
  #globalFooter .inner{
    padding: 50px 20px 25px;
  }
  #globalFooter .inner .content01 ul{
    display: none;
  }
  #globalFooter .inner .content02{
    flex-direction: column;
  }
  #globalFooter .inner .content02 .access{
    font-size: 16px;
  }
  #globalFooter .inner .content02 .access ul li a{
    pointer-events: unset;
    text-decoration: underline;
  }
  #globalFooter .inner .content02 .button{
    width: 100%;
    align-items: start;
    margin-top: 50px;
  }
  #globalFooter .inner .content02 .button a:nth-child(2) img{
    width: 289px;
  }
  #globalFooter .inner .content03{
    margin-top: 100px;
    align-items: center;
    flex-direction: column-reverse;
    gap: 50px;
  }
  #globalFooter .inner .content03 .bottom-menu{
    width: 100%;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  #globalFooter .inner .content03 .bottom-menu ul{
    flex-direction: column;
  }
}
/* --------------------------------------------------
  スマートフォンメニュー
-------------------------------------------------- */
@media screen and (max-width: 767px) {
  #globalHeader .menu-button{
    position: relative;
  }
  #globalHeader .menu-button .line01,
  #globalHeader .menu-button .line02,
  #globalHeader .menu-button .line03{
    width: 41px;
    height: 5px;
    background: #23572B;
    border-radius: 15px;
  }
  #globalHeader .menu-button .line01{
    transition: .5s;
    position: absolute;
    top: -12px;
    right: 0;
  }
  #globalHeader .menu-button .line02{
    
  }
  #globalHeader .menu-button .line03{
    transition: .5s;
    position: absolute;
    bottom: -12px;
    right: 0;
  }
  body.on #globalHeader .menu-button .line01{
    transform: rotate(45deg);
    transition: .5s;
    position: absolute;
    top: auto;
  }
  body.on #globalHeader .menu-button .line02{
    display: none;
  }
  body.on #globalHeader .menu-button .line03{
    transform: rotate(-45deg);
    transition: .5s;
    position: absolute;
    bottom: auto;
  }
}
