#wpadminbar {
    width: 100vw;
    overflow: hidden;
}

.hamburger {
    right: 13px !important;
    top: 13px !important;
    background-color: rgba(255,255,255,0.5);
    border-radius: 5px;
}

.hamburger.active span:nth-child(1) {
    -webkit-transform: translateY(10px);
    -moz-transform: translateY(10px);
    transform: translateY(10px);
}

.hamburger.active span:nth-child(2) {
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    transform: translateY(0px);
}

.hamburger.active span:nth-child(3) {
    -webkit-transform: translateY(-10px);
    -moz-transform: translateY(-10px);
    transform: translateY(-10px);
}

.wp-block-columns {
    width: 100%;
    margin: 2.5rem 0;
    position: relative;
}

.top-img .top-img-wrap {
    position: relative;
}

.top-img {
    width: 100% !important;
    height: 40vh !important;
}

.footer-adress-wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
}

.footer-sns {
  display: flex;
  margin-top: 1rem;
  margin-left: 2rem;
}
.footer-sns i.fa-brands.fa-facebook-square,
.footer-sns i.fa-brands.fa-twitter-square {
  font-size: 32px;
  color: #fff;
  margin-right: 1rem;
}

main .contents-wrap .text-wrap {
    padding-left: 1rem;
    padding-right: 1rem;
    width: 100%;
}

.header-img-wrap {
    position: relative;
}

.header-img {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    position: relative;
}

.header-img:before {
    content: "";
    display: block;
    padding-top: 50%;
}

.header-img img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.header-h1 {
    position: absolute;
    bottom: 0;
    left: 0;
    color: #fff;
font-size: min(7vw,3rem);
text-shadow: 1px 2px 3px rgb(0 0 0 / 60%);
}

.breadcrumbs {
    margin: 2rem 0;
}

.top-img h1 {
    position: absolute;
    bottom: 1rem;
    left: 1rem;
    color: #fff;
    text-shadow: 1px 2px 3px rgb(0 0 0 / 60%);
    font-size: min(6vw,3rem);
}

.slick-dots {
    position: absolute;
    bottom: 35px !important;
}

.footer-wrap a{
color: #fff;
}

/*—————————— 768px以上に適用されるCSS（ipad）  lgに相当--------------------*/
@media screen and (min-width: 768px) {
  .footer-adress-wrap {
    display: flex;
    flex-direction: row;
    width: 100%;
    align-items: flex-end;
    justify-content: center;
  }
  .footer-adress-wrap .footer-adress {
    width: 50% !important;
  }

main {
    display: block;
    width: 75%;
}

main .contents-wrap {
    display: block;
    width: 100%;
    padding: 0 1rem;
}

.header-img:before {
    padding-top: 30%;
}

.top-img .title-wrap {
    position: absolute; 
    width: 100%;
    height: 100%;
    max-width: 1200px;
    margin: 0 auto;
top: 0;
    left: 0;
}

main.px-3.fronpage-main {
    width: 100% !important;
}

main.page-other-main{
 width: 100% !important;
}

aside h2 {
    font-size: min(2vw,1.5rem);
}

aside li a {
    font-size: min(1.7vw,1rem);
}

}


/*-------------------- 992px以上に適用されるCSS（ipadpro）  lgに相当--------------------*/
@media screen and (min-width: 992px) {
  .footer-sns i.fa-brands.fa-facebook-square,
.footer-sns i.fa-brands.fa-twitter-square {
    margin-right: 2rem;
  }

.top-img .top-img-wrap {
    width: 100%;
     max-width: 100% !important; 
    height: 100%;
    margin: 0 auto;
}
}

/* --------------------1024px以上に適用されるCSS（ipad〜pc） --------------------*/
@media screen and (min-width: 1024px) {
.header-img:before {
    padding-top: 20%;
}
	    
}