@charset "UTF-8";
/* CSS Document */
.sp02{
  display: none;
}
html {
  scroll-behavior: smooth; /* スムーススクロール */
}

@media screen and (max-width:1200px){

}

@media screen and (max-width:1400px){

}

@media screen and (max-width:950px){
:root{
    --odds: 0.5;
}
  
html, body {
    overflow-x: hidden; /* 横スクロールを防ぐ */
    overflow-y: auto;   /* 縦スクロールを許可 */
    height: 100%;
}  
  
  .pc{
    display: none;
  }  
  

.sp{
  display: block;
} 
  
.mainImageWrap {
    position: initial;
    top: 0;
    width: 100%;
    left: 0;
    aspect-ratio: initial;
    height: auto;
    z-index: -1;
}
  
.mainImage {
    position: relative;
    width: 100%;
    height: 600px;
    margin: auto;
    overflow: hidden;
    cursor: pointer;
    aspect-ratio: initial;
}
  
.mainText {
    position: absolute;
    top: calc(50% - 50px);
    right: 5%;
    z-index: 10;
    max-width: 90%;
  width: 100%;
  text-align: center;
}
  
.logo {
    position: absolute;
    left: 5%;
    top: 15px;
}
  
.header {
    padding: 10px;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
  z-index: 9999;
}
  

  
        /* ハンバーガーボタン */
      .hamburger {
        position: absolute;
        display: flex;
        flex-direction: column;
        justify-content: center;
        cursor: pointer;
        width: 40px;
        height: 40px;
        z-index: 9999;
        right: 5%;
        top: 15px;
        }

  .logo02{
    display: none;
  }
        .hamburger div {
            width: 50px;
            height: 2px;
            background-color: #b3b0aa;
            margin: 5px 0;
            transition: all 0.3s ease;
        }

        /* ハンバーガーボタン変換 */
        .hamburger.open div:nth-child(1) {
            transform: rotate(45deg) translate(5px, 8px);
        }

        .hamburger.open div:nth-child(2) {
            opacity: 0;
        }

        .hamburger.open div:nth-child(3) {
            transform: rotate(-45deg) translate(6px, -12px);
        }

        /* メニューのスタイル */
        .menu {
          z-index: -1;
            position: fixed;
            left: 0;
            padding: 60px 5%;
            padding-top: 100px;
            background-color: #ffffff;
            color: var(--mainColor);
            font-size: 18px;
            font-weight: normal;
            flex-direction: column;
            align-items: flex-start;
            margin: 0 auto;
            transition: opacity 0.3s ease;
            opacity: 0;
            pointer-events: none;
            line-height: 2.5em;
            letter-spacing: 0.3em;
            display: block;
          width: 100%;
        }

        .menu.open {
            opacity: 1;
            pointer-events: auto;
          z-index: 50;
        }
  


        .menu a {
            color: var(--mainColor);
            text-decoration: none;
            transition: all 0.3s ease;
          display: block;
        }

        .menu a:hover {
            font-weight: bold;
            font-size: 20px;
        }  
  

}

@media screen and (max-width:680px){
  .pc02{
    display: none;
  }  
  

.sp02{
  display: block;
}   
  
  .mainCont{
    background-image:url(../images/spImg.png) !important;
  } 
  
    .mainImage {
        height: auto;
        aspect-ratio: 1 / 1;
    }  
  
  .topSec01Cont {
    display: block;
    margin: 40px 0;
    padding: 0;
  }
  
  .topSec01Cont .box01 {
    width: 100%;
    margin-bottom: 20px;
}
  
  .topSec01Cont .box02 {
    width: 100%;
}
  
  .topSec02Cont01{
    display: block;
    margin-bottom: 40px;
  }
  
  .topSec02Cont01 .box01{
    width: 100%;
    margin-bottom: 20px;
  }  
  
  .topSec02Cont01 .box02{
    width: 100%;
  }    
  
.topSec03Table th {
    width: 120px;
}


.topSec03Table td {
    width: calc(100% - 140px);
}
  
  .spScroll{
    overflow: scroll;
  }  
  
  .spScroll img{
    width: 800px;
    max-width: initial;
  } 
  
.topSec04Cont {
    display: block;
}  
  
  .topSec04Cont .box{
    width: 100%;
    margin-top: 10px;
  } 
  
  .footSecCont{
    display: block;
  }  
  
  .footSecCont .box{
    margin-top: 10px;
    width:100%;
  }
  
  .secTitle{
  font-size: 24px;  
  }  
  
  .secTitle span{
    width: 100%;
  }
  
.pagetop {
    position: absolute;
    right: 0;
    bottom: 110px;
}  
  
}