@charset "utf-8";
/* CSS Document */
/********************************************************************
	layout.css
*********************************************************************/

/* color */

.ncjColor{
  color: #24abaf;
}
.marubeniColor{
  color: #C00000;
}
/* clearfix */
.cf {
	zoom:1;
}
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear:both;
}

/*--- リンク ---*/
a:link, a:visited {
	color: #027d82;
	text-decoration: none;
}
a:hover, a:active {
	color: #027d82;
	text-decoration:underline;
}
/*-- PDFマーク --*/
.pdf::after {
  font-family: 'FontAwesome';
  content: "\f1c1";
  margin-left: 5px;
}

/*--- ページトップ ---*/
#pagetop {
	position: fixed;
  bottom: 10px;
  right: 10px;
	z-index:999;
}
#pagetop a {
  display: block;
  color: #FFFFFF;
  height: 35px;
  line-height: 35px;
  width: 35px;
  text-align: center;
  background-color: #24abaf;
  /*border-radius: 4px;*/
}

/* 拡大縮小 */
.fluidimg {
	width: 100%;
	max-width: 100%;
	height:auto;
}
/* 画像サイズ内で縮小 */
.fluidimg2 {
	max-width: 100%;
	height:auto;
}
.fluidimg3 {
	width: 90%;
	max-width: 90%;
}
.fluidimg4 {
	width: 70%;
	max-width: 70%;
}
/* 横幅制限 */
.wideTextWidth{
  max-width: 880px;
  margin: 0 auto;
}
.wideTextWidth500{
  max-width: 510px;
  margin: 0 auto;
}

html {
	width:100%;
}
body {
	width: 100%;
  font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background-color: #FFF;
  color: #3B4043;
}
img {
  vertical-align: bottom;
}

/*==========================================================================
	レイアウト
============================================================================*/
#wapper {
	width:100%;
	color: #333333;
	font-size: 16px;
  line-height: 1.8;
}
.sp_none {
	display:none;
}
.hr_none{
  border: none;
}
.sectionBgColorGray{
  background-color: #f4f4f4;
}
.sectionBgColorChien{
  background-color:#EFF9FF;
}
.sectionBgColorncj{
  background-color:#007e82;
}

/*--- タイトル ---*/

/* 各セクション */
section{
  padding: 60px 0px;
}
section div.sectionInside {
  max-width: 1140px;
  margin: 0px auto;
  overflow: hidden;
  padding: 0 10px;
}

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
  #wapper {
		font-size: 17px;
  }
  .sp_none {
	  display:block;
  }
  .pc_none {
	  display:none;
  }
  .tb_none {
	  display:none;
  }
/* 各セクション */
  section{
    padding: 60px 0px;
  }
  section div.sectionInside {
    max-width: 1140px;
    margin: 0px auto;
    overflow: hidden;
    padding: 0 30px;
  }
/*--- タイトル ---*/
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  #wapper {
		font-size: 18px;
  }
  .tb_none {
	  display:block;
  }
}

/*==========================================================================
	ヘッダー
============================================================================*/
#header {
  width: 100%;
  border-bottom: 1px solid #eee;
  position: fixed;
  margin:0px auto;
  transition: .5s;
  background-color: #FFF;
  z-index: 100;
}
#header.hide{
  transform: translateY(-100%);
}
#header #headerinnr {
  width: 100%;
  height: 50px;
  position: relative;
}
#headerinnr #logo {
  width: 110px;
  position: absolute;
  left: 10px;
  top: 12px;
  line-height: 1;
}
#headerinnr #logo2 {
  width: 90px;
  position: absolute;
  left: 145px;
  top: 7px;
  line-height: 1;
}
#headerinnr .ncjLogo{
  width: 180px;
  position: absolute;
  left: 32px;
  top: 11px;
  line-height: 1;
}

.subNaviArea{
  display: none;
}

/*--- リンク ---*/
.contact #contactDocsBtn a:link, .contact #contactDocsBtn a:visited,
.contact #contactContBtn a:link, .contact #contactContBtn a:visited {
	color: #FFFFFF;
	text-decoration: none;
}
.contact #contactDocsBtn a:hover, .contact #contactDocsBtn a:active,
.contact #contactContBtn a:hover, .contact #contactContBtn a:active {
	color: #027d82;
	text-decoration: none;
  background-color:#f0f0f0;
}

#headerinnr .tel {
	display: none;
}


@media print, screen and (max-width: 320px) {
  #headerinnr #logo {
    width: 140px;
    position: absolute;
    left: 10px;
    top: 5px;
  }

}


/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
  #header #headerinnr {
    height: 80px;
  }
  #headerinnr #logo {
    position: absolute;
    left: 30px;
    top: 23px;
    width: 150px;
  }
  #headerinnr #logo2 {
  	width: 131px;
  	left: 207px;
  	top: 10px;
  }
  #headerinnr .ncjLogo{
    position: absolute;
    left: 16px;
    top: 18px;
    width: 260px;
  }
  .subNaviArea{
    display: none;
  }
  
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  #header #headerinnr {
    max-width: 1200px;
	  height: 80px;
    margin: 0 auto;
    position: relative;
  }
  #headerinnr #logo {
    top: 17px;
    width: 190px;
  }
  #headerinnr #logo2 {
  	top: 7px;
  }
  
  
/*--- ナビゲーション ---*/
  .subNaviArea{
    background-color: #027d82;
    display: inherit;
  }
  .subNaviAreaInnr{
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
  }
  .subNaviAreaInnr .subNaviItems{
    position: relative;
    transition: all 0.2s;
  }
  .subNaviAreaInnr .subNaviItems{
        border-right: 1px solid #FFF;
  }
  .subNaviAreaInnr .home{
        border-left: 1px solid #FFF;
  }
  .secondarNav{
    list-style: none;
  }
  .secondarNav {
    position: absolute;
    left: 0;
    top: 30px;
    display: none;
    z-index: 1;
    padding: 0 20px;
 }
  .secondarNav li a {
    display: block;
    font-size: 1rem;
    background-color: #3B4043;
    transition: all 0.2s;
    text-align: left !important;
    padding: 10px 20px;
  }
  .secondarNav li:last-child a {
    border: none;
  }
  .secondarNav li a:hover {
    background-color: #666;
  }
  
  .subNaviAreaInnr .subNaviItems span,
  .subNaviAreaInnr .subNaviItems a{
    cursor: pointer;
    display: inline-block;
    text-align: center;
    font-weight: normal;
    width: 100%;
    color: #FFFFFF;
    font-size: 1rem;
    text-decoration: none;
    white-space: nowrap;
    line-height: 1.6;
  }  
}
/*****************************************************
	1220px以上【PC】
******************************************************/
@media print, screen and (min-width: 1220px) {
  .subNaviAreaInnr .subNaviItems{
  }
  .subNaviAreaInnr .home{
  }
}


@media print, screen and (min-width: 1024px) and (max-width: 1200px) {
  #headerinnr #logo {
  }
}

/*--- ナビゲーション ---*/
#g_navi{
  background-color: #007e82;
  display: none;
}
#g_navi ul {
	display: flex;
	margin: 0 auto;
	padding: 0 3%;
	width: 94%;
	max-width: 1200px; 
}
#g_navi ul li {
  width: calc(100%/5);
  line-height: 1;
  border-left: 1px solid #fff;
}
#g_navi ul li:last-child {
  border-right:1px solid #fff;
}
#g_navi ul li a {
  display: block;
  padding: 14px 5% 12px ;
  width: 90%;
  color: #fff;
  text-align: center;
  text-decoration: none;
  font-size: 1.0rem;
  font-weight: bold;
  transition: .2s linear;
}
#g_navi ul li a:hover{
  background-color:#E7E7E7;
  color: #007e82;
}
.firstNav{
  position: relative;
  transition: all 0.2s;
}

.secondarNav{
  list-style: none;
}
.secondarNav {
  position: absolute;
  left: -7px;
  top: 43px;
  z-index: 1;
  padding: 0 20px;
  flex-direction: column;
}
.secondarNav li a {
  transition: all 0.3s;
 display: block;
  font-size: 1rem;
  background-color: #3B4043;
  text-align: left !important;
  padding: 10px 20px;
}
  
.childNav{
  position: absolute;
  left: 0;
  top: 43px;
  z-index: 1;
  flex-direction: column;
  background-color: #027d82;
  width: 100%;
  display: none;
}
  .childNav---in{
    border-bottom: 1px solid #999;
  }
  .childNav---in a{
    text-align: left !important;
    font-size: 0.8rem !important;
  }
  .childNav---in a:hover,
  .childNav---in a:hover{
    background-color: #666;
  }
/*****************************************************
	640px以下【sp】
******************************************************/
@media print, screen and (max-width: 640px) {
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  #g_navi ul li a {font-size: 0.8rem;}
  #g_navi{display: inherit;}
}
/*****************************************************
	1300px以上【PC】
******************************************************/
@media print, screen and (min-width: 1300px) {
  #g_navi ul li a {font-size: 1rem;}
}
/*==========================================================================
	PCグローバルナビ
============================================================================*/
.pcGnavi {
	display: none;
}

/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  #headerinnr .ncjLogo{
    left: 240px;
    top: 13px;
    width: 300px;
  }
  
  .pcGnavi {
		list-style: none;
		display: block;
		min-height: 30px;
		line-height: 30px;
	}
	.pcGnavi .pcGnaviinnr {
		list-style: none;
		display: flex;
		justify-content: flex-end;
		max-width: 1200px;
		margin: 0 auto;
	}
	.pcGnavi .pcGnaviinnr li {
		font-size: 0.9rem;
    line-height: 1.0;
    font-weight: bold;
	}
	.pcGnavi .pcGnaviinnr li span {
		padding: 3px 20px;
		display: block;
    font-weight: bold;
    text-align: right;
	}
  .pcGnavi .pcGnaviinnr li.devite {
  	border-right: 1px solid #565656;
  }
  
	/*--- リンク ---*/
	.pcGnavi .pcGnaviinnr li a:link, .pcGnavi .pcGnaviinnr li a:visited {
		color: #595959;
    background-color: #fff;
		text-decoration: none;
	}
	.pcGnavi .pcGnaviinnr li a:hover, .pcGnavi .pcGnaviinnr li a:active {
		color: #595959;
		background-color: #eee;
		text-decoration: none;
	}
	
}

/*==========================================================================
	SPグローバルナビ
============================================================================*/
.spGnavi {
	text-align: center;
	list-style: none;
	display: none;
	
}
.spGnavi li {
	border-top: 1px solid #c1c1c1;
	font-weight: bold;
	background-color: #fff;
}
.spGnavi li a {
	padding: 10px 5px;
	display: block;
}
/*--- リンク ---*/
.spGnavi li a:link, .spGnavi li a:visited {
		color: #595959;
		text-decoration: none;
}
.spGnavi li a:hover, .spGnavi li a:active {
		color: #595959;
		background-color: #eee;
		text-decoration: none;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (max-width: 768px) {
  
}
/*****************************************************
	1200px以上【PC】
******************************************************/
@media print, screen and (min-width: 1200px) {
	.spGnavi {
		display: none;
	}
}

/*==========================================================================
	ハンバーガーボタン
============================================================================*/
/*-- ハンバーガーボタン --*/
.btnWap {
  position: absolute;
  width: 25px;
  height: 25px;
  right: 14px;
  top: 12px;
  z-index: 10100;
}
.menu {
  width: 25px;
  height:25px;
  top: 0px;
  position:relative;
  cursor:pointer;
}
.menu1 { width:25px; height:5px; background-color:#595959; top:0px; position:absolute; } 
.menu2 { width:25px; height:5px; background-color:#595959; top:10px; position:absolute; } 
.menu3 { width:25px; height:5px; background-color:#595959; top:20px; position:absolute; }
/*アニメーション*/
.menu1,.menu2,.menu3
{ transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out; /* Opera */
  -moz-transition: all 0.5s ease-out; /* Firefox */
  -webkit-transition: all 0.5s ease-out; /* GoogleChrome, Safari */
  -ms-transition: all 0.5s ease-out; /* IE */ }
/*動き*/
.menuclick1
{ top:10px;
  -o-transform: rotate(405deg);
  -moz-transform: rotate(405deg);
  -webkit-transform: rotate(405deg);
  -ms-transform: rotate(405deg);
  transform: rotate(405deg); }
.menuclick2
{ opacity:0;}
.menuclick3
{ top:10px;
  -o-transform: rotate(-405deg);
  -moz-transform: rotate(-405deg);
  -webkit-transform: rotate(-405deg);
  -ms-transform: rotate(-405deg);
  transform: rotate(-405deg); }

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {

 /*-- ハンバーガーボタン --*/
  .btnWap {
    position: absolute;
    width: 25px;
    height: 25px;
    right: 40px;
    top: 30px;
  }
  .menu {
    width: 25px;
    height:25px;
    top: 0px;
    position:relative;
    cursor:pointer;
  }
  .menu1 { width:25px; height:5px; background-color:#595959; top:0px; position:absolute; } 
  .menu2 { width:25px; height:5px; background-color:#595959; top:10px; position:absolute; } 
  .menu3 { width:25px; height:5px; background-color:#595959; top:20px; position:absolute; }

  /*
  .menu1 { width:45px; height:5px; background-color:#1a2855; top:0px; position:absolute; } 
  .menu2 { width:45px; height:5px; background-color:#1a2855; top:20px; position:absolute; } 
  .menu3 { width:45px; height:5px; background-color:#1a2855; top:40px; position:absolute; }
  */
  /*アニメーション*/
  .menu1,.menu2,.menu3
  { transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out; /* Opera */
    -moz-transition: all 0.5s ease-out; /* Firefox */
    -webkit-transition: all 0.5s ease-out; /* GoogleChrome, Safari */
    -ms-transition: all 0.5s ease-out; /* IE */ }
  /*動き*/
  .menuclick1
  { top:12px;
    -o-transform: rotate(405deg);
    -moz-transform: rotate(405deg);
    -webkit-transform: rotate(405deg);
    -ms-transform: rotate(405deg);
    transform: rotate(405deg); }
  .menuclick2
  { opacity:0;}
  .menuclick3
  { top:12px;
    -o-transform: rotate(-405deg);
    -moz-transform: rotate(-405deg);
    -webkit-transform: rotate(-405deg);
    -ms-transform: rotate(-405deg);
    transform: rotate(-405deg); }

}
/*****************************************************
	1050px以上【PC】
******************************************************/
@media print, screen and (min-width: 1050px) {
  /*-- ハンバーガーボタン --*/
  .btnWap {
    display: none;
  }

}



/*==========================================================================
	フッダー
============================================================================*/
#footer {
  padding: 0px;
  background-color: #FFF;
}
#footer .logo {
	padding: 20px 10px;
	text-align: center;
	background-color: #FFF;
}
#footer .footerinnr {
  color: #565656;
  text-align: center;
  font-size: 12px;
  padding: 20px 0px;
}
#footer .footerinnr .footerNav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
}
#footer .footerinnr .footerNav li {
	width: 50%;
}
#footer .footerinnr .footerNav li:last-child {
	width: 100%;
}
#footer .footerinnr .footerNav li a {
	display: block;
	padding: 10px 0px;
}
/*--- リンク ---*/
#footer .footerinnr .footerNav li a:link, #footer .footerinnr .footerNav li a:visited {
	color: #007e82;
	text-decoration: none;
}
#footer .footerinnr .footerNav li a:hover, #footer .footerinnr .footerNav li a:active {
	color: #565656;
	text-decoration: underline;
}


#footer .copy {
	text-align: center;
  font-size: 0.7rem;
  background-color: #007e82;
  color: #FFF;
  line-height: 1.4;
  padding: 7px 5px 5px;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	#footer .logo {
		padding: 40px 10px;
	}
	#footer .footerinnr .footerNav {
		justify-content: center;
	}
  	#footer .footerinnr .footerNav li {
		width: auto;
		
	}
	#footer .footerinnr .footerNav li:last-child {
		width: auto;
	}
	#footer .footerinnr .footerNav li a {
		display: block;
		padding: 10px 15px;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  	#footer .footerinnr {
		max-width: 1200px;
		margin: 0 auto;
	}
}


/****************************************************************************************
*****
***** セカンドページのレイアウト
*****
*****************************************************************************************/



/*==========================================================================
	*************
============================================================================*/

/*****************************************************
	320px以下【sp】
******************************************************/
@media print, screen and (max-width: 320px) {
 
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {

}
