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

/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*----------- global -------------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/* global > component > library > adjust */

header {
	/*position: relative;*/

  top: 0;
	padding: 5px 0 0 0;
	
	position: sticky;
  z-index:99999;
	
	background-color: #00245b;
}


h1{
	width: 100%;
	font-size: 12px;
	margin: 7px 0;
}


/*--- Gmenu parts ----------------------------------------------------------------------------------------------------------------------------------*/

.textTitle {
	width: 18em;
	font-size: 12px;
	margin: 0 0 7px 0;
}

.toplink{
	width: 90%;
	max-width: 960px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: flex-end;
	position: absolute;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
}

.toplink li a{
	font-size: 12px;
}

.toplink li:last-of-type{
	margin-left: 27px;
}		
	
.toplink li a:hover{
	text-decoration: underline;
}	

/*--- breadcrumb list ------------------------------------------------------------------------------------------------------------------------------*/
.breadcrumb{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	font-size: 12px;
	width: 93.75%;
	max-width: 960px;
	margin: auto;
	margin-top: 20px;
}

.breadcrumb a{ color: #2d2d2d; }
.breadcrumb a:hover{ text-decoration: underline; }

/*--- footer ---------------------------------------------------------------------------------------------------------------------------------------*/
footer{	
	/*margin: 60px 0 0 0;*/
	background: #00245b;
}

footer .footerWrap{
	width: 100%;
	/*max-width: 960px*/
	margin: auto;
	padding-top: 24px;
	/*background-color: #3169d1;*/
}

footer .Fnav{
	width: 80%;
	margin: 0 auto;
	border-bottom: 1px solid #1d72bc;
}	

footer .Fnav li, footer .Fnav li a{
	color: #fff;
	font-size: 12px;
}

ul.Fnav {
	padding:0.5em;
	list-style-type:none;
}
ul.Fnav li {
	position:relative;
	padding: 0em 0.3em 0.3em 1.3em;
}
ul.Fnav li:before {
	position:absolute;
	content:'';
	top: 0.1em;
	left: 0.2em;
	height:0;
	width:0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent #FFF;
}

footer h3 {
	margin: 20px 0;
	font-size: 18px;
	font-weight: bold;
	
	color: #fff;
}

footer address p{
	line-height: 1.4em;
	font-style: normal;
	color: #fff;
}

.compName{
	text-align: center;
	color: #fff;
	font-size: 12px;
	line-height: 21px;
	margin: 12px 0 6px;
	background-size: 42px;
	padding: 20px 0px;
}

.compName img {
	padding-bottom: 10px;
	
}


footer .copyright{
	color:#005B9B;
	text-align: center;
	font-size: 12px;
	font-family: "Noto Sans Japanese";
	line-height: 29px;
	/*background-color: #02053f;*/
	background-color:#FFF;
}

/*--- Frame Footer ---------------------------------------------------------------------------------------------------------------------------------*/
.frmFt {
	width: 100%;
	overflow: hidden;
	margin: auto;
}

.frmFt-tx {
	max-width: 260px;
	margin: 40px 40px 0;
}

.frmFt-mp {
	-webkit-flex: 1;
  flex: 1;
}

.frmFt-mp iframe {
	width: 100%;
  height: 440px;
  border: none;	
}

/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*-----------componet-------------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/* global > component/frame  > library > adjust */

/*--- container wrap -------------------------------------------------------------------------------------------------------------------------------*/
.cmpCtner {
	/*width:100%;*/
	height:auto;
	min-height: 280px;

	/*padding:30px 0 0;*/
}


.cmpCtnerN {
	/*width:100%;*/
	height:auto;
	/*min-height: 280px;*/

	/*padding:30px 0 0;*/
}

/*--- contents wrap --------------------------------------------------------------------------------------------------------------------------------*/
.cmpCtnts {
	/*max-width:1000px;*/
	max-width:960px;
	width:95%;
	margin:auto;
}

/*--- title ----------------------------------------------------------------------------------------------------------------------------------------*/
.cmpTtl-h2 {
	font-size:22px;
	font-size:2.2rem;
	line-height:1.2em;
	/*letter-spacing: 0.1em;*/
	
	padding: 30px 0 65px 0;
	text-align:center;
	
	
	position: relative;
	
	/*font-weight:bold;*/
	color:#FF7008;
}

.cmpTtl-h2:after {
  position: absolute;
  content: "";
  width: 40px;
	height: 1px;
  
	top: 73%;
	
  left: 50%;
  right: 50%;
  
	background: #FF7008;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  border-radius: 6px;
}


.cmpTtl-h3 {
	font-size: 14px;
	font-size: 1.4rem;

	line-height: 1.4em;
	
	margin: 0 0 20px 0;	
	/*font-family: "Noto Sans Japanese";*/
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	
	color:#FF7008;
}

/*--- Frame Type1 ----------------------------------------------------------------------------------------------------------------------------------*/
.frmTp1-tx {
	width:calc(100% - 400px);
	padding: 10px 0 0 20px;
	line-height: 1.4em;
}

.frmTp1-tx-Fl {
	width:100%;
	padding:15px;
}

.frmTp1-tx dt {
	font-size:22px;
	font-size:2.2rem;
	line-height:1.3em;
	color:#1c2b6f;
}

.frmTp1-tx dd {
	padding:15px 0 30px;
	line-height:2em;
}

.frmTp1-ph {
	height:auto;
	width:370px;
	/*margin:0 auto 50px;*/
}

.frmTp1-tx-R {
	width: calc(100% - 400px);
  padding: 0 15px 15px;
	line-height: 1.7em;
}

/*--- Frame Type2 ----------------------------------------------------------------------------------------------------------------------------------*/
.frmTp2 {
	width: 100%;
	overflow: hidden;
}

.frmTp2 li {
	height:auto;
	width: 50%;
	/*height: 570px;*/
}

.adjTp2-txR {
	padding: 40px 40px 60px 40px;
	line-height: 1.8em;
	
	text-align: justify;
	text-justify: auto;
}

/*--- Frame form -----------------------------------------------------------------------------------------------------------------------------------*/

.frmFrm {
	text-align: center;
	line-height: 1.5em;
	margin: 0 0 20px 0;
		
}

.adjTF {
	font-size: 180%;
	font-weight: bold;
	line-height: 1.3em;
	margin: 0 0 3px 0;
	
	/*color: #DD0003;*/
}

/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*-----------library--------------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/* global common > component > library > adjust */

/*--- library flex ---------------------------------------------------------------------------------------------------------------------------------*/
.libFlex{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
 	justify-content: space-around;
	/*flex-direction: column;*/
}

/*--- Button lib -----------------------------------------------------------------------------------------------------------------------------------*/
.btn {
	margin: 30px 0 0 0;
	padding: 10px 60px;

	font-size: 12px;
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	/*font-weight: bold;*/

	display: inline-block;
	text-decoration: none !important;
	border-radius: 5px;
}

.btnBl {
	background-color: #3169d1;
	border: 2px solid #3169d1;
	color: #fff !important;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.btnBl:hover {
	background-color: transparent;
	border: 2px solid #3169d1;
	color: #3169d1 !important;
}

/*--- name -----------------------------------------------------------------------------------------------------------------------------------------*/
.libName {
	margin: 8px 0 0 0;
	float: right;
	font-size: 120%;
}

.libName strong {
	font-size: 110%;
	font-weight: bold;
	margin: 0 0 0 5px;
}

/*--- library General parts table -----------------------------------------------------------------------------------------------------------------*/
.libTabl-T01 {
	max-width:880px;
	width:90%;
	margin:0 auto;
}
.libTabl-T01 th, .libTabl-T01 td {
	width: auto !important;
	padding:10px 15px;
}

.libTabl-T01 th {
	white-space: nowrap;

	width:25%;
	background: #4d8ddc;
	color:#fff;
	border-bottom:2px solid #ffffff;
}

.libTabl-T01 td {
	width:70%;
	line-height: 1.7em;
	border-top:1px solid #f0f0f0;
	border-bottom:1px solid #f0f0f0;
}

/*--- library list ---------------------------------------------------------------------------------------------------------------------------------*/
.libList-sq {
}

.libList-sq li {
	list-style-type: square;
	margin: 0 0 14px 1.1em;
}

/*--- PC/ON SP/OFF ---------------------------------------------------------------------------------------------------------------------------------*/
.pc { display:block; }
.sp { display:none; }

/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*-----------adjust---------------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/* global common > component > library > adjust */

/*--- font -----------------------------------------------------------------------------------------------------------------------------------------*/
.adjFt-mn { font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }
.adjFt-sa { font-family: 'Noto Sans', sans-serif; }
.adjFt-sr { font-family: 'Noto Serif', serif; }
.adjFt-fuch { text-shadow:#ffffff 1px 1px 0px, #ffffff -1px 1px 0px, #ffffff 1px -1px 0px, #ffffff -1px -1px 0px; }
.adjFt-cl_w { color:#ffffff;}
.adjFt-wt_b { font-weight:bold; }


/*--- image ----------------------------------------------------------------------------------------------------------------------------------------*/
.adjIm-fit { object-fit: cover; font-family: 'object-fit: cover;' }
.adjIm-hdr { width: 100% !important; }

/*--- back ground color ----------------------------------------------------------------------------------------------------------------------------*/
.bgClr-O { background: #F93; }
.bgClr-B { background: #06C; }
.bgClr-R { background: #C03; }
.bgClr-G { background: #363; }
.bgClr-Ib { background: #F9F9F9; }
.bgClr-Nb { background: #00245b; }

/*--- color ----------------------------------------------------------------------------------------------------------------------------------------*/
.coClr-TB { color: #56C3E7; }
.coClr-wh { color: #FFFFFF; }
.coClr-dB { color: #00336D; }


/*--- padding --------------------------------------------------------------------------------------------------------------------------------------*/
.pdBtm-40 { padding: 0 0 40px 0; margin: 30px 0 50px 0; }


/*--- margin --------------------------------------------------------------------------------------------------------------------------------------*/
.mgTop-40 { padding: 40px 0 0 0; }
.mgTop-20 { margin: 20px 0 0 0; }

/*--- lineHight ------------------------------------------------------------------------------------------------------------------------------------*/
.adjLht-11{line-height: 1.1em;}
.adjLht-16{line-height: 1.6em;}

/*--- lineHight ------------------------------------------------------------------------------------------------------------------------------------*/
.adjLsp-02 {letter-spacing:0.2em;}
.adjLsp-02 {letter-spacing:0.1em;}

/*--- photo size -----------------------------------------------------------------------------------------------------------------------------------*/
.adjPt-w29 { width:290px !important; }

/*--- float ----------------------------------------------------------------------------------------------------------------------------------------*/
.adjFlt-l { float:left; }
.adjFlt-r { float:right; }


.adTxal-c { text-align: center; }

.admaxHt { max-height: 100px !important; }

/*--- photo size ------------------------------------------------------------------------------------------------------------------------------------*/
/*.adOrd-1 { 
	-webkit-order: -1;
	-ms-flex-order: -1;
	order: -1;
}*/

.mod-s6 {
	font-weight: 600;
	font-size: 18px;
	font-size: 1.8em;
	line-height: 28px;
	
	padding: 40px 0;
} 

.mod-s6 div {
	/*background-color: #00245b;*/
	padding: 20px;
} 




/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*-----------Local----------------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------------------------*/

/*--- index ----------------------------------------------------------------------------------------------------------------------------------------*/

/*****component News*****************************************************************************/

#compNews{
	background-color: #2b5ca6;
	padding: 30px 0 50px;
}

#compNews h2, #compNews h2 span{ color: #fff; }

.newsBox {
	background-color: #fff;
	width: 90%;
	max-width: 1000px;
	margin: auto;
	padding: 20px 30px;
	position: relative;
}

.newsList{
	height: 60px;
	overflow-y: scroll;
}

/*.newsList li{ padding: 16px 0; }*/
.newsList li+li{ border-top: 1px dashed #dbdbdb; }
/*.newsList dt{ width:186px; }*/

.capIcon {
	padding: 3px;
	font-size: 80%;
	font-weight: bold;
	color: #fff;
	margin-left: 5px;
}


.adjBkimg {
	background-image:url("../img/idx/bk-img.png"); 
	background-position: right bottom;
	background-repeat: no-repeat;
	/*background-attachment: fixed; */
}


/*--- about ----------------------------------------------------------------------------------------------------------------------------------------*/

/********greeting from the president***************************************/
#compMess{
	padding: 32px 0 50px;
}

.contMsg {
	overflow:hidden;
	clear:both;
	max-width:960px;
	margin:0px auto 35px;
}
.msgImg {
	width:380px;
	height:370px;
	/*float:left;*/
}

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

.msgTxt {
	max-width:660px;
	width: calc(100%);
	min-height:370px;
	
	/*float:right;*/
	background:#ffffff;
	padding:35px 40px 15px;
	height:285px;
}

.msgTxt h4 {
	font-size:20px;
	margin:0 0 10px 0;
}

.msgTxt p {
	font-size:15px;
	padding:0 0 10px 0;
}

.msgTxt p strong { font-size:18px; }

.adjBkimg-ab {
	background-image:url("../img/abt/bg-atc.png"); 
	background-repeat: no-repeat;
	background-size:cover;
}

.s5Cpt {
	font-size: 20px;
	font-size: 2.0em;
	text-align: center;
	line-height: 34px;
}


/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*----------- privacypolicy ------------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------------------------*/

.modPriv {
	padding:15px 0;
}

.modPriv dt {
	color:#1c2b6f;
	font-size:14px;
	font-size:1.4rem;
	font-weight:bold;
	padding:0.3em 0;
}

.modPriv dd {
	padding-bottom:1em;
	line-height: 1.2em;
}

.notice {
	color:#8b0000;
	font-weight:bold;
	font-size:12px;
	font-size:1.2rem;
}


/***sp-slide**************************************************************************************/
.sp-slide {
  position: relative;
}
.sp-slide p {
  position: absolute;
  /*position: fixed;*/
  color: #ffffff;
  top: 50%;
  left: 50%;
  transform: translate(-50%);
  -webkit-transform: translate(-50%);
}

/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*----------- media screen module ------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------------------------*/

/*--- >1300 ----------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 1300px) { }

/*--- >1300 ----------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 1000px) { }

/*--- >900 -----------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 900px) { }

/*--- <831 PC ONLY ---------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (min-width: 831px) {
	
	
	/********/
	.img4col li {
		width: 25% !important;
		padding: 0 10px;
	}
	

	/*--- global menu ----------------------------------------------------------------------------------------------------------------------------------*/
	#mobileHead{
		/*padding-top: 5px;*/
		width: 90%;
		max-width: 960px;
		height: 76px;
		margin: auto;
	}	

	#mobileHead a{
		display: block;
	}	

	#globalNav{
		position: relative;
		z-index: 1;
		background-color: #00459E;
		height: 64px;
	}	

	#globalNav ul {
		width: 90%;
		max-width: 960px;
		margin: auto;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		justify-content: center;
		height: 64px;
		position: relative;
	}

	#globalNav ul::after,#globalNav ul li::before{
		content: "";
		display: block;
		width: 1px;
		height: 25px;
		background-color: #FFF;
		position: absolute;
		top: 19.5px;
	}

	#globalNav ul::after{
		right: 0;
	}	

	#globalNav ul li::before{
		left: 0;
	}	

	#globalNav ul li{
		width: 20%;
		padding-top: 16px;
		position: relative;
	}

	#globalNav ul li a{
		display: block;
		text-align: center;
		font-family: "Noto Sans Japanese";
		font-size: 15px;
		color: #fff;
	}

	#globalNav ul li a span{
		display: block;
		margin-top: 6px;
		font-size: 11px;
		font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		color: #fff;
	} 	

	#globalNav ul #slide-line{
		position: absolute;
		bottom: 1px;
		height: 3px;
		padding-top: 0;
		background-color: #fff;
		-webkit-transition: all .3s ease;
		transition: all .3s ease;
		font-size: 0;
		color: transparent;
	}		

	#globalNav #slide-line::before, #globalNav #slide-line::after{
		display: none;
	}	

	#navToggle {
		display: none;
		position: absolute;
		right: 12px;
		top: 14px;
		width: 34px;
		height: 36px;
		cursor: pointer;
		z-index: 101;
	}

	#navToggle div {
		position: relative;
	}

	#navToggle span {
		display: block;
		position: absolute;
		height: 4px;
		width: 100%;
		background: #414141;
		left: 0;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
	}

	#navToggle span:nth-child(1) { top: 0; }
	#navToggle span:nth-child(2) { top: 11px; }
	#navToggle span:nth-child(3) { top: 22px; }
		
	/*--- member table -------------------------------------------------------------------------------------------------------------------------------*/
	.libTabl-T01 tr:nth-child(odd) td {  
  background-color: #f4fcff;  
	}  

}

/*--- >830 PC ONLY --------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 830px) {

		/********/
	.img4col li {
		width: 50% !important;
		padding: 10px;
	}

	.img4col li img {
		width: 100%;
	}
	
	
	
	header {
		height: 28px;
	}

	header .textTitle {
		font-size: 10px;
		margin-top: 4px;
	}

	header .head-logo{
		width: 120px;
	}	

	header .logo {
		margin: auto;
		display: block;
		width: 213px;
	}

	#mainWrap{
		margin-top: -2%;
	}	

	/*----------- global nav ---------------------------------------------------------------------------------------------------------------------------*/
	#mobileHead {
		background: #00245b;
		width: 100%;
		height: 42px;
		margin-left: auto;
		padding-left: 15px;
	}

	#globalNav {
		position: absolute;
		top: -500px;
		background: rgba(0,91,152,0.9);
		width: 100%;
		height: auto;
		text-align: center;
		-webkit-transition: .5s ease-in-out;
		-moz-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
		z-index: 1;
	}

	#globalNav ul {
		list-style: none;
		position: static;
		right: 0;
		bottom: 0;
	}

	#globalNav ul li {
		float: none;
		position: static;
		line-height: 60px;
	}

	#slide-line{
		display: none;	
	}	

	#globalNav ul li+li{
		border-top: 1px solid #fff;	
	}	

	#globalNav br{
		display: none;
	}	

	#globalNav ul li a span{
		font-size: 11px;
		font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		color: #fff;
		margin-left: 10px;
	} 	

	header #globalNav ul li a {
		width: 100%;
		display: block;
		height: 60px;
		font-size: 15px;
		color: #fff;
		font-family: "Noto Sans Japanese";
	}
	
/***** Toggle Button *******************************************************************************************************************/
	#navToggle {
		display: block;
	}

	#navToggle {
			position: absolute;
			right: 12px;
			top: 14px;
			width: 30px;
			height: 25px;
			cursor: pointer;
			z-index: 101;
	}

	#navToggle div {
			position: relative;
	}

	#navToggle span {
			display: block;
			position: absolute;
			height: 5px;
			width: 100%;
			background: #2b5ca6;
			left: 0;
			-webkit-transition: .35s ease-in-out;
			-moz-transition: .35s ease-in-out;
			transition: .35s ease-in-out;
	}

	#navToggle span:nth-child(1) { top: 0; }
	#navToggle span:nth-child(2) { top: 10px; }
	#navToggle span:nth-child(3) { top: 20px; }	
	
/***** #navToggle change anime *********************************************************************************************************/
	.open #navToggle span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(135deg);
		-moz-transform: rotate(135deg);
		transform: rotate(135deg);
		background: #fff;
	}

	.open #navToggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}

	.open #navToggle span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-135deg);
		-moz-transform: rotate(-135deg);
		transform: rotate(-135deg);
		background: #fff;
	}

	.open #globalNav {
		-moz-transform: translateY(496px);
		-webkit-transform: translateY(496px);
		transform: translateY(496px);
		z-index: 10;
	}

	#globalNav .spOnly img{
		vertical-align: baseline;
		margin-left: 5px;
		width: 11px;
	}
	
/***** #navToggle change anime *********************************************************************************************************/
	header #globalNav ul li a:hover { opacity: 0.5; } 

	.pcOnly { display:none; }

	.btn {
		/*width: 40%;*/
		min-width: 200px;
		margin: 20px auto 0;
		display: block;
		text-align: center;
	}
	
	/*----------- frame2 -------------------------------------------------------------------------------------------------------------------------------*/
	.frmTp2 li {
		height:auto;
		width: 100%;
	}

	.adjTp2-txR {
		padding: 20px 40px 40px 40px;
		line-height: 1.6em;
		
		-webkit-order: 1;
		-ms-flex-order:1;
		order: 1;
	}	

	/*----------- frame1 -------------------------------------------------------------------------------------------------------------------------------*/
	.frmTp1-ph {
			height: auto;
			width: 370px;
			margin: 0 auto 50px;
	}	

	.frmTp1-tx-R {
		width: 100%;
		padding: 0 30px 15px;
	}

	/*----------- table -------------------------------------------------------------------------------------------------------------------------------*/
	.libTabl-T01 {
		width: 80%;
	}

	.libTabl-T01 .tblTh {
		display: none;
	}

	.libTabl-T01 tr {
		width: 100%;
	}

	.libTabl-T01 td {
		display: block;
		text-align: left;
		width: 100%;
	}

	.libTabl-T01 td:first-child {
		background: #4d8ddc;
		color: #fff;
		font-weight: bold;
		text-align: center;
	}
	
	.adjIm-hdr {
		margin: 45px 0 0 0;
	}
		
	/*--- PC/OFF SP/ON -------------------------------------------------------------------------------------------------------------------------------*/
	.pc { display:none; }
	.sp { display:block; }
	
	
}

/*--- >660 -----------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 660px) {
	
/*----------- footer -------------------------------------------------------------------------------------------------------------------------------*/
	.frmFt-tx {
    max-width: 100%;
		margin: 40px;
	}
	
}

/*--- >480 -----------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {}


/*--- >390 -----------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 390px) {

#compNews dt img {
	display: block;
	margin-left: 0;
}	

}

/*--- >360 -----------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 360px) {}

/*--------------------------------------------------------------------------------------------------------------------------------------------------*/
/*----------- mail form contlor -------------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------------------------*/

form#mail_form {
	padding: 10px 0;
	border-radius: 7px;
	color: #666;
	font-size: 14px;
}

form#mail_form dl {
	width: 70%;
	margin: 0 auto;
}

form#mail_form dl dt {
	clear: both;
	width: 20%;
	float: left;
	padding: 15px 0;
	text-align: left;
}

/* necessary */
form#mail_form dl dt span {
	font-size: 12px;
	display: inline-block;
	float: right;
	color: #ffffff;
	line-height: 1;
	padding: 3px 5px;
	border-radius: 3px;
	background: #d9534f;
	border: 1px solid #d43f3a;
}

form#mail_form dl dt .optional {
	display: none;
}

form#mail_form dl dd {
	width: 65%;
	float: left;
	margin-bottom: 25px;
}


form#mail_form dl dd span.error_blank,
form#mail_form dl dd span.error_format,
form#mail_form dl dd span.error_match {
	display: block;
	color: #ff0000;
}

span.loading {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border-top: 5px solid rgba( 255, 255, 255, 0.2 );
	border-right: 5px solid rgba( 255, 255, 255, 0.2 );
	border-bottom: 5px solid rgba( 255, 255, 255, 0.2 );
	border-left: 5px solid #ffffff;
	-webkit-transform: translateZ( 0 );
	-ms-transform: translateZ( 0 );
	transform: translateZ( 0 );
	-webkit-animation: load-circle 1.0s linear infinite;
	animation: load-circle 1.0s linear infinite;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -30px;
	margin-left: -30px;
}

@-webkit-keyframes load-circle {
	0% {
		-webkit-transform: rotate( 0deg );
		transform: rotate( 0deg );
	}
	100% {
		-webkit-transform: rotate( 360deg );
		transform: rotate( 360deg );
	}
}

@keyframes load-circle {
	0% {
		-webkit-transform: rotate( 0deg );
		transform: rotate( 0deg );
	}
	100% {
		-webkit-transform: rotate( 360deg );
		transform: rotate( 360deg );
	}
}

form#mail_form input[type="text"],
form#mail_form input[type="email"],
form#mail_form input[type="tel"] {
	max-width: 90%;
	height: 2em;
	padding: 2px 2%;
	border: 1px solid #cccccc;
	border-radius: 3px;
	background: #fafafa;
	-webkit-appearance: none;
	font-size: 100%;
	font-family: inherit;
	margin-top: 7px;
}

form#mail_form input[type="text"]:focus,
form#mail_form input[type="email"]:focus,
form#mail_form input[type="tel"]:focus,
form#mail_form textarea:focus {
	box-shadow: 0px 0px 5px #55ccff;
	border: 1px solid #55ccff;
	background: #ffffff;
}

form#mail_form ul li input[type="radio"],
form#mail_form ul li input[type="checkbox"] {
	margin-right: 10px;
	margin-top: 7px;
}

form#mail_form ul li:first-child input[type="radio"],
form#mail_form ul li:first-child input[type="checkbox"] {
	margin-top: 0px;
}

form#mail_form select {
	font-size: 100%;
	font-family: inherit;
	margin-top: 10px;
}

form#mail_form textarea {
	width: 90%;
	max-width: 90%;
	height: 200px;
	padding: 2px 2%;
	resize: vertical;
	border: 1px solid #cccccc;
	border-radius: 3px;
	background: #fafafa;
	-webkit-appearance: none;
	font-size: 100%;
	font-family: inherit;
}


form#mail_form ul {
	list-style-type: none;
}

form#mail_form ul li label:hover {
	cursor: pointer;
}


form#mail_form input#company {
	width: 60%;
}

form#mail_form input#name_1,
form#mail_form input#name_2,
form#mail_form input#read_1,
form#mail_form input#read_2,
form#mail_form input#postal,
form#mail_form input#phone,
form#mail_form input#schedule {
	width: 44%;
}

form#mail_form input#mail_address,
form#mail_form input#mail_address_confirm,
form#mail_form input#mail_title {
	width: 100%;
}

form#mail_form input#postal+a {
	display: inline-block;
	padding: 9px 15px;
	vertical-align: middle;
	line-height: 1;
	background: #5bc0de;
	border: 1px solid #46b8da;
	border-radius: 3px;
	color: #ffffff;
	font-family: inherit;
	text-decoration: none;
	position: relative;
	top: -1px;
}

form#mail_form input#postal+a:hover {
	cursor: pointer;
	background: #31b0d5;
	border: 1px solid #269abc;
}

form#mail_form input#address {
	width: 90%;
}

form#mail_form p#form_submit {
	width: 90%;
	padding: 15px 0;
	text-align: right;
}

form#mail_form input[type="button"] {
	padding: 5px 15px;
	vertical-align: middle;
	line-height: 1;
	background: rgb(128, 178, 207);
	border: 1px solid rgb(128, 178, 207);
	border-radius: 3px;
	color: #ffffff;
	font-family: inherit;
	-webkit-appearance: none;
	font-size: 14px;
}

form#mail_form input[type="button"]:hover {
  cursor: pointer;
  opacity: 0.9;
}

form#mail_form input#form_submit_button {
	margin-right: 41%;
}

@media screen and (min-width:320px) and ( max-width:767px) {
	form#mail_form p#form_submit {
		text-align: center;
	}

	form#mail_form input[type="button"] {
		padding: 20px 50px;
		font-size: 18px;
	}
}

/* -- responsive ----------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:768px) and ( max-width:1024px) {
	form#mail_form input#form_submit_button {	margin-right: 45%; }
}

@media screen and (min-width:320px) and ( max-width:767px) {

	.contents11 { margin: 20px;	}

	.tell {
		display: block;
		justify-content: center;
		align-items: center;
	}

	.tell h3 { margin-bottom: 10px;	}

	.tell p {
		 font-size: 15px;
			margin-left: 18px;
	}

	form#mail_form {
		width: 95%;
	}

	form#mail_form dl {
		overflow: visible;
	}

	form#mail_form dl dt {
		width: auto;
		float: none;
		text-align: left;
		margin: 0px 0px 0px -30px;
		padding: 10px 0 5px;
	}

	form#mail_form dl dd {
		width: 340px;
		 margin: 0px 0px 0px -40px;
		float: none;
		border-top: none;
	}

	form#mail_form dl dt span {
		font-weight: normal;
		position: absolute;
		left: 146px;
	}

	form#mail_form input#form_submit_button {
		margin-right: -16%;
	}
	
	form#mail_form dl dt span.required {
		margin-right: 1em;
		margin-bottom: 2em;
	}

	.marginleft30 {
	 margin: 0px 0px 0px 30px;
	 }


	form#mail_form input[type="text"],
	form#mail_form input[type="email"],
	form#mail_form input[type="tel"] {
		margin-top: 0px;
	}

	form#mail_form input#form_submit_button {
		margin-left: 0;
	}

	form#mail_form select {
		margin-top: 0;
	}

	form#mail_form input#phone,
	form#mail_form input#schedule {
		width: 50%;
	}

}
	