@charset "utf-8";
/* CSS Document */

/*-----  laterre comon
-----------------*/

 /* header */
#top-head {
    top: -86px;
    position: absolute;
    width: 100%;
    margin: 86px auto 0;
    line-height: 1;
    z-index: 999;
	padding: 0;
}
#top-head .inner {
    margin: 0 auto;
}
#top-head .inner:after {
    content: "";
    clear: both;
    display: block;
}
 
#top-head a,
#top-head {
}
#top-head .inner {
    position: relative;
}

 
/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    height: 86px;
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}
#top-head.fixed .logo {
}
#top-head.fixed #global-nav ul li a {
}
#link_os {
    position: absolute;
    right: 80px;
    top: 28px;
    width: 60px;
    z-index: 101;
} 
#link_os a {
	color: #B2CB37;
	font-size: 12px;
	text-align: left;
	display: block;
	width: 100%;
	font-weight: 600;
	text-decoration: none;
	line-height: 1.4;
} 
	#link_os a:hover {
		color: #666;
	} 
/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 30px;
    top: 30px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #B2CB37;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}

/*------- navigation 
-------------------------------------*/
    #top-head,
    .inner {
        padding: 0;
    }
    #top-head {
        top: 0;
        position: absolute;
        margin-top: 0;
		margin: 0;
    }
    /* Fixed reset */
    #top-head.fixed {
        padding-top: 0;
        background: transparent;
    }
    #mobile-head {
        background: #FEF9E4;
        width: 100%;
        z-index: 999;
        position: relative;
		height: 86px;
    }
    #top-head.fixed .logo,

		#top-head .logo img {
			width: 160px;
		}
    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -800px;
        background: rgba(255,255,255,0.9);
        width: 100%;
        text-align: left;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
		padding: 90px 0 30px 0 ;
    }
    #global-nav ul li {
	margin: 0;
	padding: 0;
    }

    #nav-toggle {
        display: block;
    }
    /* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
    /* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateY(856px);
        -webkit-transform: translateY(856px);
        transform: translateY(856px);
    }

/*-- ナビゲーション --*/
#global-nav ul {
	list-style: none;
	margin: auto ;
	text-align: center;
	display: block;
	margin-bottom: 40px;
}
	#global-nav ul li {
		list-style: none;
		display: inline-block;
		width: auto;
		text-align: center;
	}
		#global-nav ul li a {
			text-decoration: none !important; 
			color: #000;
		}
		#global-nav ul li a:hover {
			opacity: 0.8;
		}
	#global-nav .ulNav01 li {
		padding: 0 20px;
		vertical-align: top;
	}
	#global-nav .ulNav02 li {
		padding: 0;
		width: 150px;
		text-align: center;
		vertical-align: bottom;
	}

		#global-nav .ulNav02 li a span {
			display: block;
			font-size: 13px;
			margin-top: 10px;
		}
	#global-nav .ulNav03 li {
		padding: 0 20px;
		vertical-align: top;
	}
	#global-nav .ulNav04 li a {
		font-weight: 600;
		font-size: 18px;
	}


#global-nav #nav-toggle2  {
	width: 50px;
	margin: auto;
	clear: both;
	text-align: center;
	color: #B2CB37;
	padding-top:  20px;
	}
	#global-nav #nav-toggle2 em  {
	font-size: 30px;
	margin: 0;
	padding: 0;
	}
	#global-nav #nav-toggle2 span  {
	font-size: 	14px;
	margin: 0;
	}

@media only screen and (max-width:640px) {
	img {
  	max-width: 100%;
  	height: auto;
	}
#top-head {
    top: -60px;
    position: fixed;
    width: 100%;
    margin: 60px auto 0;
    line-height: 1;
    z-index: 999;
	padding: 0;
	height: 60px;
}
	.sp_only,
	.sp {
 		display: inherit;
	}

	br.sp {
  	height: 1px;
  	line-height: 0;
	}

	.pc {
		display: none;
	}
	
	.inner {
		margin: 0 auto;
		padding: 0;
		width: calc(100% - 10px);
    box-sizing: border-box;
	}
	.sp_pad_0-10 {
		padding: 0 10px;
	}
	.sp_pad_10 {
		padding: 10px;
	}
	#mobile-head {
    margin: 0 auto;
    padding: 5px;
    text-align: left;
    box-sizing: border-box;
		height: 60px;
  }
	#mobile-head h1 {
		padding: 6px 0 0 3px;
		margin: 0;
		width: auto;
		float: left;
		height: auto!important;
	}
		  #mobile-head h1 img {
			height: 40px !important;
			height: auto;
		  }
	#mobile-head #link_os {
		line-height: 1.2;
		margin: -15px -25px 0 0;
		padding: 0;
		float: right;
		width: auto;
		display: block;
		
	}

	#nav-toggle {
    position: absolute;
    right: 3.125%;
    top: 15px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 9999;
}
	
	#global-nav {
   		position: absolute;
      /* 開いてないときは画面外に配置 */
      top: -1350px;
      background: rgba(255,255,255,0.9);
      width: 100%;
      text-align: left;
      -webkit-transition: .5s ease-in-out;
      -moz-transition: .5s ease-in-out;
      transition: .5s ease-in-out;
			padding: 100px 0 30px 0 ;
		height: calc(100vh - 100px);
		overflow-y: scroll;
    }
	#global-nav::-webkit-scrollbar {
  display: none;
}
	#global-nav {
  list-style: none!important;
}

	
	/* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateY(1330px);
        -webkit-transform: translateY(1330px);
        transform: translateY(1330px);
    }
	#global-nav .ulNav01 {
		margin: 0 0 20px 0 ;
	}
	#global-nav .ulNav01 img {
		width: auto;
		height: 75.5px;
	}
	
	#global-nav .ulNav01 li {
		padding: 0;
		vertical-align: top;
		background: #fff;
		width: 28vw;
		height: 28vw;
		display: inline-block;
		margin: 0 0 5px 0  !important;
	}
		#global-nav .ulNav01 li a {
			vertical-align: middle;
			text-align: center;
			display: table;
		width: 28vw;
		height: 28vw;
		}
			#global-nav .ulNav01 li a span {
				display: table-cell;
				text-align: center;
				vertical-align: middle;
				width: 28vw;
				height: 28vw;
			}
			#global-nav .ulNav01 li a span img {
				max-height: calc(100% - 40px);
			}
	#global-nav .ulNav01 li:nth-child(1),
	#global-nav .ulNav01 li:nth-child(2),
	#global-nav .ulNav01 li:nth-child(3) {
		margin-bottom: 35px;
	}
	#global-nav .ulNav02 {
		margin-bottom: 20px !important;
	}	
	#global-nav .ulNav02 li {
		padding: 5px 10px 30px 10px ;
		vertical-align: top;
		width: 40vw;
		display: inline-block;
		margin: 0 0 15px 0  !important;
		position: relative;
		text-align: center;
	}
	#global-nav .ulNav02 li:nth-of-type(odd) {
		border-right:  1px solid #999;
	}
	#global-nav .ulNav02 li:last-of-type {
		border-right: none !important;
	}
	#global-nav .ulNav02 li img {
		position: relative;
		margin: auto;
		height: 50px !important;
		width: auto !important;
	}
			#global-nav .ulNav02 li a span {
				text-align: center;
				position: absolute;
				border-bottom: 5px;
				display: block;
				width: 40vw;
			}
	#global-nav .ulNav02 li:last-child {
		margin-bottom: 0;
	}


	
	#global-nav .ulNav03 {
		margin-bottom: 20px;
		display: inline-block;
	}
	
	#global-nav .ulNav03 li {
		display: inline-block !important;
		text-align: center;
		vertical-align: top;
		width: 40vw;
		padding: 0 !important ;
		border-top: 1px #999 solid;
	}
	
	#global-nav .ulNav03 li a {
		font-size: 13px;
		display: block;
		padding: 15px 0px !important;
		border: none !important ;
	}
	
	#global-nav .ulNav03 li:last-child a {
		border-bottom: 1px #000 solid;
	}
	
	#global-nav .ulNav04 {
		margin-bottom: 10px;
	}
	footer {
		padding: 10px 0 !important ;
	}
		footer h2 img {
			width: 180px !important;
		}
	footer .fNav01 {
		overflow: hidden;
	}
	

	footer {
		padding: 0;
		margin: 0;
	}
	footer .fNav01 {
		display: none !important;
	}
	footer .fNav02  {
		display: none !important;
	}
	footer .fCopy {
		padding: 0;
		margin: 0;
	}
	footer .fCopy img {
		width: 220px;
	}
}

/*--TOPへ戻る----*/
#page-top {
    position: fixed;
    bottom: 10px;
    right: 10px;
    font-size: 14px;
}
#page-top a {
    background:rgba(178,203,55,0.8);
    text-decoration: none;
    color: #fff;
    width: 40px;
	line-height: 40px;;
    text-align: center;
    display: block;
    border-radius: 5px;
}
#page-top a:hover {
    text-decoration: none;
    background: #999;
}


/*-- insta -----*/
/*--pc  ------------------------------------*/
@media screen and (min-width: 641px) {

}/*--pc--*/
/*--sp  ------------------------------------*/
@media screen and (max-width: 640px) {
	.insta_wrap {
		background: #fff;
	}
		.insta_box p {
		}
			.insta_box p img {
				width: 100px !important;
				height: auto;
			}
				.sbi_photo img {
					display: none;
				width: 45vw !important;
				height: 45vw !important;
			}
}/*--sp--*/

