/* navi-opener
-----------------------------------------------------*/
@media screen and (min-width: 768px) {
.navi-opener{ display: none; }
}
@media screen and (max-width: 769px) {
.navi-opener{
	--opener-size: 50px;
	--navi-color: #cd91be;
	position			: fixed;
	right				: 5px;
	top: 0;
	z-index				: 10;
	cursor				: pointer;
	width				: var(--opener-size);
	height				: var(--opener-size);
	padding				: 0;
}
.navi-opener .opener:after{
	position			: relative;
	bottom				: calc(var(--opener-size) * -1 );
	display				: block;
	width				: var(--opener-size);
	text-align			: center;
}
.navi-opener .bar::before,
.navi-opener .bar::after,
.navi-opener .bar{
	transition			: all 0.2s ease 0s;
	display				: block;
	position			: absolute;
	top					: 50%;
	transform			: translateY(-50%);
	width				: calc(var(--opener-size) / 2);
	height				: 3px;
	background			: var(--navi-color);
	border-radius		: 2px;
}

.navi-opener .bar{
	right				: calc(var(--opener-size) / 4);
}
.navi-opener .bar::before,
.navi-opener .bar::after{
	content				: " ";
	right				: 0;
}
.navi-opener .bar::before	{ margin-top: -9px; }
.navi-opener .bar::after	{ margin-top: 9px; }

/* open */
.navi-opener.open{
	top					: -3px;
}
.navi-opener.open .bar { background: transparent; }
.navi-opener.open .bar::before,
.navi-opener.open .bar::after	{ margin-top: 0; }
.navi-opener.open .bar::before	{ transform: rotate(-45deg); }
.navi-opener.open .bar::after	{ transform: rotate(-135deg); }
}

/*-----------------------------------------------------
 responsive-navi
-----------------------------------------------------*/
@media screen and (max-width: 768px) {
.responsive-navi{
	display				: none;
	position			: fixed;
	left				: 0px;
	top					: 0px;
	z-index				: 10;
	width				: 100%;
	padding				: 90px 0 0 0;
	height				: 100%;
	background			: var(--base-color);
}
.responsive-navi .container{
	background			: transparent;
	overflow			: visible;
	margin				: 0 auto;
	height				: auto;
	width				: var(--content-width);
}
}