<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";

/*-------------------------------------------------------------------------------------------------------------------------------
* common
------------------------------------------------------------------------------------------------------------------------------- */
body {
	font-family: "游ゴシック体", YuGothic, "Yu Gothic Medium", sans-serif;
	font-size: 15px;
	line-height: 1.7;
	color: #333333;
	-webkit-text-size-adjust: 100%;
	text-align: justify;
	text-justify: inter-ideograph;
}
img{
	width: 100%;
}
a{
	opacity: 1;
	transition: all 0.2s;
}
/*a:hover{ 
	opacity: 0.6;
}*/
.pc{
	display: block;
}
.sp{
	display: none;
}

	@media screen and (max-width:767px) {
		body {
			font-size: 14px;
			line-height: 1.7;
		}
		.pc{
			display: none;
		}
		.sp{
			display: block;
		}
	}


/* container
===================================================================== */
#container{
	width: 100%;
	min-width: 1040px;
	overflow: hidden;
}

	@media screen and (max-width:767px) {
		#container{
			width: 100%;
			min-width: 100%;
		}
	}


/* header 
===================================================================== */
header{
	position: fixed;
	z-index: 1000;
	background-color: rgba(255,255,255,0.5);
	width: 100%;
	height: 100px;
}
header h1{
	position: absolute;
	top: 87px;
	left: 50%;
	transform: translateX(-50%);
	width: 276px;
}

	@media screen and (max-width:767px) {
		header{
			height: 55px;
		}
		header h1{
			position: absolute;
			top: 14px;
			left: 50%;
			transform: translateX(-50%);
			width: 172px;
		}
	}


/* h_nav */
header .h_nav{
	display: flex;
	justify-content: center;
	align-items: center;
}
header .h_nav ul{
	display: flex;
	justify-content: center;
	padding: 35px 0;
}
header .h_nav ul li{
	padding: 0 16px;
	font-size: 15px;
	font-family: din-2014, sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0.2em;
}
header .h_nav ul li a{
	position: relative;
	display: inline-block;
	color: #000;
	text-decoration: none;
}
header .h_nav ul li a::before {
	content: '';
	position: absolute;
	bottom: 0%;
	left: 0px;
	width: 100%;
	height: 1px;
	background: #000;
	display: block;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform 0.4s cubic-bezier(1, 0, 0, 1)
}
header .h_nav ul li a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1)
}
header .h_nav p.insta{
	margin-left: 15px;
	margin-top: -3px;
	width: 19px;
	font-size: 0;
	line-height: 0;
}

	@media screen and (max-width:767px) {
		header .h_nav{
			display: none;
		}
	}


/* drawer_menu
===================================================================== */
/* btn_menu */
.btn_menu{
	display: none;
	position: fixed;
	z-index: 1001;
	top: 38px;
	right: 36px;
}

	@media screen and (max-width:767px) {
		.btn_menu{
			top: 15px;
			right: 15px;
		}
	}

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
}
.menu-trigger {
	display: block;
	width: 28px;
	height: 24px;
	cursor: pointer;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #000;
	border-radius: 0;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 11px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger span:nth-of-type(1) {
	animation: menu-bar01 .75s forwards;
}
@keyframes menu-bar01 {
	0% {
		transform: translateY(11px) rotate(45deg);
	}
	50% {
		transform: translateY(11px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
.menu-trigger span:nth-of-type(2) {
	transition: all .25s .25s;
	opacity: 1;
}
.menu-trigger span:nth-of-type(3) {
	animation: menu-bar03 .75s forwards;
}
@keyframes menu-bar03 {
	0% {
		transform: translateY(-11px) rotate(-45deg);
	}
	50% {
		transform: translateY(-11px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
.menu-trigger.active span:nth-of-type(1) {
	animation: active-menu-bar01 .75s both;
}
@keyframes active-menu-bar01 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(11px) rotate(0);
	}
	100% {
		transform: translateY(11px) rotate(45deg);
	}
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	animation: active-menu-bar03 .75s forwards;
}
@keyframes active-menu-bar03 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(-11px) rotate(0);
	}
	100% {
		transform: translateY(-11px) rotate(-45deg);
	}
}

/* drawer_menu */
.drawer_menu{
	display: block;
	position: fixed;
	z-index: 1000;
	top: 0;
	right: 0;
	width: 500px;
	height: 100%;
	padding: 100px 0;
	background-color: rgba(255,255,255,0.95);
	overflow: auto;
	transform: translate(100%);
	transition: all .4s;
}
.drawer_menu.open {
    transform: translate(0);
}
.drawer_menu ul{
	width: 8em;
	margin: 0 auto;
}
.drawer_menu ul li {
	text-align: center;
	padding: 20px 0;
	font-size: 22px;
	font-family: din-2014, sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0.2em;
}
.drawer_menu ul li a{
	position: relative;
	display: block;
	color: #000;
	text-decoration: none;
}
.drawer_menu ul li a::before {
	content: '';
	position: absolute;
	bottom: 0%;
	left: 0px;
	width: 100%;
	height: 1px;
	background: #818181;
	display: block;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform 0.4s cubic-bezier(1, 0, 0, 1)
}
.drawer_menu ul li a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1)
}
.drawer_menu p.insta{
	margin: 20px auto;
	width: 30px;
	font-size: 0;
	line-height: 0;
}

	@media screen and (max-width:767px) {
		.drawer_menu{
			width: 100%;
			padding: 50px 0;
		}
		.drawer_menu ul li {
			padding: 15px 0;
			font-size: 19px;
		}
	}

/* btn_contact */
.btn_contact{
	display: none;
	position: fixed;
	z-index: 300;
	top: 103px;
	right: 0;
}

	@media screen and (max-width:767px) {
		.btn_contact{
			top: 55px;
			width: 58px;
		}
	}

/* #contents
===================================================================== */
#contents{
	padding-top: 100vh;
}

/* footer
===================================================================== */
footer{
	position: relative;
	background: #000;
	color: #FFF;
	padding: 60px 0 30px;
}
footer .pagetop{
	position: absolute;
	right: 10px;
	top: -50px;
	width: 50px;
}

	@media screen and (max-width:767px) {
		footer{
			padding: 30px 0 30px;
		}
		footer .pagetop{
			position: absolute;
			right: 5px;
			top: -25px;
			width: 25px;
		}
	}

/* f_nav */
footer .f_nav{	
	padding: 0 0 40px;
}
footer .f_nav ul{
	display: flex;
	justify-content: center;
	align-items: center;
}
footer .f_nav li{
	font-size: 14px;
	line-height: 2.5;
	font-family: din-2014, sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0.2em;
}
footer .f_nav li::before{
	content: '　/　'
}
footer .f_nav li:first-child::before{
	content: ' '
}
footer .f_nav li a{
	color: #FFF;
	text-decoration: none;
}
footer .f_nav li a:hover{
	opacity: 0.6;
}
footer .f_nav .insta{
	width: 20px;
	line-height: 0;
	font-size: 0;
	margin-left: 40px;
	margin-top: -3px;
}

	@media screen and (max-width:767px) {
		footer .f_nav{	
			padding: 0 0 30px;
		}
		footer .f_nav li{
			font-size: 11px;
			line-height: 2.5;
			letter-spacing: 0.1em;
		}
		footer .f_nav .insta{
			width: 20px;
			margin-left: 20px;
			margin-top: -3px;
		}
	}


/* f_nav2 */
footer .f_nav2{	
	margin-top: 50px;
	padding: 30px 0 20px;
	border-top: 1px solid #FFF;
}
footer .f_nav2 ul{
	display: flex;
	justify-content: center;
	align-items: center;
}
footer .f_nav2 li{
	font-size: 14px;
}
footer .f_nav2 li::after{
	content: '　/　'
}
footer .f_nav2 li:last-child::after{
	content: ' '
}
footer .f_nav2 li a{
	background: url("../img/icon_blank.png") no-repeat right 1px center;
	background-size: 13px;
	padding-right: 20px;
	color: #FFF;
	text-decoration: none;
}
footer .f_nav2 li a:hover{
	opacity: 0.6;
}

	@media screen and (max-width:767px) {
		footer .f_nav2{	
			margin-top: 20px;
			padding: 20px 0 10px;
		}
		footer .f_nav2 ul{
			display: flex;
			flex-wrap: wrap;
		}
		footer .f_nav2 li{
			font-size: 10px;
			padding: 5px 0;
		}
		footer .f_nav2 li a{
			background: url("../img/icon_blank.png") no-repeat right 1px center;
			background-size: 9px;
			padding-right: 15px;
		}
	}

footer .f_logo{
	width: 260px;
	margin: 0 auto;
}
footer .copyright{
	text-align: center;
	font-size: 12px;
	letter-spacing: 0.1em;
}

	@media screen and (max-width:767px) {
		footer .f_logo{
			width: 180px;
		}
		footer .copyright{
			font-size: 10px;
		}
	}
</pre></body></html>