@charset "utf-8";
/* CSS Document */
/*2025 created by NANACO JAPAN CREATIVE OFFICE*/
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
html, body {
	font-family: "Kaisei Decol", serif;
	font-weight: 500;
	width: 100%;
	height: 100%;
	max-width: 1800px;
	color: #2F2F2F;
	margin: 0 auto;
	font-size: 16px;
}
h1,h2,h3,h4{
  font-family: "kurobara-gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}
a {
	text-decoration: none;
	color: #384847;
}
a:hover {opacity: 0.8;}
li {list-style: none;}
img {
	margin: 0;
	padding: 0;
	display: block;
	vertical-align: bottom;
	width: 100%;
}
h1 img{
	width:100%;
	margin:0 auto;
	vertical-align: bottom;
	display: block;
}
.global_nav.fixed {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  z-index: 999;
  background: #FADBE1;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.global_nav {
	max-width: 1800px;
	width: 100%;
	background: #FADBE1;
	z-index: 3;
}
.global_nav ul {
	margin: 0 auto;
	display: flex; 
	align-items: center;
	justify-content: center;
}
.nav1 {
	gap: 2rem;
	padding: 2.2rem 0;
}
/*.nav2 {gap: 1.5rem;}*/
.global_nav li {
	float: left;
	list-style: none;
	
	text-align: center;
}
/*.icons {width: 3rem;}*/

/* hamburger */
.hamburger {
	display : none;
	position: fixed;
	z-index : 3;
	right : 13px;
	top : 12px;
	width : 42px;
	height: 42px;
	cursor: pointer;
	text-align: center;
	background-color: #E6E1D8;
	margin-top: 0.3rem;
}
.hamburger span {
	display : block;
	position: absolute;
	width : 30px;
	height : 2px ;
	left : 6px;
	background : #000;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition : 0.3s ease-in-out;
	transition : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {top: 10px;}
.hamburger span:nth-child(2) {top: 20px;}
.hamburger span:nth-child(3) {top: 30px;}
/* ナビ開いてる時のボタン */
.hamburger.active {
	background-color: #FFF;
}
.hamburger.active span:nth-child(1) {
	top : 18px;
	left: 6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform   : rotate(-45deg);
	transform        : rotate(-45deg);
}
.hamburger.active span:nth-child(2), .hamburger.active span:nth-child(3) {
	top: 18px;
	-webkit-transform: rotate(45deg);
	-moz-transform : rotate(45deg);
	transform : rotate(45deg);
}
nav.globalMenuSp {
	position: fixed;
	z-index : 2;
	top : 0;
	left : 0;
	background-image: url(../img/dots_bg.png);
	text-align: center;
	overflow: hidden;       /* 中の要素がはみ出さないようにする */
  height: 100vh;          /* 画面高さと同じ */
  transform: translateY(-100%); /* -100% は確実に隠れる */
	transition: all 0.3s;
	width: 100%;
}
nav.globalMenuSp ul {
	flex-direction: column;
	justify-content: flex-start;
	background-image: url(../img/dots_bg.png);
	margin: 0 auto;
	padding: 2.8rem;
	width: 100%;
	width: 25rem;
}
.spli1 {
	padding-top: 2rem;
}
.spli2:first-child {margin-top: -2rem;}
.spli2 {
	padding-top: 1.5rem !important;
	width: 100% !important;
	text-align: center;
	margin-bottom: -1.5rem;
}

.spli2_1 span {
	display: inline-block;
	margin-right: 1rem;
}
.spli2_1 span:last-child {
  	margin-right: 0;
}
.spli2_1{
	margin-top: 2.4rem;
}

.nav1 a, .nav1 a:visited {text-decoration: none;
	  font-optical-sizing: auto;
	  font-weight: 400;
	  font-style: normal;
	  font-variation-settings:"wdth" 100;
	  font-size:clamp(16px,10vw,22px)
}

.nav2 a{
	display: block;
	width:50%;
	height:50%;
} 
.ul1 {
	height: 100vh;
	padding-bottom: 10em;
}
nav.globalMenuSp ul li {
	list-style-type: none;
	padding: 0;
	width: 50%;
	border-bottom: #090403 dashed 1px;
}
nav.globalMenuSp ul li:last-child {
	padding-bottom: 0;
	border-bottom: none;
  color:#090403;
}
nav.globalMenuSp ul li a {
	display: block;
	padding: 1rem 0;
	text-decoration :none;
	text-align: center;
	font-weight: 600;
  height:100%;
}
/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
	transform: translateY(0%);
  overflow-y: auto;           /* ←ここ！スクロールを許可 */
  -webkit-overflow-scrolling: touch; /* iOS対策（慣性スクロール） */
}

@media screen and (max-width: 1000px){
	.global_nav {
		padding-bottom: 0;
		background: #fff !important;
	}
	.global_nav li {
	font-size: 1.6rem;
	}
	.globalMenuSp.active{top: 0;} 
	.nav1{display: none;padding: 0;} 	
	.hamburger{display: block;}
	.nav1 li, .nav2 {display: none;}
	.spli2:first-child {
        border-top: 1px dashed #fff;
        margin-top: 0.1rem;
        padding-top: 0 !important;
    }
}
@media screen and (max-width: 900px){
	nav.globalMenuSp ul li {display: block;	}
}
@media screen and (max-width:850px) {
	.nav2 li {padding-right: 1rem;}
}
@media screen and (max-width:680px) {
	
}
@media screen and (max-width:600px){
	
}
@media screen and (max-width: 560px){

}
@media screen and (max-width: 480px) {
	.global_nav li{font-size:1.5rem;}

}
