@charset "utf-8";
.burger-btn, .sp-navi { display: none; }
@media screen and (max-width:980px) {
	.header-top,.header-link-wrap { display:none; }
	.sp-navi { display:block; }
  /* ----------------------- */
	/* base_sp
  /* ----------------------- */
  /* デフォルトのbuttonスタイルをリセット */
	button {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		background: transparent;
		border: 0;
		border-radius: 0;
		color: inherit;
		cursor: pointer;
		font: inherit;
		margin: 0;
		outline: none;
		padding: 0;
		vertical-align: middle;
	}
	.header { padding:8px 0px; }
	.header-nav-sublist { position: inherit; background-color:inherit; box-shadow:none;
	top: inherit; width: inherit; visibility: visible; opacity: 1; z-index: 2; }
.header-nav-item:hover .header-nav-sublist { top: inherit; }
.header-nav-subitem a { display:block; font-size:90%; line-height:1.3; padding:12px 0px 12px 8px; }
    
/* 以下、ハンバーガーボタン */
	.burger-btn {
		display: block;
		height: 40px;
		position: relative;
		width: 40px;
		z-index: 1002;
	}
  
	.bar {
		background-color: #444;
		display: block;
		height: 2px;
		left: 50%;
		position: absolute;
		transform: translateX(-50%);
		width: 24px;
	}
	.bar_top {
		top: 10px;
	}
	.bar_mid {
		top: 50%;
		transform: translate(-50%,-50%);
	}
	.bar_bottom {
		bottom: 10px;
	}
	.burger-btn.close .bar_top {
		transform: translate(-50%,10px) rotate(45deg);
		transition: transform .3s;
	}
	.burger-btn.close .bar_mid {
		opacity: 0;
		transition: opacity .3s;
	}
	.burger-btn.close .bar_bottom {
		transform: translate(-50%,-8px) rotate(-45deg);
		transition: transform .3s;
	}
  /* 以下、ハンバーガーメニュー */
	.nav-wrapper {
		visibility: hidden; height: 100vh;
		left: 0; position: fixed; top: 0; display:none; background-color: #fff;
		width: 100vw; opacity: 0; transition: opacity .5s; z-index: 1000; overflow: auto;
}
	.nav-wrapper.fade { opacity: 1; visibility: visible; display:block; }
	.header-nav { width: 100%; height: 100%; z-index: 2; }
	.header-nav-list { margin-top: 0px; padding:64px 4% 40px 6%; display:block; }
	.header-nav-item { text-align:left; width:100%; }
.header-nav-link { display:block; position:relative; color:var(--text-color); font-size:14px; line-height:1.2; padding:16px 0px; border-bottom:1px solid #ccc;  }
	.header-nav-item:last-child .header-nav-link { border-bottom:none; }
.header-nav-item:first-child .header-nav-link:after { content:none; }
	.header-nav-link:before { 
    position: absolute; top: 0; right: 16px; background-color:inherit;
    bottom: 0;
    display: block;
    margin: auto 0;
    border-top: solid 2px #444;
    border-right: solid 2px #444;
    width: 8px; height: 8px; transform: rotate(45deg); }
	.main-menu-name { color:#333; font-size:120%;}

	.header-nav-item .no-link { border-bottom:0px; padding-bottom:8px; }
	.header-nav-item .no-link:before { transform: rotate(135deg); }
	
}