
/*  デフォルト
-------------------------------------------------------------*/
	* { 
    margin: 0px; 
    padding: 0px; 	
}

img {
    width: 100%;
    height: auto;
	vertical-align:top;
}


html {
	scroll-behavior: smooth;
	scroll-padding-top: 10px;
}

.break-words {
  word-break: break-word;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

/* header */
.bottom-fixed-button {
  position: fixed;
  top: 0;
  width: 100%;
  height: 50px;
  padding-top: 0;
}

.bottom-fixed-button button {
  cursor: pointer;
  vertical-align: middle;
}

.bottom-fixed-button button:hover {
  opacity: 0.8;
}


.img-sp {
    display: none;
}

@media screen and (max-width:640px) {
    .img-pc {
        display: none;
    }
    .img-sp {
        display: block;
    }
}


@media screen and (max-width: 768px) {
  .u-pc-only {
    display: none;
  }
}

/* anker */

a{ color: #646262; 
word-break: break-all; 　}
a:link,
a:visited,
a:hover,
a:active{ text-decoration:underline; }
a:hover,
a,
input[type="submit"],
input[type="button"]{
    -webkit-transition:0.2s ease-in-out;
    -moz-transition:0.2s ease-in-out;
    -o-transition:0.2s ease-in-out;
    transition:0.2s ease-in-out;
}


mark {
	 background: linear-gradient(transparent 0%, #FFFF9D 0%);
}

/* main */

body{
	width: 100%; 
	margin-left: auto;
    margin-right: auto;
    line-height: 1.5;
    font-size:15px;
    font-family: "游ゴシック Light", "游ゴシック", "YuGothic", sans-serif;
font-weight: 200;
	}

.product-main {
  width: 100%; 
position: static;
background-color: #ffffff;
 background-image:url("../image/park/24344056.jpg");
  /* 画像を常に天地左右の中央に配置 */
  background-position: center center ;
  /* 画像をタイル状に繰り返し表示しない */
  background-repeat: no-repeat;
  /* コンテンツの高さが画像の高さより大きい時、動かないように固定 */
  background-attachment: fixed;
  /* 表示するコンテナの大きさに基づいて、背景画像を調整 */
  background-size: cover;
}



/* box */

.map-button {
  text-align: center;
  margin-top: 12px;
}

.map-button a {
  display: inline-block;
  padding: 10px 18px;
  background: linear-gradient(135deg, #4da5ff, #78c7ff);
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  text-decoration: none;
  border-radius: 8px;
  box-shadow: 0 3px 6px rgba(0,0,0,0.15);
  transition: background 0.3s ease, transform 0.2s ease;
}

.map-button a:hover {
  background: linear-gradient(135deg, #3a8de0, #5fb7ff);
  transform: scale(1.05);
}


.product-flame {
	position: relative;
    width:45%; 
	padding: 0em;
    margin: 0em;
	margin-left: auto;
    margin-right: auto;
	background:#ffffff;
	
}

@media screen and (max-width:780px){
 
.product-flame  {
    width:100%; 
		padding: 0em;
    margin: 0em ;
} } 

.section-grid-nav {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* デフォルト：スマホ */
  gap: 12px;
  padding: 20px 12px;

}

.section-grid-nav {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 2×3用に3列固定 */
  gap: 12px;
  padding: 20px 12px;
 
}

.section-grid-nav a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 5px;
  background: linear-gradient(135deg, #4da5ff, #78c7ff);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 12px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.section-grid-nav a:hover {
  transform: scale(1.03);
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}

h2 {
 position: relative;
  padding: 1rem 2rem;
  margin: 1em 0.5em;
  text-align: center;
  color: #1e90ff;         /* 文字色：鮮やかな青 */
  border-radius: 10px;
  background: #e6f7ff;
}


.menu {
    width:100%; 
	padding:  0em;
    margin: 0em ;
	margin-left: auto;
    margin-right: auto;
	
	 z-index: 1000;
  position: -webkit-sticky;
  position: sticky;
  top: 0;

}



.container-6 {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 2%; /* 画像の間に余白を設定 */
}


.container-6 a {
    width:32%;
	 text-align: center;
}

.product-box1 {
    width:100%; 
	padding: 0em;
    margin: 0em ;
	margin-left: auto;
    margin-right: auto;

}
.product-box1 p{
	margin: 0.5em; 
    padding: 0;
	text-align: left;
	font-size: 14px;
}


.product-box2 {
	 width:98%; 
	padding: 2em 0em;
    margin: 0em ;
	margin-left: auto;
    margin-right: auto;
	margin-bottom:  1em;

}



.product-box3 {
    width:95%; 
	padding:  0em 0em;
    margin: 0em 0;
	margin-left: auto;
    margin-right: auto;
	margin-bottom:  3em;
}

.product-box3 p{
	margin: 0.5em; 
    padding: 0;
	text-align: left;
	font-size: 14px;
}

.product-box4 {
    width:95%; 
	padding:  0em 0em;
    margin: 0em 0;
	margin-left: auto;
    margin-right: auto;
	margin-bottom:  3em;
}

.product-box4 p{
	margin: 0.5em; 
    padding: 0;
	text-align: left;
	font-size: 14px;
}


.product-box5 {
    width:50%; 
	padding:  0em 0em;
    margin: 0em 0;
	margin-left: auto;
    margin-right: auto;
}

.product-box6 {
    width:95%; 
	padding:  0em 0em;
    margin: 0em 0;
	margin-left: auto;
    margin-right: auto;
	margin-bottom:  3em;
}

.product-box6 p{
	margin: 0.5em; 
    padding: 0;
	text-align: center;
	font-size: 14px;
}

.items{
display:flex;
flex-wrap:wrap;
justify-content:center;
align-items:center;
 
}
 
.item{
box-sizing: border-box;
margin:0 0 0 0;
padding: 10px;
width: calc(30% - 10px / 2);
}
.item:nth-child(3n){
margin-right:0;
}




.sns-icon{
	display: flex;
	flex-wrap:wrap;
list-style-type: none;
  margin: 0em ;
  padding: 0em;
  justify-content: center;
	margin-left: auto;
    margin-right: auto;
	border:1px solid #000000;
}
.sns-icon li {
	width: calc(200px/3);/*←画像を横に4つ並べる場合*/
	padding:0 15px;/*←画像の左右に5pxの余白を入れる場合*/
	box-sizing:border-box;
　　　　　	
}


@media screen and (max-width:780px){
 
.sns-icon{
display: flex;
flex-wrap:wrap;
list-style-type: none;
padding-top: 0em;
 
	
}
	
.sns-icon li {
width: calc(180px/3);/*←画像を横に4つ並べる場合*/
		padding:0 10px;/*←画像の左右に5pxの余白を入れる場合*/

}
 

 
}


header {
	background:#fff;
	 z-index: 1000;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}






	#g_navi ul {
		display: flex;
		background:#000;
		padding: 0 3%;
		width: 94%;
		max-width: 960px;
		list-style-type: none;
		margin-bottom:  9em;
	}
		#g_navi ul li {
			position: relative;
			width: 20%;
		}
		#g_navi ul li:first-child::before {
			position: absolute;
			display: block;
			content: "";
			top: 25%;
			left: 0px;
			width: 1px;
			height: 50%;
		
		}
		#g_navi ul li::after {
			position: absolute;
			display: block;
			content: "";
			top: 25%;
			right: 0px;
			width: 1px;
			height: 50%;
			
		}
			#g_navi ul li a {
				display: block;
				padding:10px 10px;
				color: #6f76ff;
				text-align: center;
				text-decoration: none;
				font-size: 1.5em;
			}


@media screen and (max-width:780px){
	
	#g_navi ul li a {
				display: block;
				padding:10px 0px;
				color: #6f76ff;
				text-align: center;
				text-decoration: none;
				font-size: 0.7em;
			}
	}


#pagetop {
    position: fixed;
    bottom: 20px;
    right: 31%;
	
}


#pagetop img{
    width: 60px;
	
}


@media screen and (max-width:780px){
 
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 10px;
	
}


#pagetop img{
    width: 50px;
	
}

} 




nav {
  display: block;
  position: fixed;
  top: 0;
  left: -300px;
  bottom: 0;
  width: 300px;
  background: linear-gradient(135deg, #4da5ff, #78c7ff);
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 3;
  opacity: 0;
	
}
.open nav {
  left: 0;
  opacity: 1;
}
nav .inner {
  padding: 25px;
}
nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
	margin-top: 60px;
}
nav .inner ul li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #fff;
}
nav .inner ul li a {
  display: block;
  color: #fff;
  font-size: 14px;
  padding: 1em;
  text-decoration: none;
  font-weight: bold;
  transition: background 0.3s ease, color 0.3s ease;
}
nav .inner ul li a:hover {
  background: rgba(255,255,255,0.2);
}
@media screen and (max-width: 767px) {
  nav {
    left: -220px;
    width: 220px;
  }
}

*-------- 高さ調整 ----------*/
.slider2 .slick-slide{
	height:auto!important;
}

.slider2 .slick-slide{
    margin-right: 1vw!important;
    margin-left: 1vw!important;
}

.loop_wrap {
  position: relative;
  display: -webkit-flex;
  display: flex;
  
  height: 55px;
  overflow: hidden;
}

.loop_wrap img {
  width: auto;
  max-width: fit-content;
  height: 100%;
  will-change: transform;
}

.loop_wrap img:first-child {
  -webkit-animation: loop 30s -15s linear infinite;
  animation: loop 30s -15s linear infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}

.loop_wrap img + img {
    -webkit-animation: loop2 30s linear infinite;
    animation: loop2 30s linear infinite;
}

@keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
    -ms-transform: translateX(-200%);
    transform: translateX(-200%);
  }
}


@media screen and (max-width:780px){
	
  .loop_wrap {
    /*height: calc(100vw * .17);*/
    height: 40px;
  }
  .loop_wrap img {
    width: auto;
    max-width: fit-content;
    height: 100%;
	  
    /*min-width: 110vw;*/
  }
}


/*============
.toggle_btn
=============*/
.toggle_btn.menu-text {
  position: fixed;
  top: 10px;
  left: calc(50% - 22.5% + 10px);
  width: 60px;
  height: 60px;
  background: linear-gradient(135deg, #4da5ff, #78c7ff);
  border-radius: 12px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2.5px;
  cursor: pointer;
  z-index: 1000;
  transition: background 0.3s ease;
}

/* スクロール時の半透明 */

.toggle_btn.menu-text.scrolling {
  background: rgba(77, 165, 255, 0.7); /* 半透明 */
}

/* 三本線 */
.toggle_btn.menu-text span {
  width: 24px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  margin: 2px 0;              /* 線同士の間隔 */
}

/* MENU文字 */
.menu-label {
  margin-top: 6px;
  font-size: 12px;
  color: #fff;
  font-weight: bold;
  letter-spacing: 1px;
}

.toggle_btn.menu-text span:nth-child(1) { top: 18px; }
.toggle_btn.menu-text span:nth-child(2) { top: 24px; }
.toggle_btn.menu-text span:nth-child(3) { top: 30px; }





@media screen and (max-width: 768px) {
  .toggle_btn {
    left: 10px !important;  /* 左端に寄せる */
    top: 10px !important;   /* 上端に寄せる */
    transform: none !important; /* 位置の中央寄せを打ち消す */
  }
}
/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: .8;
  z-index: 2;
  cursor: pointer;
}
/*============
main
=============*/
main {
  padding: 50px;
}
main h1 {
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  text-align: center;
}
/*============
body
=============*/
body {
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
}



.footer_copyrights {
	background: #78c7ff;
	text-align: center;
	font-size: 14px;
	padding:  0.5em 1em 0.5em 1em;
	margin: 0;
	color: #fff;
}

@media screen and (max-width: 767px) {
.footer_copyrights  {
	
	
	font-size: 12px;

	
}
}