@charset "utf-8";
/* CSS Document */

/* PC時からハンバーガーメニューの場合は#sp_boxのみ削除  */
#open_menu,#sp_box {
	display:none;
}

/*****************************************************************

	色の設定

******************************************************************/
/* ハンバーガーメニューの線 */
#spicon span{
	border-bottom:2px solid #64aaa0;
}
/* ハンバーガーメニュー【MENU】のテキスト色（いらない場合はdisplay:none;） */
#spicon:before{
	display: none;
}
/* 開閉後、ハンバーガーメニューの色を変更する場合 */
#spicon.m_active span:nth-child(1) {
    /*border-color: #FFF;*/
}
#spicon.m_active span:nth-child(3) {
    /*border-color: #FFF;*/
}
#spicon.m_active:before {
    /*color: #FFF;*/
}
/* 開閉後の背景の色 */
#center_box {
    background-color: rgba(255,255,255,0.96);
}

/**************************************
	ハンバーガーアイコン
***************************************/

#spicon {
	position:fixed;
	right:70px;
	top:40px;
	background-position:50% 0;
	background-repeat:no-repeat;
	background-size:cover;
	width:60px;
	height:60px;
    border:none;
    background-color:#fff;
    box-shadow: 0 4px 35px rgba(0, 0, 0, 0.05);
    padding: 18px 13px;
    
	z-index:9999;
	cursor:pointer;
    display: flex;
    flex-direction: column;
    justify-content: space-between;

}
#spicon:before {
    content: "MENU";
    position: absolute;
    bottom: -18px;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 12px;
	transition: all .4s;
}
#spicon span {
	width:100%;
	transition: all .4s;
}

/* ボタンを押した後のボタンのスタイル */
#spicon.m_active span:nth-child(1) {
    transform: translateY(8px) rotate(-45deg);
}

#spicon.m_active span:nth-child(2) {
	opacity:0;
}

#spicon.m_active span:nth-child(3) {
    transform: translateY(-8px) rotate(-135deg);
}
#spicon.m_active:before {
    content: "CLOSE";
}

/**************************************
	メニューオープン
***************************************/
#open_menu {
	background-color: rgba(0,0,0,0.18);
	background-position:50% 0;
	background-repeat:no-repeat;
	background-size:cover;
	position:fixed;
	z-index:9990;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
/***********/
#center_box {
	position:fixed;
	left:0;
	top:0;
	width:100%;
	margin:0;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	overflow-y:scroll;
	padding:160px 50px 60px;
}
/**************************************
	MENUの中身
***************************************/



.sp_menu_nav {
	display:flex;
	flex-direction:column;
	width:100%;
	border-top:1px solid rgba(51,51,51,0.12);
	margin-top:35px;
	gap:0;
}

.sp_menu_nav li {
	border-bottom:1px solid rgba(51,51,51,0.12);
	text-align:center;
}

.sp_menu_nav a {
	color:#333;
	font-size:32px;
	font-weight:700;
	letter-spacing:0;
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:88px;
	padding-left:20px;
	padding-right:20px;
}

.sp_menu_inner {
	width:100%;
	max-width:820px;
	background-color:#fff;
	box-shadow:0 30px 60px rgba(0,0,0,0.12);
	padding:50px 40px 40px;
	position:relative;
	margin-left:auto;
	margin-right:auto;
}

.sp_menu_inner::before {
	background:linear-gradient(180deg,#64aaa0 0%,#3c9f91 100%);
	content:"";
	left:0;
	position:absolute;
	top:0;
	height:100%;
	width:8px;
}

.sp_menu_logo {
	text-align:center;
}

.sp_menu_logo a {
	display:inline-block;
}

.sp_menu_logo img {
	height:auto;
	max-width:100%;
}

.sp_menu_top {
	margin-top:24px;
	text-align:center;
}

.sp_menu_top a {
	color:#64aaa0;
	display:inline-flex;
	align-items:center;
	font-size:16px;
	font-weight:700;
	gap:16px;
	letter-spacing:2.4px;
}

.sp_menu_top a::after {
	background-color:#64aaa0;
	content:"";
	display:block;
	height:1px;
	width:60px;
}

.sp_menu_button_wrap {
	display:flex;
	gap:20px;
	margin-top:40px;
}

.sp_menu_button {
	width:calc((100% - 20px) / 2);
}

.sp_menu_button a {
	color:#fff;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:18px;
	font-weight:700;
	gap:10px;
	min-height:76px;
	padding-left:20px;
	padding-right:20px;
}

.sp_menu_button a span {
	display:flex;
	align-items:center;
	justify-content:center;
	width:30px;
}

@media only screen and (max-width: 1024px){
#sp_box {
	display:block;
}    

.h_nav {
	display:none;
}

}

@media only screen and (max-width: 768px){
/**************************************
	ハンバーガーアイコン
***************************************/

#center_box {
	padding:120px 25px 50px;
}

#spicon {
	right:30px;
	top:30px;
	width:52px;
	height:52px;
	padding:16px 11px;
}

.sp_menu_nav a {
	font-size:24px;
}

.sp_menu_inner {
	padding:40px 25px 30px;
}

.sp_menu_top a::after {
	width:40px;
}

.sp_menu_button_wrap {
	flex-direction:column;
	gap:12px;
	margin-top:30px;
}

.sp_menu_button {
	width:100%;
}

.sp_menu_button a {
	font-size:16px;
	min-height:68px;
}
    
}


