/* CSS Document */




/*============================================================================

	header

============================================================================*/
#header {
    position: absolute;
    width: 100%;
    padding-top: 50px;
    z-index: 100;
}
#header .inner {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}



/*------------------------------ ロゴ ------------------------------*/
#header_logo {
    margin-left: 3%;
}
#header_logo img {
    display: block;
    width: 100px;
    height: auto;
}





/*============================================================================

	nav

============================================================================*/
nav {
    margin-right: 3%;
}
nav ul {
    display: flex;
    align-items: center;
    gap: 20px;
}
nav ul li a {
	position:relative;
    color: #ece4dd;
    font-size: 13px;
	font-family: "Josefin Sans", sans-serif;
  	font-optical-sizing: auto;
    transition: all 0.3s;
}
nav ul li a:hover {
    color: #a2531f;
}



/*------------------------------ btn ------------------------------*/
nav ul li:last-child {
    margin-left: 10px;
}
nav ul li:last-child a {
    background: rgba(255,255,255,.7);
    padding: 10px 30px 8px;
    color: #1e0906;
    border: 1px solid #FFF;
}
nav ul li:last-child a:hover {
    background: none;
    color: #fff;
}



/*------------------------------ hoverのボーダー ------------------------------*/
nav li a::before{
    position: absolute;
	left: 0;
	right:0;
	bottom: -8px;
	width:100%;
	height: 1px;
	margin:auto;
	background-color: #a2531f;
	transition: 0.15s  ease-out;
	transform: scaleX(0);
	content: "";
	z-index: 1;
}
nav li a:hover::before{
	transform: scaleX(1);
}
nav ul li:last-child a:hover::before {
    display: none;
}



/*------------------------------ PC＊スクロール後設定 ------------------------------*/
#header.HeightMin{
	position: fixed;
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from { opacity: 0; transform: translateY(-170px);}
  to { opacity: 1; transform: translateY(0);}
}







/*============================================================================

	▼▽▼▽▼▽▼▽▼▽ここからSP用▼▽▼▽▼▽▼▽▼▽

============================================================================*/
@media screen and (max-width:640px) {
	
	
	
	


/*============================================================================

	header

============================================================================*/
header {
	display:none;
}

/*------------------------------ h1 ------------------------------*/
.ham_nav h1{
	position:relative;
	top: 0;
	width:100%;
	height: 25px;
	background: rgba(0,0,0,.7);
	text-align: center;
	font-size: 10px;
	line-height: 25px;
	letter-spacing: 0;
	color: #fff;
}


/*------------------------------ ロゴ ------------------------------*/
#sp_header_logo {
	position: absolute;
	max-width: 60px;
	padding-top: 25px;
	margin-left: 6%;
}
#sp_header_logo img {
	position: relative;
	z-index: 999;
}



/*============================================================================

	navi

============================================================================*/
nav{
	display:none;
}
.ham_nav {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:85px;
	z-index: 9998;
}
.ham_nav dl{
}
.ham_nav dl dt {
	cursor:pointer;
}
.ham_nav dl dd {
	position: absolute;
	right: -100%;
	width: 100%;
	height: 1000px;
	background: rgba(162,83,31,.5);
	transition: all 0.5s ease-in-out;
	z-index: 9999;
}
.ham_nav dl dd.active {
	right: 0%;
}
.ham_nav ul{
	position: absolute;
	right: -100%;
	width: 90%;
	min-width: 300px;
	height: 1000px;
	padding-top: 70px;
	background: url("../images/bg_01.jpg");
    background-size: 32px 7px;
	transition: all 0.5s ease-in-out;
	z-index: 99999;
}
.ham_nav ul.active {
	right: 0%;
}
.ham_nav ul li {
	position: relative;
	line-height:3.0;
	text-align: center;
	font-family: "Josefin Sans", sans-serif;
  	font-optical-sizing: auto;
	font-weight: 300;
}
.ham_nav ul li a {
	color:#fff;
}
	
/*------------------------------ btn　お問い合わせ ------------------------------*/
.ham_nav li:last-of-type a {
	position: relative;
	display: block;
	width: 80%;
	height: 55px;
	margin: 30px auto 0;
	color: #fff;
	text-align: center;
	line-height: 55px;
	border: 1px solid #FFF;
	transition: ease .2s;
}
	

/*------------------------------ ハンバーガー ------------------------------*/
.ham_nav dt a {
    position: absolute;
    display: block;
    top: 45px;
    right: 25px;
    width: 42px;
    height: 42px;
    z-index: 9999999;
    cursor: pointer;
}
.ham_nav dt a span {
    position: absolute;
    display: block;
    width: 24px;
    height: 1px;
    background: #fff;
    transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -webkit-transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    border-radius: 2px;
    left: 9px;
}
.ham_nav dt a span:first-child {
    top: 17px;
}
.ham_nav dt a span:last-child {
    bottom: 17px;
}
.ham_nav dt a:hover span {
    width: 28px;
    left: 7px;
}
.ham_nav dt a.active span:first-child {
    top: 50%;
    transform: translateY(-50%) rotate(30deg);
}
.ham_nav dt a.active span:last-child {
    bottom: 50%;
    transform: translateY(50%) rotate(-30deg);
}
.ham_nav dt a.active:hover span {
    width: 28px;
    left: 7px;
}
.ham_nav dt a.active:hover span:first-child {
    transform: translateY(-50%) rotate(30deg) scale(1.1);
}

.ham_nav dt a.active:hover span:last-child {
    transform: translateY(50%) rotate(-30deg) scale(1.1);
}
.ham_nav dt a::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    transition: all 0.3s ease;
}
.ham_nav dt a:hover::before {
    width: 42px;
    height: 42px;
    border-color: rgba(255, 255, 255, 0.4);
    background: rgba(255, 255, 255, 0.05);
}
.ham_nav dt a.active::before {
    transform: translate(-50%, -50%) rotate(90deg);
}
	


}






