@charset "UTF-8";



:root {
  --main-width: 100%;
  --kihon-font: 1.1rem;
  --kihon-color: #195c9f;
}


html,body{
	width: 100%;
	margin:0px;
	padding:0 0 0 0;
color: #333;

}




*{

font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
}



.float_bt{
  display: none;
}


#top>.all_wrap{
	overflow: hidden;
  box-sizing:border-box;


  padding: 5px 0 0 0;

}




.menu-wrapper {
  position: relative;
}

.menu-icon {
  width: 40px;
  height: 30px;
  position: fixed; /* ← fixedにして常に左上固定 */
  top: 8px;
  right: 20px;
  cursor: pointer;
  z-index: 3;
  display: inline-block;
}

.menu-icon span {
  display: block;
  height: 4px;
  margin: 6px 0;
  background: #000;
  border-radius: 2px;
  transition: 0.4s;
}

/* ハンバーガーがXに変形 */
#menu-toggle:checked + .menu-icon span:nth-child(1) {
  transform: translateY(10px) rotate(45deg);
}
#menu-toggle:checked + .menu-icon span:nth-child(2) {
  opacity: 0;
}
#menu-toggle:checked + .menu-icon span:nth-child(3) {
  transform: translateY(-10px) rotate(-45deg);
}

/* オーバーレイ背景 */
.overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.5);
  opacity: 0;
  pointer-events: none;
  transition: 0.4s;
  z-index: 1;
}

#menu-toggle:checked ~ .overlay {
  opacity: 0.5;
  pointer-events: auto;
}

/* メニュー本体（左から出す） */
.menu {
  position: fixed;
  top: 0;
  left: -250px; /* ← 初期位置を左へ */
  width: 250px;
  height: 100%;
  background: #fff;
  transition: left 0.4s ease;
  z-index: 12;
}

#menu-toggle:checked ~ .menu {
  left: 0; /* ← 開いたときは左0へ */
}

.menu ul {
  list-style: none;
}

.menu li {

}

.menu a {
  text-decoration: none;
  color: #333;
  font-size: 1.2rem;
  transition: color 0.3s;
}

.menu a:hover {
  color: #007bff;
}
















.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: -25px!important;
}



a:hover{
filter: brightness(1.1);
}


.all_wrap{
  padding: 0;
  overflow: hidden;
}


.content_wrap{

margin: 0 auto;
padding: 30px 10px;

}


.header{
 
 padding: 5px 10px;


}

.header>li:nth-child(1)>a>img{
width: 100%;
height: auto;
}



.header>li:nth-child(2)>ul{
  width: 100%;
  margin-bottom: 10px;
  margin-top: 10px;
}

.header>li:nth-child(2)>ul>li{
margin-bottom: 5px;
}



.header>li:nth-child(2)>ul:nth-child(1)>li>a{

padding: 10px 20px;
color: black;
font-size: var(--kihon-font) ;
display: block;
text-decoration: none;
font-weight: bold;
border-bottom: 1px solid #b2e2ff;

}

.header>li:nth-child(2)>ul:nth-child(1)>li>a:hover{
background: #ccc;
}


.head_sp{
  padding: 10px ;

}


.head_sp>a>img{
width: 100%;
height: auto;
max-width: 280px;
}






.full{
  margin: 0 calc(50% - 50vw);

}


.insta_base{
background: url("../img/insta_back.webp") no-repeat ;
background-size: cover;
}

.water_base{
background: #def6fc;
}



.light_water_base{
background: #f0fbf9;
}

.white_base{
background: white;
}


.gray_base{
background: #f1f1f1;
}



.foot_banner{
background: url('../img/foot_banner_back.webp') no-repeat;
background-size: cover;
}

.foot_banner>div>ul{

}

.foot_banner>div>ul>li{

margin-bottom: 10px;
text-align: center;
}
.foot_banner>div>ul>li:nth-last-child(1){
margin-bottom: 0;
}


.foot_banner>div>ul>li>a>img{
width: 100%;
height: auto;
max-width: 350px;
}



.tl{
text-align: left!important;
}


.tc{
text-align: center!important;
}








.midasi1_mini{
color: var(--kihon-color);
  font-size: calc(var(--kihon-font) + 0.2rem);
  text-align: center;
font-weight: bold;
}

.midasi1_big{
color: var(--kihon-color);
  
  font-size: calc(var(--kihon-font) + 1rem);
  text-align: center;
  font-weight: bold;

}


.midasi{
  margin-bottom: 60px;
}




.kihon_text{
  font-size: calc(var(--kihon-font) + 0.3rem);
}


.kihon_text>a{
  font-size: calc(var(--kihon-font) + 0.3rem);
}




.kihon_bt{
  
}

.kihon_bt>a:hover{
background: #fff9c8;
}

.kihon_bt>a{
  display: inline-block;
  padding: 5px 30px;
  color: var(--kihon-color);

  font-size: calc(var(--kihon-font) + 0.1rem);
border: 2px solid var(--kihon-color) ;
border-radius: 10px;
text-decoration: none;
text-align: center;
min-width: 250px;
}

.kihon_bt>a::after{
content: '';/*何も入れない*/
  display: inline-block;
  width: 10px;/*画像の幅*/
  height: 10px;/*画像の高さ*/
  background-image: url("../img/right_arrow.webp");
  background-size: contain;
  vertical-align: middle;
  margin-left: 20px;
  padding-bottom: 13px;
  background-repeat: no-repeat;
}









.kihon_bt2{
  
}

.kihon_bt2>a:hover{
background: #fff9c8;
}

.kihon_bt2>a{
  display: inline-block;
  padding: 5px 30px;
  color: var(--kihon-color);

  font-size: calc(var(--kihon-font) + 0.1rem);
border: 2px solid var(--kihon-color) ;
border-radius: 10px;
text-decoration: none;
text-align: center;
min-width: 250px;
}

.kihon_bt2>a::after{
content: '';/*何も入れない*/
  display: inline-block;
  width: 10px;/*画像の幅*/
  height: 10px;/*画像の高さ*/
  background-image: url("../img/down_arrow.webp");
  background-size: contain;
  vertical-align: middle;
  margin-left: 20px;
  padding-bottom: 13px;
  background-repeat: no-repeat;
}
























footer{
  background: white;
  padding: 30px 10px;
}




footer>ul>li:nth-child(1)>div:nth-child(1)>a>img{
  width: 100%;
  height: auto;
}

footer>ul>li:nth-child(1)>div:nth-child(2),
footer>ul>li:nth-child(1)>div:nth-child(3){
  font-size: calc(var(--kihon-font) - 0rem);
}

footer>ul>li:nth-child(1)>div:nth-child(3){
  margin-bottom: 20px;
}

footer>ul>li:nth-child(1)>ul{

}

footer>ul>li:nth-child(1)>ul>li{

text-align: center;
margin-bottom: 10px;
}

footer>ul>li:nth-child(1)>ul>li>a{
display: block;
color: white;
font-size: var(--kihon-font);
background: #000;
border-radius: 10px;
}

footer>ul>li:nth-child(2){


}

footer>ul>li:nth-child(2)>ul{

display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 10px;
}


footer>ul>li:nth-child(2)>ul>li{
margin-bottom: 10px;
width: 49%;
}


footer>ul>li:nth-child(2)>ul>li>a{
display: inline-block;
color: black;
font-size: calc(var(--kihon-font) - 0.1rem);
padding-left: 5px;
}

footer>ul>li:nth-child(2)>ul>li>a::before{
content: '';/*何も入れない*/
  display: inline-block;
  width: 8px;/*画像の幅*/
  height: 8px;/*画像の高さ*/
  background-image: url("../img/foot_arrow.webp");
  background-size: contain;
  vertical-align: middle;
  margin-right: 5px;
}

.sns{
  display: flex;
  justify-content: center;
}

.sns>div{
margin-right: 10px;
max-width: 50px;
}

.sns>div>a>img{
width: 100%;
height: auto;
}

