@charset "UTF-8";

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

*   Navi CSS
*   Since:2025-08
*   Editor:ricostyle

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


/*PC用のcssを記述*/

/* COMMON */
#container {position:relative;height:auto;height:100%;width:100%;overflow:hidden;margin:0;padding:0;}
#contents{position:relative;width:100%;overflow:hidden;background:#FFF;}
.wrap{position:relative;margin:0 auto;width:100%;max-width:1060px;height:100%;}



/* HEAD */
#header {position: absolute;background:#FFF;opacity:0.9;height: 100px;width: 100%;top: -100px;left: 0px;margin-top: 100px;z-index: 50;line-height: 1;box-shadow: 0px 6px 14px 0px rgba(0, 0, 0, 0.1);}
#header.fixed{position: fixed;top: 0;margin-top: 0;height: 100px;transition: top 0.6s ease-in;-webkit-transition: top 0.6s ease-in;-moz-transition: top 0.6s ease-in;}
#header .wrap{text-align:left;}	

#header h1{padding-top:25px;}
#header h1 img.logo1{width:65px;}
#header h1 img.logo2{width:250px;padding-left:20px;padding-top:10px;}

#header h2#lead{position:absolute;top:3px;right:0;display:block;font-size:0.9em;color:#777;line-height:1.2em;}

#header .head_contact{position:absolute;right:50px;top: 70%;transform: translateY(-70%);display:inline-block;background:#5F61AB;text-align:center;border-radius: 30px;}
#header .head_contact a{display:block;padding:18px 40px;color:#FFF;font-weight:600;}
#header .head_contact a:hover{text-decoration:none;}
#header .head_contact a span{background :url(../img/icon_dotwhite.png) no-repeat left 8px;padding-left:20px;}
#header .head_contact:hover{opacity:0.8;}



/* PAGE UP */
#page-top a{display:block;width:110px;height:60px;filter:alpha(opacity=50);-moz-opacity: 0.5;opacity: 0.5;background:#5F61AB url(../img/icon_totop.png) no-repeat center center;display:block;text-indent:-9999px;position:fixed;bottom:0px;right:0;}
#page-top a:hover{filter:alpha(opacity=90);-moz-opacity: 0.9;opacity: 0.9;}



/* FOOT */
#footer{position:relative;background:#1E2088;text-align:center;}
#footer img{width:30%;max-width:130px;height:auto;position:absolute;top:-50px;let:50%;transform: translateX(-50%);}
#footer p{color:#FFF;font-size:0.85em;padding:110px 0 30px;}



/* NAVI ミーンメニュー */
#SPmenu nav{text-indent: -9999em;}/* 一瞬表示されるメニューリストの非表示 */

.mean-container p{
display:inline-block;
position:absolute;left:0;top:15px;
font-family: "Noto Sans JP";
font-size:0.75em !important;}

.mean-container .mean-bar {
position:absolute;right:0;top:0;
height:100%;
z-index: 99999;
}

/* メニュー三本線ボタン */
.mean-container a.meanmenu-reveal {
	width: 32px;
	height: 30px;
	padding:12px 0 10px 55px;
	display:inline-block;
	position: absolute;right:0;top:0;bottom:0;margin:auto 0;
	cursor: pointer;
	color:  #5F61AB;
	font-weight:500;
	font-size:40px;
}
.mean-container a:hover.meanmenu-reveal{
text-decoration:none;}

/* メニュー三本線ボタン */
.mean-container a.meanmenu-reveal span {
	display: block;
	background: #5F61AB;
	height: 4px;
	margin-top:9px;
	border-radius:10px;
}

.mean-container .mean-nav {margin-top: 100px;}
.mean-container .mean-nav ul {width: 100%;max-width:240px;list-style-type: none;}
.mean-container .mean-nav ul li {position: relative;width: 100%;float: left;}
.mean-container .mean-nav ul li a {
	display: block;
	
	padding: 15px 30px;
	margin: 0;
	text-align:left;
	color: #FFF;
	background-color: #5F61AB;
	font-weight:300;
	border-top: 1px dotted #fff;
	text-decoration: none;
	text-transform: uppercase;
}
.mean-container .mean-nav ul li a:hover{background-color:#1E2088;}

.mean-container .mean-push {float: left;width: 100%;padding: 0;margin: 0;clear: both;}






@media only screen and (max-width:960px) {
/*スマホ・タブレット用のcssを記述*/

/* COMMON */
.wrap{width:96%;max-width:960px;}
}



@media only screen and (max-width:720px) {
/*ヘッド用のcssを記述*/

/* COMMON */
.wrap{max-width:720px;}


/* HEAD */
#header h1{padding-top:30px;}
#header h1 img.logo1{width:55px;}
#header h1 img.logo2{width:230px;padding-left:10px;padding-top:12px;}

#header h2#lead{top:2px;left:0;font-size:0.75em;color:#666;}

#header .head_contact{right:45px;top: 65%;transform: translateY(-65%);}
#header .head_contact a{padding:10px 20px 13px;color:#FFF;font-weight:500;font-size:0.9em;}

}



@media only screen and (max-width:559px) {
/*ヘッド用のcssを記述*/

/* COMMON */
.wrap{width:96%;max-width:559px;}


/* HEAD */
#header h2#lead{font-size:0.7em;}
#header .head_contact{display:none;}
}




@media only screen and (max-width:428px) {
/*スマホ・タブレット用のcssを記述*/

/* COMMON */
.wrap{max-width:428px;}




/* FOOT */
#footer{}
#footer img{min-width:110px;}
#footer p{padding:80px 0 20px;}

}
 

	
