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

.wrap {
	width:900px;
	padding: 0 30px;
	margin:0 auto;
}




	/*page-top*/
	#page-top {
		position: fixed;
		bottom: 30px;
		right: 2%;
		z-index: 1000;
	}
	#page-top img{
		width: 35px;
	}

/* head */
#head {
	margin-top: 24px;
	margin-bottom: 15px;
	padding-bottom: 8px;
	border-bottom: 1px solid #1d4290;
}
#head .logo {
	float:left;
}
#head .nav {
	float:right;
}
#head .nav ul.pc li{
	display: inline-block;
	font-size: 13px;
}

#head .nav ul.pc li:first-child{
	border-right: 1px solid #b0b0b0;
	margin-right: 10px;
	padding-right: 13px;
	line-height: 1;
}

#menu-open {
	display: none;
	position: absolute;
	top: 15px;
	right: 15px;
	width: 45px;
	height: 36px;
	background: transparent url(../img/common/smp/menu.png) no-repeat center center;
	background-size: contain;
	cursor: pointer;
}
#menu-close {
	width: 45px;
	height: 36px;
	background: transparent;
	color: #FFF;
	font-size: 14px;
	cursor: pointer;
}
#sp-nav {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	max-height: 100%;
	background: #808080;
	color: #FFF;
	padding: 15px 30px 30px;
	z-index: 900;
	overflow-y: scroll;
}
#sp-nav .nav-head {
	text-align: right;
	border-bottom: 1px solid #a4a4a4;
	padding-bottom: 10px;
}
#sp-nav li {
	font-size: 14px;
	line-height: 32px;
}
#sp-nav li a {
	display: block;
	color: #FFF;
}
#sp-nav > ul > li {
	border-bottom: 1px solid #a4a4a4;
}
#sp-nav > ul > li > span {
	display: block;
	padding: 10px 40px 10px 0;
	background: url(../img/common/arrow_sita.jpg) no-repeat right center;
	background-size: 30px 30px;
	cursor: pointer;
}
#sp-nav > ul > li > span.active {
	background-image: url(../img/common/arrow_ue.jpg);
}

#sp-nav > ul > li > span.trigger02 {
	padding: 10px 10px 10px 0;
	background: none;
}

#sp-nav li ul {
	display: none;
	padding-bottom: 10px;
}

#contMain{
	float: left;
	width: 576px;
}
#contSide{
	float: right;
	width: 234px;
}
#contSide dt{
	font-size: 15px;
	font-weight: bold;
	background: #dadada;
	color: #efefef;
	line-height:40px;
	height: 35px;
	padding-left: 10px;
	border-top: 1px solid #1d4290;
}
#contSide dt a{
	color: #1d4290;
	display: block;
}
#contSide dt.holding{
	font-size: 13px;
	border-top: none;
	border-bottom: 1px solid #1d4290;
}
#contSide dd{
	font-size: 13px;
	line-height: 21px;
	padding: 8px 20px;
	background: #efefef;
}
#contSide dd a{
	display: block;
}
#contSide dt.hit{
	background: #1d4290;
	color: #ffffff;
}
#contSide dt.hit a{
	color: #ffffff;
}
#contSide dd.hit{
	background: #cdd7ee;
}
#contSide dl a:hover,
#contSide dt a:hover{
	color: #f06b3a;
}


/* top */
#top {
}
#top .mainImg img{
	width: 100%;
}
#top .group{
	background: #1d4290;
	color: #ffffff;
}
#top .group a{
	color: #ffffff;
}
#top .group a:hover{
	color: #b0b0b0;
}
#top .group .ttlArea{
	text-align: center;
	padding-top: 18px;
	margin-bottom: 10px;
}
#top .group .ttlArea .jpTtl{
	font-size: 22px;
	font-weight: bold;
}
#top .group .ttlArea .enTtl{
	font-size: 11px;
}
#top .group .company{
	max-width: 840px;
	padding-bottom: 23px;
	margin-bottom: 15px;
	display: flex;
	justify-content: center;
}
#top .group .company .comp{
	width: 27.85714%;
	margin-right: 4.642%;
}
#top .group .company .comp img{
	width: 100%;
}
#top .group .company .comp .name{
	font-size: 14px;
	font-weight: bold;
	margin-top: 13px;
	margin-bottom: 5px;
}
#top .group .company .comp .txt{
	font-size: 13px;
	line-height: 20px;
}
#top .group .company .comp02,
#top .group .company .comp03{
	margin-right: 0;
}


/*#company common*/

#company #head{
	margin-bottom: 30px;
}

#company .compArea{
	background: #efefef;
	padding-left: 20px;
	margin-bottom: 30px;
}
#company .compArea .compTxt{
	width: 440px;
	padding-bottom: 20px;
}
#company .compArea .compName{
	padding: 10px 0 8px 0;
}
#company .cont{
	margin-bottom: 25px;
}
#company .cont .ttl{
	font-size: 19px;
	color: #1d4290;
	font-weight: bold;
	border-bottom: 1px solid #1d4290;
	margin-bottom: 20px;
	padding-bottom: 3px;
}

#company .cont .txt dl{
	clear: both;
}
#company .cont .txt dt{
	float: left;
	width: 5em;
	margin-right: 24px;
	color: #3c5da9;
}
#company .cont .txt dd{
	display: table;
}



#company .cont .txt .ph{
	float: left;
	width: 273px;
	margin-bottom: 4px;
}
#company .cont .txt .ph img{
	margin-bottom: 4px;
}

#company .cont .txt .ph:nth-child(even){
	float: right;
}


#company .cont02 {
  margin-bottom: 20px;
}
#company .cont03 .txt dl {
	clear: both;
}
#company .cont03 .txt dt{
	width: 6em;
}
#company .cont05 .txt{
	margin-bottom: 35px;
}
#company .cont05 .txt:last-child {
    margin-bottom: 0;
}
#company .cont05 .txt p{
	margin-bottom: 8px;
}
#company .cont05 .txt p span{
	font-weight: bold;
}
#company .compFoot{
	border-top: 1px solid #b0b0b0;
	font-size: 13px;
	padding-top: 20px;
}
#company .compFoot .link{
	margin-bottom: 20px;
}

#company .compFoot .phArea{
	margin-bottom: 20px;
}
#company .compFoot .phArea .ph{
	float: left;
	margin-right: 25px;
}
#company .compFoot .phArea .ph img{
	margin-bottom: 5px;
}
#company .cont .ttl span {
	font-size: 14px;
}

/*holdings*/

#company.holdings .ttlArea{
	background: #efefef;
	margin-bottom: 30px;
}
#company.holdings .ttlArea .ttl{
	height: 74px;
	padding-top: 8px;
	padding-bottom: 8px;
}
#company.holdings .cont01 .txt p{
	text-align: right;
	margin-top: 20px;
}
#company.holdings .cont01 .txt p span{
	font-weight: bold;
	font-size: 18px;
}
#company.holdings .cont .txt dl {
	clear: both;
}
#company.holdings .cont .txt dt {
    width: 6em;
}
#company.holdings .cont .txt dd {
    margin-bottom: 20px;
}

#company.holdings .cont .txt {
    margin-bottom: 60px;
}
#company.holdings .cont .txt02 {
    margin-bottom: 40px;
}
#company.holdings .cont04 {
    margin-bottom: 35px;
}
#company.holdings .cont04 .txt {
    margin-bottom: 23px;
}
#company.holdings .cont04 .txt p span {
    color: #3c5da9;
}
#company.holdings .cont05 .txt {
    margin-bottom: 35px;
}

#company.holdings .cont img {
	width: 100%;
}

/*tech*/
#company.tech .compArea .compTxt {
    padding-bottom: 45px;
}
#company.tech .cont05 .txt p {
  margin-bottom: 20px;
}

/*sigma*/
#company.sigma .compArea .compTxt {
    padding-bottom: 45px;
}
#company.sigma .cont .txt .circle {
	color: #3c5da9;
}
#company.sigma .cont .txt dt {
    width: 6em;
}
#company.sigma .cont01 .txt02{
	margin-bottom: 20px;
}
#company.sigma .cont05 .txt p {
  margin-bottom: 20px;
}


/*sitemap ＆ policy*/

#form #head,
#sitemap #head,
#policy #head{
	margin-bottom: 30px;
}
#form .ttlArea {
	background: #efefef;
	margin-bottom: 30px;
}
#sitemap .ttlArea,
#policy .ttlArea{
	background: #efefef;
	padding-left: 20px;
	margin-bottom: 30px;
}
#form .ttlArea .ttl {
	padding-left: 20px;
}
#form .ttlArea .ttl,
#sitemap .ttlArea .ttl,
#policy .ttlArea .ttl{
	height: 74px;
	padding-top: 8px;
	padding-bottom: 8px;
}
#form .cont,
#sitemap .cont,
#policy .cont{
	margin-bottom: 20px;
}
#sitemap .cont .ttl,
#policy .cont .ttl{
	  font-size: 17px;
    font-weight: bold;
    margin-bottom: 5px;
}
#sitemap .cont .ttl a{
    color: #1d4290;
}
#sitemap .cont04{
	margin-bottom: 65px;
}
#policy .cont09{
	margin-bottom: 75px;
}






#form .ttlArea{
    margin-bottom: 25px;
}
#form .cont00{
	margin-bottom: 8px;
}
#form .cont00 span{
	font-weight: bold;
}
#form .cont00 .txt .eng{
	font-size: 13px;
}

#form .formArea{
	font-size: 13px;
	line-height: 21px;
	border-top: 1px solid #dadada;
	margin-bottom: 55px;
}
#form .formArea dl{
	border-bottom: 1px solid #dadada;
}
#form .formArea dt{
	width: 165px;
	height: 74px;
	padding: 4px 0;
	padding-left: 15px;
	display:table-cell;
	vertical-align: middle;
	background-color: #efefef;
}
#form .formArea dt span{
	color: #ff0000;
}
#form .formArea .textarea dt{
	height: 170px;
}

#form .formArea dd{
	width: 410px;
	display:table-cell;
	vertical-align: middle;
	padding-left: 10px;
}
#form .formArea dd p.ex{
	margin-top: 10px;
	line-height: 1;
}
#form .formArea input,
#form .formArea textarea{
	border: 1px solid #dadada;
	width: 400px;
	max-width: 100%;
	height: 26px;
	padding: 2px;
}
#form .formArea textarea{
	height: 145px;
	margin-top: 8px;
	resize: vertical;
}
/*#form .formArea .name input{
	width: 120px;
}
#form .formArea .name .box{
	width: 360px;
}
#form .formArea .name p.ex{
	margin-left: 3em;
}
#form .formArea .name .box .name01{
	width: 180px;
	float: left;
}
#form .formArea .name .box .name01 p,
#form .formArea .name .box .name02 p{
	width: 40px;
	margin-top: 5px;
	float: left;
	text-align: right;
}
#form .formArea .name .box .name01 input,
#form .formArea .name .box .name02 input{
	width: 120px;
	float: left;
	margin-left: 10px;
}
#form .formArea .name .box .name02{
	width: 180px;
	float: right;
}
#form .formArea .name span{
	display: block;
	width: 5em;
}*/
#form .formArea input[type="checkbox"] {
	border: none;
    width: auto;
    height: auto;
    padding: 0;
		margin-top: -2px;
}




#form .policyTxt{
	margin: 15px 0;
	font-size: 12px;
	line-height: 18px;
}
#form .policyArea{
	width: 425px;
	max-width: 100%;
	height: 180px;
	margin: 0 auto;
	overflow: auto;
	font-size: 12px;
	line-height: 15px;
  margin-top: 30px;
	margin-bottom: 15px;
	border: 1px solid #dadada;
	padding: 10px;
}


#form .agree{
	text-align: center;
	font-size: 14px;
	margin-bottom: 15px;
}
#form .btnArea{
	width: 210px;
	margin: 0 auto;
	text-align: center;
}
#form .btnArea a, #form .btnArea input{
	font-size: 17px;
	font-weight: bold;
	display: block;
	color: #ffffff;
	background-color: #1d4290;
	border: 2px solid #1d4290;
	height: 36px;
	box-sizing: border-box;
}
#form .btnArea a:hover, #form .btnArea input:hover{
	background-color: #cdd7ee;
	border-color: #cdd7ee;
}

#form .btnArea button{
	font-size: 16px;
	font-weight: bold;
	display: block;
	color: #ffffff;
	background-color: #1d4290;
	border: 2px solid #1d4290;
	width: 210px;
	height: 50px;
	box-sizing: border-box;
}
#form .btnArea button span{
	font-size: 12px;
	font-weight: normal;
	color: #ffffff;
}
#form .btnArea button:hover{
	background-color: #cdd7ee;
	border-color: #cdd7ee;
}


#form.confirm .btnbox{
	width: 442px;
	max-width: 100%;
	margin: 0 auto;
	margin-top: 30px;
}
#form.confirm .btnbox .btnArea{
	width: 210px;
	float: right;
}
#form.confirm .btnbox .btnArea02{
	width: 210px;
	float: left;
}
#form.confirm .btnbox .btnArea02 a, #form.confirm .btnbox .btnArea02 input{
		background: #ffffff;
		border: 2px solid #1d4290;
		color: #1d4290;
}
#form.confirm .btnbox .btnArea02 a:hover, #form.confirm .btnbox .btnArea02 input:hover {
	filter: alpha(opacity=50);
	-moz-opacity:0.50;
	opacity:0.50;
}
#form.confirm .btnbox .btnArea02 a, #form.confirm .btnbox .btnArea02 button{
		background: #ffffff;
		border: 2px solid #1d4290;
		color: #1d4290;
}
#form.confirm .btnbox .btnArea02 a, #form.confirm .btnbox .btnArea02 button span{
		color: #1d4290;
}
#form.confirm .btnbox .btnArea02 a:hover, #form.confirm .btnbox .btnArea02 button:hover {
	filter: alpha(opacity=50);
	-moz-opacity:0.50;
	opacity:0.50;
}

#form p.error,
#form div.error {
	color: #f00;
}








#foot{
	margin-bottom: 20px;
	padding-top: 5px;
	border-top: 1px solid #b0b0b0;
}
#foot .fNav{
	float: left;
	font-size:11px;
}
#foot .copyright{
	float: right;
	font-size:10px;
}




.smp {display: none;}

.g-recaptcha {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}

@media screen and (max-width: 768px) {

	html, body {
		width: 100%;
		height: 100%;
	}
	body.fixed {
/*		position: fixed*/;
	}
	#head .nav {
		display: none;
	}
	#menu-open {
		display: block;
	}


.wrap {
	width:auto;
	padding: 0 15px;
}
#top .mainImg img{
	width: 100%;
}
#top .group .company{
	width: auto;
}
#top .group .company img{
	width: 100%;
}
#foot .fNav.pc{
	display: block;
}

#contMain{
	float: none;
	width: auto;
}
#contMain .compImg img{
	width: 100%;
}
#contSide{
	float: none;
	display: none;
}

#company .cont .txt .ph {
  width: 47.42547%;
}
#company .cont .txt .ph img {
  width: 100%;
}

/*holdings*/
#company.holdings .cont01 .txt{
	width: 81.30081%;
}


	#company .compArea .compTxt {
		width: 67.75067%;
	}
	#company .cont iframe {
		width: 100%;
	}


}

@media screen and (max-width: 599px) {
.pc {display: none;}
.tablet {display: none;}
.smp {display: block;}

img{
	width: 100%;
}
.wrap {
	width:auto;
	padding: 0 15px;
}


#head .logo img{
    width: 191px;
}
#sp-nav {
	padding-left: 15px;
	padding-right: 15px;
}




#top .group .ttlArea .jpTtl{
	font-size: 17px;
	font-weight: bold;
}
#top .group .ttlArea .enTtl{
	font-size: 9px;
}
#top .group .company {
		display: block;
		justify-content: center;
    width: auto;
    margin: 0 5.2724%;
    padding-bottom: 23px;
    margin-bottom: 0;
}
#top .group .company .comp{
	float: none;
	width: auto;
	margin-right: 0;
	margin-bottom: 20px;
}


	#company .compArea {
		padding: 0 15px;
	}
#company .compArea .compName img{
	width: 64.14762%;
}
#company .compArea .compTxt {
  width: auto;
}

#company .cont .txt .ph{
	float: none;
	width: auto;
}
#company .cont .txt .ph:nth-child(even){
	float: none;
}
#company .cont .txt dt {
    float: none;
    margin-right: 0;
}
#company .cont .txt dd {
    margin-bottom: 15px;
}
#company .cont iframe {
	width: 100%;
}

/*holdings*/

#company.holdings .ttlArea .ttl{
		display: table-cell;
		vertical-align: middle;
		height: auto;
    padding-top: 20px;
    padding-bottom: 20px;
}
#company.holdings .ttlArea .ttl img{
	width: 91.0369%;
}
#company.holdings .cont01 .txt{
	width: auto;
}

/*tech*/
#company.tech .compArea .compName img {
    width: 65.90509%
}
#company.tech .compArea .compTxt {
    padding-bottom: 20px;
}
/*sigma*/
#company.sigma .compArea .compName img {
    width: 88.22495%;
}
#company.sigma .compArea .compTxt {
    padding-bottom: 20px;
}




/*sitemap*/

#form .ttlArea .ttl,
#sitemap .ttlArea .ttl,
#policy .ttlArea .ttl{
	height: auto;
	display: table-cell;
	vertical-align: middle;
  padding-top: 20px;
  padding-bottom: 20px;
}
#sitemap .ttlArea .ttl img{
	width: 34.79789%;
}
#policy .ttlArea .ttl img{
	width: 59.40246%;
}

/*form*/
#form .ttlArea .ttl img {
  width: 36.90685%;
}
	#form .formArea dt {
		display: block;
		background: transparent;
		width: auto;
		height: auto !important;
		padding: 10px 0 5px;
	}
	#form .formArea dt br {
		display: none;
	}
	#form .formArea dt span {
		display: inline-block;
		margin-left: 5px;
	}
	#form .formArea dd {
		display: block;
		width: auto;
		padding: 0 0 15px;
	}
	#form .formArea input, #form .formArea textarea {
		width: 100%;
	}
	#form .policyArea {
		width: 290px;
	}
	#form .btnArea {

	}
	#form .btnArea a {
		height: 40px;
		line-height: 40px;
	}
	#form .formArea .name .box {
		max-width: 100%;
	}
	#form .formArea .name .box .name01, #form .formArea .name .box .name02 {
		max-width: 49%;
		width: 140px;
		float: left;
	}
	#form .formArea .name .box .name01 p, #form .formArea .name .box .name02 p {
		width: 2em;
		white-space: nowrap;
	}
	#form .formArea .name .box .name01 input, #form .formArea .name .box .name02 input {
		width: 100px;
		max-width: 100%;
		margin-left: 5px;
	}
	#form .formArea .name p.ex {
		margin-left: 2em;
	}
	#form.confirm .btnbox .btnArea button{
		width: 100%;
	}
	#form.confirm .btnbox .btnArea {
		width: 49%;
	}


#foot {
	border: none;
	margin: 0;
	padding: 0;
}
#foot .fNav{
	width: auto;
	float: none;
	text-align: center;
	font-size: 14px;
}
#foot .fNav ul{
	background-color: #808080;
}
#foot .fNav ul li{
	border-top: 1px solid #b0b0b0;
	height: 40px;
	line-height: 40px;
}
#foot .fNav ul li a{
	color: #ffffff;
	display: block;
}
#foot .fNav.pc{
	display: none;
}

#foot .copyright{
	width: auto;
	float: none;
	text-align: center;
	font-size: 9px;
	margin: 10px 0;
}

}


@media screen and (min-width: 769px) {
	#sp-nav {
		display: none !important;
	}
}
