@charset "utf-8";
.header{
  position: fixed;
  z-index:9999;
  top: 0;
  left: 0;
  width: 30%;
  padding:2rem 1rem 0;
  display: flex;
  flex-direction: row;
  flex-direction: column;
  height: 100%;
  gap:1rem;
}

.header > a{
  width:63%;
  display:block;
  margin: 0 auto;
}

.header-bg{
  max-width:420px;
  padding:1rem 1rem 0.5rem;
  background:#E6E2D5;
  border-radius:40px 40px 0 0;
  margin:0 auto;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.header .accent{
  font-size:clamp(1.25rem, 0.977rem + 0.91vw, 2rem);
  color:#03436D;
  text-align:center;
}

.header-menu{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap:8px;
}

.header-menu > a{
  background:#03436D;
  border:2px solid #03436D;
  border-radius:20px;
  color:#fff;
  text-align:left;
  padding:18px 40px;
  font-weight:bold;
  width: 100%;
  max-width:340px;
  font-size:clamp(0.875rem, 0.784rem + 0.3vw, 1.125rem);
}

.header-menu > a:hover{
  opacity:1;
  color:#03436D;
  background:transparent;
}

.header-menu-box{
  margin-top:0.5rem;
  background:#6E90AF;
  border-radius:20px;
  padding:1.5rem 2rem;
  max-width:340px;
  display: flex;
  flex-wrap: wrap;
  gap:1rem 5%;
  justify-content: space-between;
}

.header-menu-box a{
  color:#fff;
  width:47.5%;
  text-align: left;
  font-weight:500;
  padding-bottom:8px;
  background-image: repeating-linear-gradient(90deg, #03436d, #03436d 4px, transparent 4px, transparent 8px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 1px;
  max-width:120px;
}

.header-menu-box a:hover{
  opacity:1;
  color:#03436D;
}

.hamBtn{
  cursor: pointer;
  z-index: 9999;
  transition: all .5s;
  display: none;
  width: 48px;
  height: 48px;
  border-radius:12px;
  background:#03436D;
  position: fixed;
  right: 1rem;
  top: 1rem;
}

.hamBar {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
}

.hamBar>div {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 8px;
  height: 8px;
  border-radius:50%;
  background: #EEEAE3;
  transition: .5s;
}


.hamBar>div:nth-child(1) {
  top: 20%; 
}

.hamBar>div:nth-child(2) {
  top: 45%;
}

.hamBar>div:nth-child(3) {
  top: 70%;
}

.hamBar.active>div:nth-child(1) {
  top: 45%;
  transform: translateX(-50%) rotate(-30deg);
  width: 40px;
  border-radius: 8px;
  height: 4px;
}

.hamBar.active>div:nth-child(2) {
  opacity: 0;
}

.hamBar.active>div:nth-child(3) {
  top: 45%;
  transform: translateX(-50%) rotate(30deg);
  width: 40px;
  border-radius: 8px;
  height: 4px;
}

.sp__menu {
  top:0;
  left:0;
  background: #E6E2D5;
  position: fixed;
  opacity: 0;
  width: 100%;
  height: 100%;
  display:flex;
  flex-direction: column;
  justify-content: center;
  align-items:center;
  transition: 0.1s;
  z-index: 8000;
  padding:3.5rem 5%;
  z-index:-100;
}

.sp__menu.active {
  opacity: 1;
  visibility: visible;
  z-index:100000;
}

.header-bottom .swiper{
  padding:0 1rem 1.5rem;
}

.header-bottom .swiper-pagination{
  bottom:0;
  line-height: 1;
}

.header-bottom .swiper-button-next{
  right:0;
}

.header-bottom .swiper-button-prev{
  left:0;
}

.header-bottom .swiper-button-next, 
.header-bottom .swiper-button-prev{
  width:3rem;
  height:3rem;
  color:transparent;
  top: 30%;
  background:url(https://f-jyuzo.co.jp/system_panel/uploads/images/20260225160107773191.png) no-repeat center/contain;
}

.header-bottom .swiper-button-prev{
  background:url(https://f-jyuzo.co.jp/system_panel/uploads/images/20260225160107756682.png) no-repeat center/contain;
}

.header-bottom .newsDetailImg{
  aspect-ratio: 240 / 165;
}

.header-bottom  .newsDetailImg > img{
  position: relative;
  z-index:10;
}

.header-bottom  .newsDetailImg span{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.header-bottom  .newsDetailImg img{
  object-fit:cover;
  aspect-ratio: 240 / 165;
  border-radius:20px;
  border:3px solid #D9B382;
}

.header-bottom .newsItemTit{
  color:#2E2E2E;
  font-size:14px;
  margin:8px 0;
}

.header-bottom .newsItemTime{
  font-size:12px;
}

.header-bottom .swiper-pagination-bullet{
  background:#ADADAD;
  margin: 0 8px !important;
}

.header-bottom .swiper-pagination-bullet-active{
  background:#464646;
}

.header-bottom{
  position:relative;
  max-width: 340px;
  margin: 1rem auto 0;
  padding: 2rem 0 0.5rem;
  width: 100%;
}

.header-bottom::before{
  content:"";
  position:absolute;
  width:100%;
  height:calc(100% - 1.75rem);
  border-radius: 20px;
  background: #EEEAE3;
  top:0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.header-bottom .accent{
  position:absolute;
  top: -1.5rem;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  font-size: clamp(1.25rem, 0.977rem + 0.91vw, 2rem);
  color: #03436D;
  text-align: center;
}

.header-bottom > img{
  width:52px;
  position: absolute;
  right: 11%;
  top: -2rem;
}

@media (min-width: 1280px) {
  @media (max-height: 1024px) {
    .header-menu > a{
      padding: 12px 40px;
    }
  }
}

@media (min-width: 1280px) {
  @media (max-height: 960px) {
    .header{
      padding: 1rem 1rem 0;
    }
    .header-bottom .newsItemTit{
      font-size:12px;
    }
    .header-menu-box{
      padding: 1rem 2rem;
    }
  }
}

@media (min-width: 1280px) {
  @media (max-height: 900px) {
    .header .accent{
      width:100%;
    }
    .header-menu > a {
      padding: 12px;
      font-size: 1rem;
    }
    .header-bg{
      justify-content: space-around;
    }
  }
}

@media (min-width: 1280px) {
  @media (max-height: 850px) {
    .header {
      padding: 1rem 1rem 3rem;
      overflow: scroll;
      min-height:790px;
    }
  }
}


@media (max-width: 1279px) {
  .header{
    width: 100%;
    height: auto;
    flex-direction: row;
    padding: 1rem 0 0;
    gap: 0;
    justify-content: center;
    z-index: 999999;
  }
  .header > .header-bg{
    display:none;
  }
  .hamBtn{
    display:block;
  }
  .header > a {
    width: 300px;
    margin: 0;
  }
  .header-menu{
    gap: 1rem;
  }
  .sp__menu{
    padding: 15% 5%;
  }
  .header-bottom::before{
    background: #E6E2D5;
  }
  .header-bottom .accent{
    font-size:2rem;
  }
}

@media (min-width: 767px) {
  @media (max-height: 700px) {
    .header-menu {
      gap: 0.5rem;
    }
    .sp__menu{
      padding: 3.5rem 5%;
    }
  }
}

@media (max-width: 767px) {
  .header > a {
    width: 190px;
  }
  .hamBar>div {
    height: 4px;
    width: 4px;
  }
  .hamBtn{
    width: 32px;
    height: 32px;
    top: 0.5rem;
  }
  .hamBar.active>div:nth-child(1),
  .hamBar.active>div:nth-child(3){
    width: 24px;
    border-radius: 8px;
    height: 2px;
  }
  .header-menu {
    gap: 8px;
  }
  .header-bottom .swiper-button-next, .header-bottom .swiper-button-prev{
    width: 2.5rem;
    height: 2.5rem;
  }
  .header-bottom .swiper-button-next {
    right: 2.5%;
  }
  .header-bottom .swiper-button-prev{
    left:2.5%;
  }
}


.page_top {
  width: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index:999;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}


@media (max-width: 767px) {
  .page_top.show {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
}

body:has(.banner) .page_top,
body:has(.contact) .page_top{
  display:none !important;
}