@CHARSET "UTF-8";

#header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	padding:0 15px;
	z-index:10;
	height:60px;
	transition:0.3s;
	box-shadow:0px 3px 15px rgba(0, 0, 0, 0.2);
	background-color:#FFF;}
.headimg .headgrid{
	margin:0 auto;
	width:100%;}
.head-logo{
	line-height:0;
	margin:0;}
#nav-input{
	display:none;}
#mainNav{
	display:flex;
	justify-content:inherit;
	align-items:center;
	flex-wrap:wrap;}
#gnavi{
	padding:0;
	margin:0;}
#gnavi li{
	padding:0;
	list-style:none;
	text-align:center;
	margin:0;
	position:relative;}
#gnavi li::before{
	display:none;}
#gnavi a{
	transition:0.4s;
	font-weight:bold;
	text-decoration:none;
	font-size:clamp(14px, 1.4vw, 16px);
	font-family:"Sansation", sans-serif;}
.headbtn{
	margin:auto;
	width:100%;
	z-index:2;}
.headbtn a{
	display:block;
	padding:10px 1.8em;
	text-decoration:none;
	text-align:center;
	border:1px solid #FF6608;
	background:#FF6608;
	position:relative;
	font-weight:bold;
	color:#FFF;
	border-radius:30px;
	transition:0.2s;}
.headbtn a::before{
	content:'';
	margin:0;
	width:18px;
	height:18px;
	border-radius:18px;
	background:#FFF;}
.headbtn a:hover{
	background:#FFF;
	color:#FF6608;}
.headbtn a:hover::before{
	background:#FF6608;}
.head_inner{
	margin:0 auto;
	width:100%;}
.sp-logo{
	display:none;}
@media only screen and (min-width:1200px){
	.head_inner{
		margin:0 auto;}
}
@media screen and (min-width:1024px){
	#header{
		align-items:center;
		padding:0;
		height:80px;
		box-sizing:border-box;
		box-shadow:none;
		padding:0 20px;
		box-shadow:none;}
	#header.transp{
		background-color:rgba(255, 255, 255, 0.6);
		box-shadow:0px 3px 15px rgba(0, 0, 0, 0.2);}
	.headblock{
		display:flex;
		justify-content:space-between;
		align-items:center;
		max-width:1100px;
		margin:auto;}
	.head_inner{
		padding:0;
		width:auto;}
	#menu{
		display:none;}
	#gnavi{
		display:flex;
		justify-content:end;
		width:100%;}
	#gnavi li{
		margin:0 0 0 20px;
		font-size:15px;
		text-align:center;
		padding:0 0 0 25px;}
	#gnavi li:first-child{
		margin:0;}
	#gnavi li::after{
		content:'';
		position:absolute;
		top:0;
		bottom:0;
		left:0;
		margin:auto;
		width:18px;
		height:18px;
		border-radius:18px;
		background:#FF6608;}
	#gnavi a{
		display:block;
		line-height:1.2;
		height:80px;
		line-height:80px;
		letter-spacing:0;}
	#gnavi span{
		color:#a5a5a5;}
	#gnavi ul{
		opacity:0;
		visibility:hidden;
		transition:opacity 0.4s ease, visibility 0.4s ease;}
	#gnavi .menu-ckeck,
	#gnavi .menu-pull{
		display:none;}
	#gnavi li:hover ul{
		opacity:1;
		visibility:visible;
		position:absolute;
		top:80px;
		left:0;
		z-index:500;
		padding:0;}
	#gnavi li li{
		margin:0;
		float:none;
		width:100%;
		text-align:left;
		background:#DE3654;
		border:none!important;}
	#gnavi li li a{
		padding:16px 10px;
		border:0;
		height:auto;
		color:#fff;
		line-height:normal;
		text-align:center;
		font-size:14px;}
	#gnavi li.current-menu-item li a,
	#gnavi li li a{
		border-bottom-width:1px;}
	#gnavi li li.current-menu-item a,
	#gnavi li li a:hover{
		background:#AD213F;}
	#gnavi > li.has-children{
		position:relative;}
	li.has-children ul.sub-menu{
		position:absolute;
		top:80px;
		width:100%;
		margin-left:-70px;
		width:200px;
		padding:0;
		background:#033AC7;
		-webkit-transition:all .2s ease;
		transition:all .2s ease;}
	li.has-children:hover ul.sub-menu{
		top:50px;
		visibility:visible;
		opacity:1;}
	.headbtn{
		width:auto;
		margin:0 0 0 40px;}
	.headbtn a{
		display:flex;
		justify-content:space-between;
		align-items:center;
		border-radius:30px;
		height:40px;
		width:190px;}
}
@media screen and (min-width:1200px){
	#gnavi li{
		margin:0 0 0 55px;}
	.headbtn{
		width:auto;
		margin:0 0 0 60px;}
}
@media only screen and (max-width:1023px){
	.headimg{
		z-index:500;
		width:100%;
		top:0;
		height:60px;}
	.head-logo a{
		height:60px;
		line-height:60px;
		font-size:30px;
		margin:0;
		display:flex;
		align-items:center;}
	.headimg img{
		width:200px!important;}
	#nav-drawer{
		position:fixed;
		display:block;
		width:60px;
		height:60px;
		right:0;
		top:0;
		background:#FF6608;}
	#nav-open::before{
		content:'Menu';
		left:0;
		right:0;
		bottom:6px;
		margin:auto;
		width:100%;
		position:absolute;
		font-size:12px;
		text-align:center;
		color:#FFF;
		font-weight:bold;}
	.nav-unshown{
		display:none;}
	#nav-open{
		display:inline-block;
		width:60px;
		height:60px;
		margin:auto;
		vertical-align:middle;
		z-index:99;
		position:relative;}
	#nav-open span,
	#nav-open span:before,
	#nav-open span:after{
		position:absolute;
		height:2px;
		top:16px;
		left:0;
		right:0;
		margin:auto;
		width:20px;
		border-radius:3px;
		background:#FFF;
		display:block;
		content:'';
		cursor:pointer;
		transition:all .4s;}
	#nav-open span:before{
		top:7px;}
	#nav-open span:after{
		top:14px;}
	#nav-input:checked ~ #nav-open span{
		transform:translateY(8px) rotate(-45deg);}
	#nav-input:checked ~ #nav-open span:before{
		opacity:0;}
	#nav-input:checked ~ #nav-open span:after{
		transform:translateY(-16px) rotate(90deg);
		top:16px;}
	#gnavi .menu-pull::before,
	#gnavi .menu-pull::after{
		content:'';
		display:block;
		background:#000;
		position:absolute;
		top:0;
		left:0;
		right:0;
		bottom:0;
		margin:auto;}
	#gnavi .menu-pull:before{
		width:1px;
		height:15px;
		transition:transform .2s ease;}
	#gnavi .menu-pull:after{
		width:15px;
		height:1px;}
	#gnavi .menu-ckeck:checked ~ .menu-pull::before{
		transform:rotate(90deg);}
	#nav-close{
		display:none;
		position:fixed;
		z-index:98;
		top:0;
		left:0;
		width:100%;
		height:100%;
		opacity:0;
		transition:.3s ease-in-out;}
	#mainNav{
		overflow:auto;
		position:fixed;
		align-items:unset;
		top:60px;
		left:0;
		z-index:9999;
		width:100%;
		transition:.3s ease-in-out;
		-webkit-transform:translateX(-105%);
		transform:translateX(-105%);
		overflow:auto;
		scroll-snap-type:y mandatory;
		max-height:100vh;}
	#nav-input:checked~#nav-close{
		display:block;
		opacity:.5;}
	#nav-input:checked~#mainNav{
		-webkit-transform:translateX(0%);
		transform:translateX(0%);
		background:#FFF;}
	#gnavi{
		padding:0;
		margin:0;}
	#gnavi .menu-ckeck{
		position:absolute;
		opacity:0;}
	#gnavi .menu-pull{
		font-weight:bold;
		line-height:1.6;
		position:absolute;
		display:block;
		margin:auto;
		top:12px;
		right:20px;
		height:40px;
		width:40px;
		cursor:pointer;
		z-index:2;}
	#gnavi li{
		position:relative;}
	#gnavi li a{
		position:relative;
		padding:15px 0;
		font-size:16px;
		text-align:left;
		display:block;
		width:calc(100% - 40px);
		margin:auto;
		box-sizing:border-box;
		border-bottom:1px solid #CCC;}
	#gnavi li.drawer-nav-item.has-children a:before{
		display:none;}
	#gnavi .sub-menu{
		height:0;
		transition:all 0.5s ease;
		opacity:0;
		position:relative;
		z-index:-1;
		padding:0;}
	#gnavi .sub-menu li{
		opacity:0;
		height:0;
		width:calc(100% - 40px);
		margin:auto;
		background:#000;}
	#gnavi .sub-menu li a{
		border-bottom:1px solid #FFF;
		color:#FFF;}
	#gnavi .sub-menu li a{
		position:relative;}
	#gnavi .menu-ckeck:checked ~ .sub-menu{
		height:auto;
		opacity:1;
		z-index:1;}
	#gnavi .menu-ckeck:checked ~ .sub-menu li{
		height:auto;
		opacity:1;}
	#gnavi li li:last-child a{
		border-bottom:none}
	.headbtn{
		padding:20px}
	.headbtn a{
		text-align:center;
		width:240px;
		margin:auto;}
	.headbtn a:before{
		right:auto;
		top:22px;
		left:30px;}
}

/* FOOTER */
.footer{
	position:relative;
	background-color:#FBF7EF;
	padding:195px 20px 50px;}
.footer::before{
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:calc(100% - 40px);
	background:#FFF;
	border-radius:50px 50px 0 0;}
.footer-container{
	max-width:1100px;
	margin:0 auto;
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding-bottom:80px;
	position:relative;
	z-index:2;}
.logo-placeholder{
	display:flex;
	align-items:center;
	justify-content:center;
	font-weight:bold;}
.footer-nav ul{
	display:flex;
	list-style:none;
	gap:40px;}
.footer-nav ul li{
	position:relative;
	padding:0 0 0 25px;}
.footer-nav ul li::after{
	content:'';
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	margin:auto;
	width:18px;
	height:18px;
	border-radius:18px;
	background:#FF6608;}
.footer-nav a{
	font-weight:600;
	text-decoration:none;
	letter-spacing:0.05em;
	transition:opacity 0.3s;
	font-family:"Sansation", sans-serif;}
.footer-nav a:hover{
	opacity:0.6;}
.btn-contact{
	position:relative;
	background-color:#FF6600;
	border:1px solid #FF6600;
	color:#FFF;
	text-decoration:none;
	font-weight:600;
	display:flex;
	justify-content:center;
	align-items:center;
	border-radius:30px;
	height:40px;
	width:190px;
	transition:0.3s;}
.btn-contact::before{
	content:'';
	margin:0 10px 0 0;
	width:18px;
	height:18px;
	border-radius:18px;
	background:#FFF;}
.btn-contact:hover{
	color:#FF6600;
	background-color:#FFF;}
.btn-contact:hover::before{
	background:#FF6600;}
.footer-bottom{
	text-align:center;
	padding-top:30px;
	color:#666;
	position:relative;
	z-index:1;}
.address{
	font-size:12px;
	font-weight:400;
	margin-bottom:0;
	letter-spacing:-1px;}
.copyright{
	font-weight:700;
	font-size:12px;
	font-family:"Sansation", sans-serif;}
@media (max-width:1023px){
	.footer{
		padding:100px 20px 20px;}
	.footer::before{
		border-radius:30px 30px 0 0;}
	.footer-container{
		flex-direction:column;
		gap:30px;
		padding-bottom:35px;}
	.footer-nav ul{
		flex-wrap:wrap;
		gap:15px 0;
		max-width:280px;
		margin:auto;}
	.footer-nav ul li{
		width:50%;}
	.address{
		letter-spacing:0;}
}