/* CSS Document */
*{
	margin:0px;
	padding:0px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
	}
html {
	margin:0px;
	padding:0px;
	overflow-y : scroll;
	}
body {
	margin:0px auto;
	padding:0;
	position:relative;
	font-size:13px !important;
	*font-size:small;
	*font:x-small;
	line-height:100%;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","ＭＳ Ｐゴシック", "MS P Gothic", 
	Verdana, Arial, Helvetica, sans-serif;
	font-weight:normal;
	}
.container {
	margin:0px auto;
	padding:0px 20px;
	width: 1040px;	
	font-size:100%;
	font-size:inherit;
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	-o-box-sizing:content-box;
	-ms-box-sizing:content-box;
	box-sizing:content-box;
	}
@media screen and (max-width: 768px)  {
	.container {
	margin:0px 2%;
	padding:0px 0px;
	width: 96%;	
	}
}

/* clearfix */
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	}
/* 旧clearfix要素 */
.clear {
	display:block;
	clear:both;
	}

h1, h2, h3, h4, h5, h6 , p , b {
	margin:0;
	padding:0;
	font-size:100%;
	font-weight:normal;
	}
h1, h2, h3, h4, h5, h6 {
	clear:both;	
	line-height:140%;
	}
p {
	line-height:140%;
	}
img {
	border:none;
	vertical-align:top;
	margin:0;
	padding:0;
	} 
a , a:link , a:visited {
	text-decoration:none;
	color:#000;
	}
a:hover {
	text-decoration:none;
	}
a:hover {
	-ms-filter: "alpha( opacity=80 )";
	filter: alpha( opacity=80 );
	opacity: 0.8;
	}
a:hover {
	-webkit-transition: opacity 180ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
	-moz-transition: opacity 180ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
	-o-transition: opacity 180ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
	-ms-transition: opacity 180ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
	transition: opacity 180ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
	}
header, section, footer, aside, nav, article , main {
	display:block;
	text-align: left;
	}
table {
	border-collapse:collapse;
	border-spacing:0;
	}
input:hover {
	-ms-filter: "alpha( opacity=50 )";
	filter: alpha( opacity=50 );
	opacity: 0.5;
	}
.fontEn {
	font-family: 'Fjalla One', sans-serif;
	letter-spacing:0em;
	}
ul {
	list-style:none;
	}

/* iPad背景切れ対策 */
@media screen and (min-width:769px){
	body{
		min-width:1080px;
	}
}

/* レスポンシブ対応 */
/* PC（769px以上）で見た場合非表示 */
.sp {
	display:none;
	}
@media screen and (max-width: 768px)  {
/* スマホ（768px以下）で見た場合表示 */
.sp {
	display:block;
	}
/* スマホ（768px以下）で見た場合非表示 */
.pc {
	display:none;
	}
}


/* 画像　範囲いっぱい */
.imgMax {
	width:100%;
	}
.imgMax img {
	width:100%;
	}
}


/*header
------------------------------------------------------------------------------------------------------*/

/*上段header
----------------------*/
header{
	margin:0px auto;
	padding:0px;
	width:100%;
	background-color:#FFF;
}

#headerOut{
	margin:0px auto;
	padding:0;
	width:100%;
	height:64px;
}
@media screen and (max-width: 768px){
	#headerOut {
		height:42px;
	}
}
.headLogo{
	float:left;
	margin:0px auto;
	width:50%;
}
#headLogoNissei{
	margin:11px 0px 0px 0px;
	text-align:left;
	width:190px;
	float:left;
}
#headLogoNissei img {
	width:100%;
}
@media screen and (max-width:768px){
	#headLogoNissei{
		margin:7px 0px 0px 0px;
		width:120px;
	}
}

.headText{
	float:left;
	display:block;
	margin:26px 0px 0px 20px;
}
@media screen and (max-width:768px){
	.headText{
	display:none;
	}
}

.headSub{
	float:right;
	margin:0% auto;
	width:50%;
	}
#headIcon{
	float:right;
	margin:12px 0px 0px 0px;
	width:138px;
	text-align:right;
	}
@media screen and (max-width:768px){
	#headIcon{
		margin:5px 0px 0px 0px;
		width:100%;
	}
}
#headIcon li{
	float:right;
	margin-right:8px;
	width:38px;
}
#headIcon li img {
	width:100%;
}
@media screen and (max-width:768px){
	#headIcon li{
		margin-right:4px;
		width:32px;
	}
}
#headIcon li:first-child{
	margin-right:0px;
}
@media screen and (max-width: 768px){
	#headLogoSub{
		margin:4% 0px 4% 0px;
		width:150px;
	}
}


/*以上、トップページと共通要素
------------------------------------------------------------------------------------------------------*/


/*下段header（下層ページ独自要素）
------------------------------------------------------------------------------------------------------*/
#headerMain{
	margin:0 auto;
	width:100%;
	background:url(../images/bk_slHeader_01.png) repeat-x;
	background-position:center top;
}
@media screen and (max-width:768px){
	#headerMain{
		background:url(../images/bk_slHeader_01.png) repeat-x;
		background-position:-100px bottom;
		background-size:auto 100%;
		height:80px;
	}
}
@media screen and (max-width:480px){
	#headerMain{
		background:url(../images/bk_slHeader_01.png) repeat-x;
		background-position:-160px bottom;
		background-size:auto 100%;
		height:54px;
	}
}


#headerMain .container {
	position:relative;
}

.spLandLogo{
	width:30%;
	margin-left:1%;
}
@media screen and (max-width:768px){
	.spLandLogo{
		width:230px;
		margin-left:0;
	}
}
@media screen and (max-width:480px){
	.spLandLogo{
		width:160px;
	}
}


.slHeadLogo{
	padding:1% 0 10.5%;
}
.slHeadLogo a{
	display:block;
}
@media screen and (max-width:768px){
	.slHeadLogo{
		padding:6px 0px;
	}
}
.slHeadLogoPosition{
	position:absolute;
	left:486px;
	bottom:0px;
	pointer-events:none;
}
@media screen and (max-width:768px){
	.slHeadLogoPosition{
		position:absolute;
		left:238px;
		top:14px;
		pointer-events:none;
		width:180px;
	}
}
@media screen and (max-width:480px){
	.slHeadLogoPosition{
		position:absolute;
		left:166px;
		top:14px;
		pointer-events:none;
		width:120px;
	}
}
@media screen and (max-width:340px){
	.slHeadLogoPosition{
		display:none;
	}
}

.slHeadChara{
	margin:0px auto 0 auto;
	display:block;
}
@media screen and (max-width:768px){
	.slHeadChara{
		width:100%;
	}
}



/*mainContents
------------------------------------------------------------------------------------------------------*/
#mainContents {
	position:relative;
	width:1040px;
	margin:0 auto;
	display:block;
	/*min-height:800px;*/
}

@media screen and (max-width:768px){
	#mainContents {
		width:100%;
	}
}

#mainContents:after {
	content:".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	}
/* fit-sidebar */
.fit-sidebar-fixed{
	margin-top:0!important;
	margin-bottom:0!important;
	position:fixed;
}
.fit-sidebar-blank{
	z-index:0;
	background-color:transparent;
	visibility:hidden;
}


/* Pc SideMenu
------------------------------------------------------------------------------------------------------*/
#sideWrap {
	position:relative;
	width:234px;
	float: left;
}
@media screen and (max-width:768px){
	#sideWrap {
		display:none;
	}
}

/* Sp SideMenu
------------------------------------------------------------------------------------------------------*/
/* #sp MenuBtn
----------------------------*/
#slMenuBox {
	display:none;
	} 
@media screen and (max-width:768px){
#slMenuBox {
	display:block;
	} 
}

	/* gNav */
	#gNavOut{
		width:100%;
		padding:14px 0 0 0;
		border-top:none;
		background:rgba(84,194,240,0.7);
		position:absolute;
		top:-900px;
		transition:top 0.5s;
		z-index:800;
	}
	#gNavOut.active{
		top:0;
	}
	#listGnav{
		display:block;
		width:100%;
		padding:0;
		margin:0 auto;
	}
	/* キーopen */
	#gNavOpen {
		position:absolute;
		top:-78px;
		right:6px;
		z-index:1;
		display:inline-block;
		cursor:pointer;
		width:40px;
		height:38px;
		background:#53c1ef;
		background-size:contain;
		z-index:9999;
		color:#FFF;
		margin:10px 10px;
		border:2px solid #FFFFFF;
		border-radius: 5px;
		box-sizing:content-box;
	} 
	@media screen and (max-width:480px){
	#gNavOpen {
		position:absolute;
		top:-58px;
		right:0px;
		} 
	} 

	#gNavOpen .line{
		display:block;
		width:21px;
		height:2px;
		background-color:#FFFFFF;
		position:absolute;
		left:9px;
	}
	#gNavOpen .line01{
		top:6px;
		transition:transform 0.3s;
	}
	#gNavOpen .line02{
		top:11px;
	}
	#gNavOpen .line03{
		top:16px;
		transition:transform 0.3s;
	}
	#gNavOpen .spTxtBtn{
		position:absolute;
		top:23px;
		left:3px;
		font-size:0.6rem;
		font-weight:bold;
		text-align:center;
	}
	/* キーclose */
	#gNavOpen.active .line01{
		top:12px;
		transform:rotate(45deg);
	}
	#gNavOpen.active .line02{
		opacity:0;
	}
	#gNavOpen.active .line03{
		top:12px;
		transform:rotate(135deg);
	}



/* common sideMenu 
------------------------------------------------------------------------------------------------------*/
.sideMenuTittle{
	margin:12px 0px 10px 0px;
}

@media screen and (max-width:768px){
	.sideMenuTittle{
	display:none;
	} 
}

#sidebar{
	width:100%;
	height:100%;
	position:relative;
	background:#FFFFFF;
}

@media screen and (max-width:768px){
	#sidebar{
	width:96%;
	margin:0px auto 12px auto;
	padding-top:16px;
	} 
}

#globalNav {
	margin:0px;
	padding:0px;
	width:100%;
}

@media screen and (max-width:768px){
	#globalNav {
	width:96%;
	margin:0px auto 12px auto;
	} 
}





.sideTopLink {
	margin:0px 0px 12px 0px;
	padding:8px 20px 0 0;
	border-radius:4px;
	background:#54c2f0;
	width:100%;
	box-sizing:border-box;
	height:32px;
	font-weight:bold;
	display:block;
}
@media screen and (max-width:768px){
	.sideTopLink{
	margin:0px auto 12px auto;
	} 
}



.sideTopLink a {
	color:#FFF;
	display:block;
	width:100%;
	height:100%;
	margin:0px 0px 0px 8px;
	text-decoration:none;
}


.sideTopLink a i {
	float:right;
	padding-top:2px;
	vertical-align:middle;
}

.subMenu{
	position:relative
}

.sideCatTit {
	margin:0px 0px 4px 0px;	
	padding-left:4px;
	color:#00549E;
	font-size:120%;
	font-weight:bold;
}
.sideCatTit:after {
	margin-left:-4px;
	position:relative;
	top:-5px;
	z-index:1;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 4px;
	background:rgba(84,194,240,0.4);
}


ul.subMenuNav {
	list-style:none;
}

ul.subMenuNav li {
	margin:0px;
	position:relative;
	overflow:hidden;
	width:100%;
	height:100%;
}
ul.subMenuNav li {
	border-bottom:#54beec 1px dashed;
}
ul.subMenuNav li:last-child {
	border-bottom:none;
	margin-bottom: 16px;
}

ul.subMenuNav li a {
	background-color:#454545;
	font-size: 12px;
	display:block;
	width:100%;
	height:100%;
	padding:0px 0px 0px 0px;
	background:#ffffff;
	text-decoration:none;

}

ul.subMenuNav li:hover {
	background:rgba(84,194,240,0.4);
}
ul.subMenuNav li a:hover {
	font-weight:bold;
}

img.sideMenuIcon {
	float:left;
	display:inline-block;
	width:30px;
	padding:5px 2px 5px 0px;
}
a img.sideMenuIcon {
	width:30px;
}
span.sideMenuTxt {
	float:left;
	width:200px;
	padding-top:14px;

}
span.sideMenuTxt02 {
	float:left;
	width:200px;
	padding-top:7px;
}

@media screen and (max-width:768px){
span.sideMenuTxt {
	width: calc(100% - 34px);
	}
span.sideMenuTxt02 {
	width: calc(100% - 34px);
	}
}




/*slMain
------------------------------------------------------------------------------------------------------*/
#contents {
	/*position:relative;*/
	-moz-transition:margin-left .25s linear;
	-webkit-transition:margin-left .25s linear;
	transition:margin-left .25s linear;
	/*z-index:900;*/
	width: 760px;
	float:right;
}
@media screen and (max-width:768px){
	#contents{
		margin-left:0;
		width:100%;
		padding: 0 3%;
	}
}




/*以下、下層ページと共通要素
------------------------------------------------------------------------------------------------------*/


/*footer
------------------------------------------------------------------------------------------------------*/
footer{
	background:#53c1ef;
}
#footerBk{
	margin-top:20px;
	background:url(../images/bk_footer_01.png) repeat-x;
	background-position:center bottom;
	height:285px;
}
@media screen and (max-width:768px){
	#footerBk{
		height:auto;
		padding-top:28%;
		background:url(../images/bk_footer_01.png) repeat-x;
		background-position:center bottom;
		background-size:200%;
	}

}
#footerBottom_out {
	clear:both;
	margin:0px auto 0px auto;
	padding:20px 0px 30px 0px;	
	background:#53c1ef;
	font-size:inherit;	
	font-family:sans-serif;
	border-top:#54C3F1 7px solid;
	letter-spacing: 0em;
	}	
@media screen and (max-width: 667px)  {
	#footerBottom_out {
	padding:4% 0%;
	box-sizing:border-box;
	}
}
#ft_nisseiLogo {
	margin:0px 0px 11px 0px;
	font-size:93%;
	color:#fff;
	vertical-align:middle;
	float:left;
}
@media screen and (max-width: 667px)  {
	#ft_nisseiLogo {
	font-size:100%;
	width:100%;
	height:auto;
	margin-left:0%;
	float:none;
	}
	#ft_nisseiLogo a {
		display:block;
	}
}
#ft_nisseiLogo img {
	margin-right:16px;
	vertical-align:middle;
	width:119px;
	}
@media screen and (max-width: 667px)  {
	#ft_nisseiLogo img {
		margin:0 0 2% 0;
		width:149px;
	}
}



#ft_Home a {
	font-size:100%;
	color:#fff;
	text-decoration:none;
	float:right;
}

@media screen and (max-width: 667px)  {
	#ft_Home a {
		float:left;
	}
}
#ft_Home img {
	margin-right:5px;
	vertical-align:middle;
}
#copyright {
	margin-top:5px;
	font-size:85%;
	color:#fff;
	vertical-align:middle;
	float:left;
	}

@media screen and (max-width: 667px)  {
	#copyright {
		margin:2% 0px 0px 0%;
		font-size:96%;
		float:left;
	}
}
	
ul.ft_Btm_list {
	float:right;
	margin:5px 0px 0px 0px ;
	padding:0px 0px 0px 0px;
	text-align: left;
	font-size:93%;
	line-height:120%;
	color:#fff;
	float:right;
}


.ft_Btm_list li {
	margin:0px 0px 0px 10px;
	padding:0px 10px 0px 0px;
	border-right:1px solid #fff;
	list-style:none;
	display:inline;
	*display: inline;
	*zoom: 1;
	vertical-align:middle;
}
@media screen and (max-width: 768px)  {
	ul.ft_Btm_list {
		float:left;
		margin:16px 0px 10px 0px;
	}
	.ft_Btm_list li {
	margin:0px 0px 0px 0px;
	}
}
@media screen and (max-width: 667px)  {
	ul.ft_Btm_list {
		width:100%;
		float:none;
		margin:4% 0 0 0;
		padding:0;
	}
	.ft_Btm_list li {
	box-sizing:border-box;
	margin:0px 0px 3% 0%;
	padding:0;
	font-size:116%;
	display:block;
	width:98%;
	border-right:none;
	text-decoration:underline;
	text-align:left;
	}
}

.ft_Btm_list li:last-child {
	border-right:none;
	}
.ft_Btm_list li a, .ft_Btm_list li a:link, .ft_Btm_list li a:visited {
	color:#fff;
	}

/*pagetop
------------------------------------------------------------------------------------------------------*/
#pageTop{
	position:fixed;
	bottom:20px;
	right:1%;
	z-index:2100;
}
@media screen and (max-width:768px){
	#pageTop{
		bottom:5%;
		right:0%;
	}
	#pageTop img{
		width:70px;
	}
}

#pageTop img{
	position:relative;
}

@-webkit-keyframes yurayura {
	0% {
		position:relative;
		top:0px;
		}
	100% {
		position:relative;
		top:7px;
		}
}
@keyframes yurayura {
	0%{
		position:relative;
		top:0px;
		}
	100%{
		position:relative;
		top:7px;
		}
}
.yura {
	-webkit-animation-name:yurayura;
	-webkit-animation:neyurayuraw 1s infinite alternate linear;
	animation-name:yurayura;
	animation:yurayura 1s infinite alternate linear;
}

/*.animationPageTop {
	position:absolute;
	z-index:1;
	right:0%;
	padding-top:0px;
	}
@media screen and (max-width: 640px){
	.animationPageTop{
		right:1%;
		padding-top:0px;
		}
}*/