@charset "utf-8";



/* ==============================================
article
============================================== */

article,
.service article.s-about{
	position:relative;
	width:100%;
	margin:0 auto;
	padding:0 0 50px 0;
}

article p{
	padding:30px 0 0 0;
}
article p.center{
	text-align:center;
}
article p.right{
	text-align:right;
}



/* sp */
@media screen and (max-width: 769px) {

	article,
	.service article.s-about{
		width:auto;
		/*margin:0 15px;*/
		padding:0 0 30px 0;
	}

	article p{
		padding:20px 0 0 0;
	}

}



/* ==============================================
slider
============================================== */

#slider{
	width:100%;
	height:710px;
	position:relative;
	overflow:hidden;
}
#slider p{
	position:absolute;
}



#slider p.cvr-left{
	top:0px;
	left:0px;
	z-index:101;
}
#slider p.cvr-right{
	top:0px;
	right:0px;
	z-index:101;
}



#slider p.back{
	top:430px;
	left:200px;
	z-index:101;
}
#slider p.next{
	position:absolute;
	top:430px;
	right:200px;
	z-index:101;
}




#slider p.sld-img{
	left:478px;
	top:70px;
}



#slider p.sld-bg{
	left:244px;
	top:20px;
	width:695px;
	height:460px;
}
#slider p.sld-bg img{
	position:absolute;
	width:100%;
	height:100%;
}



#slider p.sld-icn{
	left:390px;
	top:80px;
	width:413px;
	height:273px;
}
#slider p.sld-icn img{
	position:absolute;
	width:100%;
	height:100%;
}



#slider p.sld-txt{
	left:378px;
	top:410px;
	text-align:center;
	width:444px;
	font-size:28px!important;
	line-height:40px;
	font-weight:bold;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	color:#666;
}
#slider p.sld-txt img{
	margin:8px 0 0 0;
}
#slider p.sld-cap{
	left:378px;
	top:520px;
	width:450px;
}



#slider p.sld-btn{
	left:465px;
	top:664px;
}



#slider ul li{
	text-align:center;
	width:100%;
	position:absolute;
	left:0;
	top:0;
	margin-left:-9999px;
}



/* sp */
@media screen and (max-width: 769px) {

	#slider{
		width:100%;
		height:490px;
		position:relative;
		overflow:hidden;
	}


	#slider p.back{
		top:100px;
		left:0px;
		z-index:101;
	}
	#slider p.back img{
		width:30px;
		height:30px;
	}
	#slider p.next{
		position:absolute;
		top:100px;
		right:0px;
		z-index:101;
	}
	#slider p.next img{
		width:30px;
		height:30px;
	}
	#slider p.cvr-left{
		display:none;
	}
	#slider p.cvr-right{
		display:none;
	}
	#slider p.sld-txt{
		left:50%;
		top:230px;
		margin-left:-220px;
		font-size:16px!important;
		line-height:28px;
	}
	#slider p.sld-txt img{
		width:290px;
		height: auto;
		margin:5px 0 0 0;
	}
	#slider p.sld-cap{
		left:50%;
		top:296px;
		width:290px;
		margin-left:-145px;
	}
	#slider p.sld-btn{
		left:50%;
		top:430px;
		margin-left:-140px;
	}
	#slider p.sld-btn img{
		width:210px;
		height:53px;
	}


	#slider p.sld-img{
		left:50%;
		top:30px;
		margin-left:-70px;
	}
	#slider p.sld-img img{
		width: auto;
		height: 180px;
	}

	#slider p.sld-bg{
		left:50%;
		margin-left:-220px;
		top:-20px;
		width:436px;
		height:312px;
	}
	#slider p.sld-bg img{
		position:absolute;
		width:100%;
		height:100%;
	}
	#slider p.sld-icn{
		left:50%;
		margin-left:-140px;
		top:30px;
		width:274px;
		height:182px;
	}
	#slider p.sld-icn img{
		position:absolute;
		width:100%;
		height:100%;
	}

}




/* ==============================================
top
============================================== */

.top article{
	width:100%;
	padding:0;
}
.top article h1{
	font-size:0;
	line-height:0;
	text-indent:-9999px;
	display:none;
}



.top #service{
	background:#f7f7f7;
	margin:0 10px;
	overflow:hidden;
}
.top #service .inner{
	width:1200px;
	margin:0 auto;
	position:relative;
}
.top #service #slider{
	padding:100px 0 0 0;
}

.top .fb-btn{
	position:absolute;
	margin: 130px 0 0 50px;
}




.top #service p{
	font-size:12px;
	text-align:center;
}
.top #service .sld-btn{
	padding:0;
	font-size:16px;
	text-align:center;
	width:260px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	background:#FFF;
	border:5px #97c5cc solid;
}
.top #service .sld-btn a{
	display:block;
	text-decoration:none;
	padding:10px 0;
}
.top #service .sld-btn:hover{
	text-decoration:none;
	background:#eefbff;
}
.top #service #logicad .sld-btn{
	border:5px #83b737 solid;
}
.top #service #pubmatic .sld-btn{
	border:5px #0fa1ce solid;
}
.top #service #sonet .sld-btn{
	border:5px #ddcd00 solid;
}
.top #service #scan .sld-btn{
	border:5px #ea5e75 solid;
}



.top #service p.cover{
	position:absolute;
	top:85px;
	left:0;
}


.top #news, .top #ir{
	width:1000px;
	margin:70px auto 0 auto;
}
.top #news h2, .top #ir h2{
	text-align:center;
}
.top #news ul, .top #ir ul{
	border-bottom:dotted 1px #CCC;
	padding:30px 0 0 0;
}
.top #news ul li, .top #ir ul li{
	border-top:dotted 1px #CCC;
}
.top #news ul li a, .top #ir ul li a{
	display:block;
	text-indent:-102px;
	padding:14px 0 13px 102px;
}
.top #ir ul li a img {
	margin:0 5px;
	border:none;
	vertical-align: top;
}
.top #news ul li a:hover, .top #ir ul li a:hover{
	text-decoration:none;
	background:#f7f7f7;
}
.top #news ul li span, .top #ir ul li span{
	margin:0 20px 0 0 ;
	font-weight:bold;
}
.top #news p, .top #ir p{
	text-align:right;
	padding:15px 0 0 0;
	margin:0;
}
.top #news p img, .top #ir p img{
	margin:7px 7px 0 5px;
}
.top #news p a, .top #ir p a{
	color:#629fa5;
}



.top #concept{
	width:1000px;
	margin:30px auto 0 auto;
	padding:0 0 150px 0;
	background:url(../../images/tp_cpt_bg.png) center top no-repeat;
}
.top #concept h2{
	text-align:center;
	padding:50px 0 0 0;
}
.top #concept p{
	width:670px;
	margin:0 auto;
	padding:70px 0 0 0;
}
.top #concept .button{
	padding:60px 0 0 0;
	text-align:center;
}
.top #concept .button a{
	border:5px #97c5cc solid;
	padding:10px 50px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
	background:#fff;
}
.top #concept .button a:hover{
	text-decoration:none;
	background:#eefbff;
}

#news .li-nolink1 {
	padding-top:12px;
	padding-bottom:12px;
}
.li-nolink1 {
	padding-top:20px;
	padding-bottom:19px;
	padding-left:102px;
	text-indent:-102px
}

.wrap-graph1 {
	font-size: 0;
	display: table;
	box-sizing: border-box;
	margin-top: 10px;
}
.mgt-1 {
	margin-top: 10px;
}
.wrap-1 {
	font-size: 0;
	display: block;
	border: 1px solid #000;
	padding: 20px;
	box-sizing: border-box;
	margin-top: 20px;
	border-radius: 10px;
}
.wrap-1 p{
	font-size: 14px;
	padding: 0;
}
.wrap-1 li{
	font-size: 14px;
	list-style-type: disc;
}
.wrap-img-op1 {
	width: 30%;
	display: table-cell;
	border: 1px solid #000;
	border-right: none;
	padding: 10px;
}
.wrap-img-op2 {
	width: 100%;
	display: block;
	border: 1px solid #000;
	border-bottom: none;
	padding: 10px;
	box-sizing:border-box;
	text-align: center;
}
.img-op1 {
	width: 100%;
}
.img-op2 {
	width: 70%;
}
.img-op3 {
	width: 100%;
}
.disc-1 {
	display: table-cell;
	width: 60%;
	font-size: 14px;
	vertical-align: top;
	border: 1px solid #000;
	padding: 10px;
	box-sizing: border-box;
}
.disc-2 {
	display: block;
	width: 100%;
	font-size: 14px;
	vertical-align: top;
	border: 1px solid #000;
	padding: 10px;
	box-sizing: border-box;
}
.disc-3 {
	display: block;
	width: 80%;
	font-size: 14px;
	padding: 10px 15px;
	box-sizing: border-box;
}
.hosoku {
	font-size: 14px;
}
.press section ul.ul-2 li {
	padding-top:0px;
}
.press section ul.ul-3{
	list-style: disc;
	margin-bottom: 20px;
}
.press section ul.ul-3 li {
	padding-top: 0px;
	text-indent: 0em;
	margin: 0 0 0 1em;
}
.press section ol.ol-1 {
	display: block;
	font-size: 14px;
}

.press section ol.ol-1 li {
	padding-top: 0px;
	text-indent: 0em;
	margin: 0 0 0 1em;
}
.press h3.t-3 {
	margin-top: 40px;
	padding-left: 0px;
	border-left:none;
	background-image: none;
	text-align: center;
}
.press h4.t-4 {
	margin-top: 40px;
	padding-left: 0px;
	border-left:none;
}
.t-6 {
	margin-top: 40px;
	text-align: center;
}
.ta-center {
	text-align: center;
}
.mgt-op1 {
	margin-top: 20px;
}
.a-op1 {
	word-break: break-all;
}
/* sp */
@media screen and (max-width: 769px) {
	.li-nolink1 {
		padding-top:10px;
		padding-bottom:9px;
		padding-left:0px;
		text-indent:0px
	}
	.wrap-img-op1 {
		width: 100%;
		display: block;
		border: 1px solid #000;
		border-bottom: none;
		padding: 10px;
		box-sizing: border-box;
	}
	.img-op1 {
		width: 100%;
	}
	.img-op2 {
		width: 100%;
	}
	.disc-1 {
		display: block;
		width: 100%;
		font-size: 14px;
		vertical-align: top;
		border: 1px solid #000;
		padding: 10px;
		box-sizing: border-box;
	}
	.top article{
		margin:0;
	}


	.top #service{
		margin:0;
	}
	.top #service .inner{
		width:auto;
		margin:0 auto;
		position:relative;
	}
	.top #service #slider{
		padding:30px 0 0 0;
	}



	.top #news, .top #ir{
		width:auto;
		margin:50px 0 0 0;
	}
	.top #news h2 img, .top #ir h2 img{
		width:auto;
		height:50px;
	}
	.top #news ul, .top #ir ul{
		padding:30px 0 0 0;
		margin:0 15px;
	}
	.top #news ul li, .top #ir ul li{
		font-size:12px;
		line-height:21px;
	}
	.top #news ul li a, .top #ir ul li a{
		display:block;
		text-indent:0;
		padding:10px 0 9px 0;
	}
	.top #news ul li span, .top #ir ul li span{
		margin:0 10px 0 0 ;
		font-weight:bold;
	}
	.top #news p, .top #ir p{
		text-align:right;
		padding:10px 7px 0 0;
		margin:0;
	}



	.top #concept{
		width:auto;
		margin:0 auto;
		padding:0 0 70px 0;
		background:url(../../images/tp_cpt_bg.png) center top no-repeat;
		background-size:620px auto;
	}
	.top #concept h2{
		padding:50px 0 30px 0;
	}
	.top #concept h2 img{
		width:auto;
		height:50px;
	}
	.top #concept p{
		width:auto;
		padding:30px 15px 0 15px;
		font-size:12px;
		line-height:24px;
	}
	.top #concept p img{
		display:none;
	}
	.top #concept p.message{
		width:280px;
		height:58px;
		margin:0 auto;
		padding:0;
		background:url(../../images/tp_cpt_txt_01_sp.png) 0 0 no-repeat;
		background-size:280px 58px;
	}

	.top .fb-btn{
		position:absolute;
		bottom: 20px;
		right: 70px;
		margin: 0;
	}

}

/* ==============================================
back-to-top
============================================== */
.back-to-top, .back-to-top:hover {
	color: #fff;
	transition-property: all;
	transition-timing-function: cubic-bezier(.7,1,.7,1);
	transition-duration: .3s;
	text-decoration: none;
}
.back-to-top {
	color: #fff !important;
	position: fixed;
	right: 10px;
	bottom: 10px;
	display: inline-block;
	z-index: 9;
	width: 30px;
	height: 30px;
	font-size: 11px;
	font-weight: 400;
	text-align: center;
	line-height: 3;
	letter-spacing: 1px;
	background: #515769;
	border-radius: 3px;
	visibility: hidden;
	opacity: 0;
	padding: 5px;
	-webkit-transform: translate3d(0,50px,0);
	-moz-transform: translate3d(0,50px,0);
	transform: translate3d(0,50px,0);
}
.back-to-top.back-to-top-is-visible {
	visibility: visible;
	opacity: .6;
	-webkit-transform: translate3d(0,0,0);
	-moz-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
	transition-duration: .3s;
	transition-property: all;
	transition-timing-function: cubic-bezier(.7,1,.7,1);
}
.back-to-top:hover {
	opacity: 1;
	transition-duration: .3s;
	transition-property: all;
	transition-timing-function: cubic-bezier(.7,1,.7,1);
}

/* ==============================================
service
============================================== */

.service nav ul{
	width:100%;
}
.service nav ul li{
	width:25%;
}



.service.top article{
	width: inherit;
	background:#f7f7f7;
	margin:0 10px 10px 10px;
	min-width:1000px;
}
.service.top article:after { content:"."; clear:both; height:0; display:block; visibility:hidden; }
* html .service.top article { display:inline-block; }
*:first-child+html .service.top article { display:inline-block; }



.service.top h1{
	text-align:center;
	display:block;
}
.service.top h1 img{
	display:block;
	margin:auto;
	padding:30px 0 0 0;
}
.service.top article p{
	text-align:center;
	padding:0 0 30px 0;
}
.service.top section{
	width:100%;
}
.service.top article div{
	float:left;
	width:48%;
	margin:0 10px 10px 10px;
	padding:50px 0;
}
.service.top article div:hover{
	background:#FFF;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
.service.top div h2{
	padding:0;
}
.service.top div h2 img{
	width:auto;
	height:240px;
}
.service.top article div p{
	width:450px;
	margin:0 auto;
	font-size:12px;
	line-height:24px;
	padding:20px 0 0 0;
}
.service.top article div p img{
	width:auto;
	height:50px;
}



.service article{
	width:100%;
}
.service h1{
	background:#f7f7f7;
	text-align:center;
	padding:40px 0 30px 0;
	margin:0 10px;
}
.s-about h1{
	background:#fff;
}

.service section{
	width:800px;
	margin:auto;
}
.service section h2{
	padding:100px 0 50px 0;
	text-align:center;
}



.service #section-01{
	padding:40px 0 0 0;
}
.service #section-01 .message{
	text-align:center;
}
.service #section-01 .message span{
	font-size:0;
	line-height:0;
	text-indent:-9999px;
	display:none;
}
.service #section-01 p{
	padding:30px 0 0 0;
}
.service #section-01 img.image-l{
	border:solid 1px #e6e6e6;
	text-align:center;
	width:100%;
	height:auto;
	margin:10px auto 0 auto;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}



.service #section-02 dl{
	border:solid 1px #e6e6e6;
	text-align:center;
	width:244px;
	margin:0 30px 0 0;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	float:left;
	padding:0 0 20px 0;
}
.service #section-02 dl.last{
	margin:0;
}
.service #section-02 dl dt{
	padding:30px 0 10px 0;
	font-size:16px;
	font-weight:bold;
	color:#6c9e15;
}
.service #section-02 dl dt img{
	padding:0 0 10px 0;
}
.service #section-02 dl dd{
	margin:10px 15px 0 15px;
	padding:10px 0;
	background:#f7f7f7;
}
.service #section-02:after { content:"."; clear:both; height:0; display:block; visibility:hidden; }
* html .service #section-02 { display:inline-block; }
*:first-child+html .service #section-02 { display:inline-block; }



.service #section-03 h2{
	padding:100px 0 0 0;
}
.service #section-03 h3{
	text-align:center;
	border-top:dotted 1px #CCC;
	padding:50px 0 10px 0;
	margin:50px 0 0 0;
}
.service #section-03 p{
	text-align:center;
	padding:10px 0 0 0;
}
.service #section-03 p strong{
	color:#6c9e15;
	font-size:16px;
}



.service article table{
	width:100%;
	border-bottom:dotted 1px #CCC;
}
.service article table th{
	width:15%;
	border-top:dotted 1px #CCC;
	text-align:left;
	font-weight:bold;
	padding:20px 0;
	vertical-align:top;
}
.service article table td{
	border-top:dotted 1px #CCC;
	padding:20px 0;
	vertical-align:top;
}



.service .button{
	text-align:center;
	padding:80px 0 0 0;
}
.service .button a{
	border:5px #83b737 solid;
	padding:10px 50px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
}
.service .button a:hover{
	text-decoration:none;
	background:#f8ffeb;
}



.service.pubmatic section h2{
	padding:50px 0 50px 0;
}
.service.pubmatic article table th{
	width:30%;
}
.service.pubmatic article table th span{
	font-size:10px;
}



.service.pubmatic #section-03 ul{
	border-bottom:dotted 1px #CCC;
	padding:50px 0 0 0;
	margin:0 0 60px 0;
}
.service.pubmatic #section-03 ul li{
	border-top:dotted 1px #CCC;
}
.service.pubmatic #section-03 ul li a{
	display:block;
	text-indent:-102px;
	padding:14px 0 13px 102px;
}
.service.pubmatic #section-03 ul li a:hover{
	text-decoration:none;
	background:#f7f7f7;
}
.service.pubmatic #section-03 ul li span{
	margin:0 20px 0 0 ;
	font-weight:bold;
}



.service.pubmatic .button{
	margin:30px 0 0 0;
}
.service.pubmatic .button a{
	border:5px #0fa1ce solid;
}
.service.pubmatic .button a:hover{
	background:#e6faff;
}



.service.sonet section h2{
	padding:50px 0 50px 0;
}
.service.sonet .button a{
	border:5px #ddcd00 solid;
}
.service.sonet .button a:hover{
	background:#fffcd2;
}



.service.scan section h2{
	padding:50px 0 50px 0;
}
.service.scan #section-02 dl{
	min-height:320px;
	margin:0 30px 30px 0;
}
.service.scan #section-02 dl.last{
	margin:0 0 30px 0;
}
.service.scan #section-02 dl dt{
	padding:30px 15px 10px  15px;
	font-size:14px;
	color:#b2304f;
}
.service.scan #section-02 dl dd{
	margin:0 15px;
	background:none;
	font-size:12px;
	line-height:21px;
	text-align:left;
}
.service.scan #section-02 p{
	padding:50px 0 0 0;
}
.service.scan .button a{
	border:5px #ea5e75 solid;
}
.service.scan .button a:hover{
	background:#ffeef1;
}



/* message-sp */
@media screen and (max-width: 769px) {

	.service nav{
		display:none;
	}
	.service nav.bottom{
		width:100%;
		display:inherit;
		padding:0 0 50px 0;
		background:#FFF;
	}
	.service nav ul{
		width:100%;
	}
	.service nav ul li{
		float:none;
		border-top:1px dotted #ccc;
		text-align:left;
		width:100%;
	}
	.service nav ul li.here{
		background:#efefef;
	}
	.service nav ul li a{
		padding:8px 10px;
	}



	.service.top article{
		padding:0 10px;
		margin:0;
		min-width: inherit;
	}
	.service.top section{
		width: auto;
		margin:0;
	}



	.service.top h1 img{
		padding:30px 0 20px 0;
		width:auto;
		height:60px;
	}
	.service.top article p{
		text-align:left;
		padding:0 0 30px 0;
	}
	.service.top article div{
		float: inherit;
		width: inherit;
		margin:0;
		padding:0 0 50px 0;
	}
	.service.top article div:hover{
		background:none
	}
	.service.top div h2{
		padding:0;
	}
	.service.top div h2 img{
		width:200px;
		height: auto;
	}
	.service.top article div p{
		width: inherit;
		margin:0 auto;
		line-height:21px;
		padding:15px 0 0 0;

	}
	.service.top article div p img{
		width:auto;
		height:45px;
	}



	.service article{
		margin:0;
	}
	.service h1{
		padding:20px 0 10px 0;
		margin:0;
	}
	.service h1 img{
		width:280px;
		height:auto;
	}
	.service .s-about h1 img{
		width: 79px;
		height: 70px;
	}
	.service section{
		width: auto;
		margin:0 15px;
	}
	.service section h2{
		padding:30px 0 20px 0;
	}
	.service section h2 img{
		width:auto;
		height:80px;
	}



	.service #section-01{
		padding:10px 0 0 0;
	}
	.service #section-01 .message img{
		width:290px;
		height:auto;
	}
	.service #section-01 p{
		padding:20px 0 0 0;
	}
	.service #section-01 img.image-l{
		margin:0 auto;
	}



	.service #section-02 dl{
		width:100%;
		margin:10px 0 0 0;
		float: inherit;
		padding:0 0 10px 0;
	}
	.service #section-02 dl.last{
		margin:10px 0 0 0;
	}
	.service #section-02 dl dt{
		padding:15px 0 0 0;
	}
	.service #section-02 dl dt img{
		padding:0 0 10px 0;
		height:20px;
		width:auto;
	}
	.service #section-02 dl dd{
		margin:10px 10px 0 10px;
	}



	.service #section-03 h2{
		padding:30px 0 0 0;
	}
	.service #section-03 h3{
		border-top:dotted 1px #CCC;
		padding:30px 0 0 0;
		margin:30px 0 0 0;
	}
	.service #section-03 h3 img{
		width:auto;
		height:17px;
	}
	.service #section-03 p strong{
		font-size:14px;
	}
	.service #section-03 .button{
		padding:40px 0 0 0;
	}
	.service #section-03 .button a{
		padding:10px 10px;
	}



	.service table th{
		padding:10px 0;
	}
	.service table td{
		padding:10px 0;
	}

	.service .button{
		text-align:center;
		padding:50px 0 0 0;
	}
	.service .button a{
		border:5px #83b737 solid;
		padding:10px 50px;
		-moz-box-shadow: 0px 0px 10px #ccc;
		-webkit-box-shadow: 0px 0px 10px #ccc;
		-webkit-border-radius: 50px;
		-moz-border-radius: 50px;
		font-weight:bold;
	}
	.service .button a:hover{
		text-decoration:none;
		background:#f8ffeb;
	}



	.service.pubmatic section h2{
		padding:30px 0 30px 0;
	}
	.service.pubmatic table{
		font-size:12px;
		line-height:21px;
		margin:0 0 10px 0;
	}



	.service.sonet section h2{
		padding:30px 0;
	}
	.service.sonet .button a{
		border:5px #ddcd00 solid;
	}
	.service.sonet .button a:hover{
		background:#fffcd2;
	}



	.service.scan section h2{
		padding:30px 0;
	}
	.service.scan #section-02 dl{
		min-height: inherit;
		margin:0 0 10px 0;
	}
	.service.scan #section-02 dl.last{
		margin:0 0 10px 0;
	}
	.service.scan #section-02 dl dt{
		padding:20px 15px 0 15px;
	}
	.service.scan #section-02 p.note{
		padding:10px 0 0 0;
		font-size:12px;
		line-height:21px;
	}
	.service.scan #section-02 p{
		padding:40px 0 0 0;
	}



}



/* ==============================================
message
============================================== */

.message{
	position:relative;
}
.message h1{
	text-align:center;
	padding:100px 0 50px 0;
}
.message h2{
	position:absolute;
	left: 30px;
	top: 232px;
}



/* message-sp */
@media screen and (max-width: 769px) {

	.message h1{
		padding:0;
		background:#eeeeee url(../../company/images/cmpn_msg_img_01_sp_b.jpg) top right no-repeat;
		background-size: auto 211px;
		margin:15px 0 0 0;
		height:211px;
		width:100%;
	}
	.message h1 img{
		display:none;
	}
	.message h2{
		background: url(../../company/images/cmpn_msg_txt_02_sp.png) 0 0 no-repeat;
		background-size:168px 150px;
		top:20px;
		left:20px;
		width:168px;
		height:150px;
	}
	.message h2 img{
		display:none;
	}

}



/* ==============================================
about
============================================== */

.about h1{
	text-align:center;
	padding:100px 0 0 0;
}
.s-about h1{
	text-align:center;
	padding:10px 0 0 0;
}
.about section,
.service .s-about section
{
	width:470px;
	margin:0 auto;
}
.about table,
.service .s-about table{
	margin:80px 0 0 0;
	width:100%;
}
.about table th,
.service .s-about table th{
	text-align:left;
	vertical-align:top;
	width:150px;
	padding:0 0 15px 0;
}
.about table td,
.service .s-about table td{
	text-align:left;
	vertical-align:top;
	padding:0 0 15px 0;
}
.about table td img,
.service .s-about table td img{
	margin:0 5px;
}
.service article.s-about table th,
.service article.s-about table td {
	border-top:none;
	font-weight: normal;
}
.service article.s-about table {
	border-bottom:none;
}
/* -sp */
@media screen and (max-width: 769px) {

	.about h1,
	.service .s-about h1{
		padding:50px 0 50px 0;
	}
	.about h1 img,
	.service .s-about h1 img{
		width:auto;
		height:60px;
	}
	.about section,
	.service .s-about section
	{
		width:100%;
	}
	.about section,
	.service .s-about section{
		width:100%;
	}
	.about table,
	.service .s-about table{
		margin:0;
		font-size:12px;
		line-height:21px;
	}
	.about table th,
	.service .s-about table th{
		width:70px;
		padding:0 10px 10px 0;
	}
	.about table td,
	.service .s-about table td{
		padding:0 0 10px 0;
	}
	.about table td span.tel a,
	.service .s-about table td span.tel a{
		color:#629fa5;
		text-decoration:underline;
	}
}



/* ==============================================
mission
============================================== */

.mission h1,.mission h2{
	text-align:center;
	padding:50px 0 0 0;
}
.mission #section-01,.mission #section-02,.mission #section-03{
	text-align:center;
	padding:40px 0 0 0;
}
.mission #section-01,.mission #section-02 {
	border-bottom:1px dotted #666;
	padding-bottom:50px;
}
.mission #section-01 p,.mission #section-02 p{
	padding:30px 0 0 0;
}
.mission #section-03 ol li dl dt{
	padding:60px 0 0 0;
}
.mission #section-03 ol{
	margin:0;
	padding:0;
	list-style:none;
}
.mission #section-01 dl dt,.mission #section-02 dl dt{
	font-size:20px;
	font-weight:500;
	text-decoration:underline;
	margin-top:70px;
}
.mission #section-01 dl dd,.mission #section-02 dl dd{
	font-size:16px;
	margin-top:10px;
}
.mission #section-03 dl dd{
	margin-top:40px;
}
.mission #section-01 .message,.mission #section-02 .message,.mission #section-03 .message{
	padding-bottom:30px;
}


/* -sp */
@media screen and (max-width: 769px) {
	.mission h1,.mission h2{
		padding:50px 0 30px 0;
	}
	.mission #section-01,.mission #section-02,.mission #section-03{
		padding:0 0 50px 0;
	}
	.mission #section-01 .message img,.mission #section-02 .message img,.mission #section-03 .message img{
		width:100%;
		height:auto;
	}
	.mission #section-03 ol li:first-child dl dt{
		padding:30px 0 0 0;
	}
	.mission #section-01 dl dt,.mission #section-02 dl dt{
		font-size:18px;
		margin-top:35px;
	}
	.mission #section-01 dl dd,.mission #section-02 dl dd{
		font-size:14px;
	}


}

/* ==============================================
news
============================================== */

.news h1{
	text-align:center;
	padding:26px 0 0 0;
	font-size:16px;
	font-weight:bold;
}
.news h1 img{
	padding:0 0 30px 0;
}


#news-menu{
	width:800px;
	margin:0 auto;
	padding:22px 0 20px 0;
}
#news-menu li{
	float:left;
}
#news-menu li.here{
	background:#efefef;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
}
#news-menu li a{
	display:block;
	padding:5px 28px;
}
#news-menu:after { content:"."; clear:both; height:0; display:block; visibility:hidden; }
* html #news-menu { display:inline-block; }
*:first-child+html #news-menu { display:inline-block; }



.news #tab{
	overflow:hidden;
	margin:30px 0 0 0;
}
.news #tab li{
	float:left;
	background:#f2f2f2;
	text-align:center;
	width:30%;
	margin:0 13px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
}
.news #tab li:hover{
	background:#e5e5e5;
}
.news #tab li a{
	display:block;
	padding:7px 0;
}
.news #tab li a{
	text-decoration:none;
}
.news #tab li.select{
	background:#97c5cc;
}
.news #tab li.select a{
	color:#FFF;
}
.news #tab:after { content:"."; clear:both; height:0; display:block; visibility:hidden; }
* html .news #tab { display:inline-block; }
*:first-child+html .news #tab { display:inline-block; }



.news article{
	min-height:500px;
}
.news #list .hide {
	display:none;
}
.news article #list ul{
	border-bottom:dotted 1px #CCC;
	padding:30px 0 0 0;
}
.news article #list ul li{
	border-top:dotted 1px #CCC;
}
.news article #list ul li a{
	display:block;
	text-indent:-102px;
	padding:20px 0 19px 102px;
}
.news article #list ul li a:hover{
	text-decoration:none;
	background:#f7f7f7;
}
.news article #list ul li span{
	margin:0 20px 0 0 ;
	font-weight:bold;
}



/* -sp */
@media screen and (max-width: 769px) {

	.news h1{
		text-align:center;
		padding:50px 0 0 0;
		font-size:14px;
		font-weight:bold;
	}
	.news h1 img{
		padding:0 0 10px 0;
		width:auto;
		height:60px;
	}



	#news-menu{
		display:none;
	}
	#news-menu.bottom{
		width:100%;
		display:inherit;
		padding:0 0 30px 0;
	}
	#news-menu li{
		float:none;
		border-top:1px dotted #ccc;
	}
	#news-menu li.here{
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		background:#efefef;
	}
	#news-menu li a{
		padding:6px 10px 5px 10px;
	}



	.news #tab li{
		width:31.5%;
		margin:0 2px;
		font-size:10px;
	}



	.news article{
		min-height: inherit;
	}
	.news article #list ul{
		border-bottom:dotted 1px #CCC;
		padding:30px 0 0 0;
	}
	.news article #list ul li{
		border-top:dotted 1px #CCC;
		font-size:12px;
		line-height:21px;
	}
	.news article #list ul li a{
		display:block;
		padding:10px 0 9px 0;
		text-indent:0;
	}
	.news article #list ul li span{
		margin:0 10px 0 0 ;
		font-weight:bold;
	}

}



/* ==============================================
press
============================================== */

.press article{
	padding:0 0 50px 0;
}



.press p.title{
	border-top:5px solid #000;
	padding:18px 0 0 0;
	font-size:21px;
	font-weight:bold;
	line-height:90%;
}
.press p.title span{
	font-size:12px;
	font-weight:normal;
	display:block;
	line-height:260%;
}



.press p.date{
	position:absolute;
	top:20px;
	right:0;
	padding:0;
	text-align:right;
	font-size:12px;
	line-height:21px;
}



.press h1{
	font-size:20px;
	line-height:36px;
	font-weight:bold;
	text-align:left;
	padding:90px 0 20px 0;
}
.press p.note{
	border:solid 1px #e6e6e6;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	font-size:12px;
	line-height:24px;
	margin:30px 0 0 0;
	padding:20px;
}
.press h2{
	border-top:3px solid #000;
	border-bottom:1px dotted #999;
	margin:70px 0 0 0;
	font-size:16px;
	line-height:36px;
	font-weight:bold;
	padding:9px 0 10px 0;
}
.press h3{
	background:url(../images/icn_ttldt.png) 0 53px no-repeat;
	background-size:13px 13px;
	font-weight:bold;
	padding:50px 0 0 20px;
}
.press h4{
	border-left:3px solid black;
	padding-left:10px;
	line-height:150%;
	margin:70px 0 10px 0;
	font-weight:bold;
}

.press section img.image-l{
	border:solid 1px #e6e6e6;
	text-align:center;
	width:100%;
	height:auto;
	margin:10px auto 0 auto;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}
.press section img.image-m{
	border:solid 1px #e6e6e6;
	text-align:center;
	width:60%;
	height:auto;
	margin:10px auto 0 auto;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}
.press section p.listtitle{
	padding-left:34px;
}
.press section ul{
	padding:10px 0 0 20px;
}
.press section ul li{
	margin: 0 0 0 14px;
	padding:15px 0 0 0;
}
.press section ul.ml10 li{
	margin: 0 0 0 14px;
	padding:15px 0 0 10px;
	list-style-type: none
}
.press section table{
	border-top:1px solid #e6e6e6;
	border-left:1px solid #e6e6e6;
	width:100%;
	margin:20px 0 0 0;
}
.press section table th{
	border-right:1px solid #e6e6e6;
	border-bottom:1px solid #e6e6e6;
	font-weight:bold;
	vertical-align:top;
	font-size:12px;
	line-height:21px;
	text-indent:0;
	margin:0;
	padding:15px;
}
.press section table td{
	border-right:1px solid #e6e6e6;
	border-bottom:1px solid #e6e6e6;
	vertical-align:top;
	font-size:12px;
	line-height:21px;
	text-indent:0;
	margin:0;
	padding:15px;
}
.press section a{

	color:#629fa5;
}
.press section dl{
	display:block;
	background-color:#f7f7f7;
	padding:10px 20px 20px 20px;
	border-radius:8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}
.press section dl dt{
	margin-top:10px;
	font-weight:bold;
}
.press section dl dd{
	text-indent:1em;
	line-height:200%;
}


.press section#contact{
	border:1px solid #e6e6e6;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding:0 0 50px 0;
	margin:70px 0 0 0;
}
.press section#contact h2{
	border:none;
	margin:0;
	font-size:16px;
	line-height:36px;
	font-weight:bold;
	text-align:center;
	padding:35px 0 0 0;
}
.press section#contact p{
	text-align:center;
	padding:0 0 10px 0;
}
.press section#contact .button{
	padding:20px 0 0 0;
}
.press section#contact .button a{
	border:5px #97c5cc solid;
	padding:10px 50px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
}
.press section#contact .button a:hover{
	text-decoration:none;
	background:#eefbff;
}



/* -sp */
@media screen and (max-width: 769px) {

	.press article{
		padding:0 0 20px 0;
	}


	.press p.title{
		border:none;
	}
	.press p.title img{
		width:120px;
		height:auto;
	}

	.press p.title{
		font-size:16px;
	}
	.press p.title span{
		font-size:7px;
	}

	.press p.date{
		position:static;
		font-size:12px;
		line-height:21px;
	}
	.press p.date img{
		width:100px;
		height:auto;
		margin:0 -10px 0 0;
	}


	.press h1{
		font-size:14px;
		line-height:24px;
		padding:20px 0 0 0;
	}
	.press article p{
		font-size:12px;
		line-height:21px;
		padding:20px 0 0 0;
	}
	.press p.note{
		margin:20px 0 0 0;
		padding:10px;
		font-size:10px;
		line-height:18px;
	}
	.press h2{
		font-size:14px;
		line-height:21px;
		margin:30px 0 0 0;
	}
	.press h3{
		padding:20px 0 0 20px;
		font-size:12px;
		background:url(../images/icn_ttldt.png) 0 23px no-repeat;
		background-size:12px 12px;
	}
	.press section img.line{
		margin:10px 0;
	}
	.press section img.image-m{
		width:100%;
	}
	.press section ul{
		padding:10px 0 0 0;
	}
	.press section ul li{
		font-size:12px;
		line-height:21px;
		padding:10px 0 0 0;
		text-indent:-10px;
		margin: 0 0 0 10px;
	}
	.press section table{
		margin:10px 0 0 0;
	}
	.press section table th{
		padding:7px;
		font-size:10px;
		line-height:16px;
	}
	.press section table td{
		padding:7px;
		font-size:10px;
		line-height:16px;
	}



	.press section#contact{
		margin:30px 0 0 0;
		padding:0 0 40px 0;
	}
	.press section#contact h2{
		font-size:14px;
		line-height:21px;
		padding:20px 0 0 0;
	}

}



/* ==============================================
hiring
============================================== */

.hiring nav ul{
	width:100%;
}
.hiring nav ul li{
	width:25%;
}



.hiring h1{
	text-align:center;
	padding:70px 0 0 0;
}



#hiring-menu{
	width:800px;
	margin:0 auto;
	padding:22px 0 20px 0;
}
#hiring-menu li{
	float:left;
	width:25%;
	text-align:center;
}
#hiring-menu li.here{
	background:#efefef;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
}
#hiring-menu li a{
	display:block;
	padding:5px 0;
}
#hiring-menu:after { content:"."; clear:both; height:0; display:block; visibility:hidden; }
* html #hiring-menu { display:inline-block; }
*:first-child+html #hiring-menu { display:inline-block; }



.hiring h2{
	border-top:3px solid #000;
	border-bottom:1px dotted #999;
	margin:70px 0 0 0;
	font-size:16px;
	line-height:36px;
	font-weight:bold;
	padding:9px 0 10px 0;
}
.hiring p.note{
	background:#f7f7f7;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	font-size:12px;
	line-height:24px;
	margin:20px 0 0 0;
	padding:20px;
	text-indent:0;
}
.hiring section a{
	color:#629fa5;
}



.hiring table th{
	text-align:left;
	vertical-align:top;
	width:18%;
	padding:0 0 15px 30px;
	font-weight:bold;
}
.hiring table td{
	text-align:left;
	vertical-align:top;
	padding:0 30px 15px 30px;
}



.hiring #process h2{
	margin: 70px 0 30px 0;
}
.hiring #process p{
	border:1px #e6e6e6 solid;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding:10px 0 10px 0;
	font-size:16px;
	font-weight:bold;
	width:500px;
	margin:0 auto;
}
.hiring #process p img{
	margin:0 20px 0 10px;
}
.hiring #process p.arrow{
	border:none;
	padding:0;
}
.hiring #process p.arrow img{
	margin:15px 0 15px 50px;
}

.hiring.index h2{
	margin: 70px 0 30px 0;
}
.hiring.index section #message{
	border:solid 1px #e6e6e6;
	background: #f7f7f9;
	width:244px;
	margin:60px 30px 30px 0;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	float:left;
	position:relative;
}
.hiring.index section #message dt{
	padding:25px 0 0 20px;
}
.hiring.index section #message dd{
	padding:10px 20px 0 20px;
	margin:0;
	font-size:12px;
	line-height:21px;
}
.hiring.index section #message dd.image{
	padding:10px 0 0 0;
	text-align:right;
}
.hiring.index section #message dd.image img{
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}
.hiring.index section #recruit{
	border:solid 1px #e6e6e6;
	background:url(../../career/images/hrng_indx_img_02.png) 0 30px no-repeat;
	width:520px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	float:left;
	position:relative;
	margin:60px 0 30px 0;
	padding:55px 0 86px 0;
}

.hiring.index section #recruit p{
	padding:10px 0 0 0;
	margin:20px 0 0 230px;
}
.hiring.index section #recruit p a{
	border:5px #97c5cc solid;
	background:#FFF;
	padding:30px 0;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	font-weight:bold;
	font-size:16px;
	width:220px;
	text-align:center;
	display:block;
}
.hiring.index section #recruit p a:hover{
	text-decoration:none;
	background:#eefbff;
}

.hiring.index section a{
	color:#333;
}



/*.hiring.index section div#guidance{
	clear:both;
	border:solid 1px #e6e6e6;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding:30px 0 30px 10px;
}
.hiring.index section div#guidance p{
	text-align:center;
	padding:0;
}
.hiring.index section div#guidance dl{
	position:relative;
	border:none;
	float:left;
	width:196px;
	margin:20px 0 0 0;
	padding:0;
}
.hiring.index section div#guidance dl:hover{
	background:none;
}
.hiring.index section div#guidance dl dt{
	padding:90px 0 0 0;
}
.hiring.index section div#guidance dl dd{
	padding:0;
}
.hiring.index section div#guidance dl dd.image{
	position:absolute;
	top:0;
	left:0;
	width:100%;
}
.hiring.index section div#guidance:after { content:"."; clear:both; height:0; display:block; visibility:hidden; }
* html .hiring.index section div#guidance { display:inline-block; }
*:first-child+html .hiring.index section div#guidance { display:inline-block; }

*/

.hiring.message h2{
	position: inherit;
	left: inherit;
	top: inherit;
}
.hiring.message .button{
	padding:40px 0 35px 60px;
}
.hiring.message .button p{
	float:left;
	border:5px #ccc solid;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
	width:280px;
	text-align:center;
	padding:0;
	margin:0 0 0 30px;
}
.hiring.message .button p:hover{
	background:#f7f7f7;
}
.hiring.message .button p a{
	display:block;
	padding:5px 0;
	color:#333;
	text-decoration:none;
}



.hiring.newgraduate section{
	position:relative;
}

.hiring.newgraduate section p.banner{
	position:absolute;
	top:60px;
	right:0;
}
.hiring.newgraduate div{
	width:100%;
	border:1px #e6e6e6 solid;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	margin:30px 0 0 0;
	padding:30px 0 15px 0;
}
.hiring.newgraduate .button{
	text-align:center;
	padding:40px 0 0 0;
}
.hiring.newgraduate .button a{
	border:5px #97c5cc solid;
	padding:10px 50px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
	color:#333;
}
.hiring.newgraduate .button a:hover{
	text-decoration:none;
	background:#eefbff;
}


.hiring.career section{
	position:relative;
}
.hiring.career section p.banner{
	position:absolute;
	top:60px;
	right:0;
}
.hiring.career div{
	width:100%;
	border:1px #e6e6e6 solid;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	margin:30px 0 0 0;
	padding:30px 0 15px 0;
}
.hiring.career .button{
	text-align:center;
	padding:40px 0 0 0;
}
.hiring.career .button a{
	border:5px #97c5cc solid;
	padding:10px 50px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
	color:#333;
}
.hiring.career .button a:hover{
	text-decoration:none;
	background:#eefbff;
}



.hiring.guidance h1{
	border-top:5px solid #000;
	padding:20px 0 0 0;
	text-align:left;
}
.hiring.guidance h2{
	clear:both;
}
.hiring.guidance h3{
	background:url(../images/icn_ttldt.png) 0 35px no-repeat;
	background-size:13px 13px;
	font-weight:bold;
	padding:30px 0 0 20px;
	font-size:16px;
}
.hiring.guidance p.image-w1{
	border:1px #e6e6e6 solid;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding:50px;
	margin:40px 0 10px 0;
}
.hiring.guidance p.image-w1 img{
	width:100%;
	height:auto;
	padding:0;
}
.hiring.guidance p.image-w2{
	border:1px #e6e6e6 solid;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding:20px;
	margin:40px 0 10px 0;
}
.hiring.guidance p.image-w2 img{
	width:50%;
	height:auto;
	padding:0;
}
.hiring.guidance p.image-right{
	float:right;
	border:1px #e6e6e6 solid;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding:20px;
	margin:35px 0 10px 50px;
	width:300px;
}
.hiring.guidance p.image-right img{
	width:100%;
	height:auto;
	padding:0;
}
.hiring.guidance p.image-left{
	float:left;
	border:1px #e6e6e6 solid;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding:20px;
	margin:35px 50px 10px 0;
	width:250px;
}
.hiring.guidance p.image-left img{
	width:100%;
	height:auto;
	padding:0;
}



.hiring.guidance p.faq-q{
	font-weight:bold;
	font-size:16px;
	text-indent:-31px;
	margin:0 0 0 31px;
}
.hiring.guidance p.faq-q span{
	color:#629fa5;
	font-size:20px;
	margin:0 5px 0 0;
}

.hiring.guidance p.faq-a{
	padding:10px 0 0 0;
	text-indent:-31px;
	margin:0 0 0 31px;
}
.hiring.guidance p.faq-a span{
	color:#629fa5;
	font-weight:bold;
	font-size:20px;
	margin:0 5px 0 0;
}



.hiring.guidance .button{
	text-align:center;
	padding:40px 0 0 0;
}
.hiring.guidance .button a{
	border:5px #97c5cc solid;
	padding:10px 50px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
	color:#333;
}
.hiring.guidance .button a:hover{
	text-decoration:none;
	background:#eefbff;
}



.hiring.interview h2{
	border:none;
	text-align:center;
	font-size:14px;
	line-height:24px;
	font-weight:normal;
	padding:0;
	margin:30px 0 0 0;
}
.hiring.interview h2 img{
	margin: 0 0 8px 0;
}



.hiring.interview dl{
	margin:50px 0 0 0;
}
.hiring.interview dl dt{
	background:url(../../career/images/hrng_gdc_icn_q.png) 0 0 no-repeat;
	background-size:48px 40px;
	padding:13px 0 8px 58px;
}
.hiring.interview dl dt span{
	font-size:0;
	line-height:0;
	text-indent:-9999px;
	display:none;
}
.hiring.interview dl dd{
	background:url(../../career/images/hrng_gdc_icn_a.png) 0 0 no-repeat;
	background-size:47px 31px;
	padding:13px 0 8px 58px;
	margin:15px 0 0 0;
	font-size:14px;
	line-height:28px;
}



.hiring.interview p.image-right{
	margin:62px 0 0 50px;
}



.hiring.interview #interview-02{
	border-top:5px solid #000;
	margin:60px 0 0 0;
	padding:20px 0 0 0;
}
.hiring.interview #interview-03{
	border-top:5px solid #000;
	margin:60px 0 0 0;
	padding:20px 0 0 0;
}
.hiring.interview div{
	border-top:dotted 1px #aaa;
	margin:50px 0 0 0;
}
.hiring.interview div h3{
	background:none;
	padding:50px 0 0 0;
}
.hiring.interview div p{
	float:left;
	width:385px;
	margin:0 30px 0 0;
	padding:50px 0 0 0;
}
.hiring.interview div p.last{
	margin:0;
}
.hiring.interview div:after { content:"."; clear:both; height:0; display:block; visibility:hidden; }
* html .hiring.interview div { display:inline-block; }
*:first-child+html .hiring.interview div { display:inline-block; }



/* -sp */
@media screen and (max-width: 769px) {

	.hiring nav{
		display:none;
	}
	.hiring nav.bottom{
		width:100%;
		display:inherit;
		padding:0 0 50px 0;
		background-color:#FFF;
	}
	.hiring.guidance nav.bottom{
		margin:30px 0 0 0;
	}
	.hiring nav ul li{
		float:none;
		border-top:1px dotted #ccc;
		border-bottom:1px dotted #ccc;
		text-align:left;
		width:100%;
	}
	.hiring nav ul li.here{
		background:#efefef;
	}
	.hiring nav ul li a{
		padding:8px 10px;
	}




	.hiring h1{
		padding:50px 0 0 0;
	}
	.hiring.guidance h1{
		padding:30px 0 0 0;
	}
	.hiring h1 img{
		padding:0 0 10px 0;
		width:auto;
		height:60px;
	}



	#hiring-menu{
		display:none;
	}
	#hiring-menu.bottom{
		width:100%;
		display:inherit;
		padding:0;
		border-bottom:1px dotted #ccc;
	}
	#hiring-menu li{
		width:100%;
		text-align:left;
		float:none;
		border-top:1px dotted #ccc;
	}
	#hiring-menu li.here{
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		background:#efefef;
	}
	#hiring-menu li a{
		padding:6px 10px 5px 10px;
	}



	.hiring h2{
		height:inherit;
		font-size:14px;
		line-height:21px;
		margin:30px 0 0 0;
		background: none;
		padding:9px 0 10px 0;
	}
	.hiring p.note{
		font-size:10px;
		line-height:18px;
		margin:10px 0 0 0;
		padding:10px;
	}
	.hiring section p{
		font-size:12px;
		line-height:21px;
		padding:20px 0 0 0;
	}
	.hiring section p img{
		padding: 0 0 10px 0;
		width:60px;
		height:auto;
	}



	.hiring table th{
		width:27%;
		padding:0 0 10px 10px;
		font-size:12px;
		line-height:21px;
	}
	.hiring table td{
		padding:0 10px 10px 10px;
		font-size:12px;
		line-height:21px;
	}



	.hiring #process h2{
		margin: 30px 0 20px 0;
	}
	.hiring #process p{
		padding:10px 0 0 0;
		font-size:14px;
		width: inherit;
	}
	.hiring #process p img{
		margin:0 10px 0 10px;
		width:70px;
		height:auto;
	}
	.hiring #process p.arrow img{
		margin:10px 0 0 40px;
		width:10px;
		height:auto;
	}



	.hiring.index h1{
		padding:50px 0 30px 0;
	}



	.hiring.index section #message{
		width: auto;
		margin:0;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		float: inherit;
		position:relative;
	}
	.hiring.index section #message dt{
		padding:20px 0 0 20px;
	}
	.hiring.index section #message dd.image{
		padding:10px 0 0 0;
		text-align:right;
	}
	.hiring.index section #message dd.image img{
		width:180px;
		height:auto;
	}
	.hiring.index section #recruit{
		background:none;
		width: auto;
		float: inherit;
		position: inherit;
		margin:30px 0 0 0;
		padding:0 0 20px 0;
	}

	.hiring.index section #recruit p{
		padding:10px 0 0 0;
		margin:10px 30px 0 20px;
	}
	.hiring.index section #recruit p a{
		border:5px #97c5cc solid;
		background:#FFF;
		padding:20px 0;
		-moz-box-shadow: 0px 0px 10px #ccc;
		-webkit-box-shadow: 0px 0px 10px #ccc;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		font-weight:bold;
		font-size:16px;
		width:100%;
		text-align:center;
		display:block;
	}



	.hiring.index section div#guidance{
		margin:30px 0 0 0;
		padding:30px 0;
	}
	.hiring.index section div#guidance p{
		text-align:center;
		padding:0 50px;
		font-size:14px;
		line-height:24px;
	}
	.hiring.index section div#guidance p img{
		width:auto;
		height:14px;
	}
	.hiring.index section div#guidance dl{
		float:inherit;
		text-align:center;
		border:none;
		width: auto;
		margin:20px 0 0 0;
		padding:0;
	}



	.hiring.message h1{
		padding:0;
		background:none;
		padding:50px 0 20px 0;
		margin:0 auto;
		height: inherit;
		width: auto;
	}
	.hiring.message h1 img{
		display: block;
		margin:0 auto;
	}
	.hiring.message h2{
		background: none;
		top: inherit;
		left: inherit;
		width: auto;
		height: inherit;
	}
	.hiring.message .button{
		padding:10px 20px 100px 20px;
	}
	.hiring.message .button p{
		float:left;
		border:5px #ccc solid;
		-moz-box-shadow: 0px 0px 10px #ccc;
		-webkit-box-shadow: 0px 0px 10px #ccc;
		-webkit-border-radius: 50px;
		-moz-border-radius: 50px;
		font-weight:bold;
		width:100%;
		text-align:center;
		padding:0;
		margin:10px 0 0 0;
	}
	.hiring.message .button p:hover{
		background:#f7f7f7;
	}
	.hiring.message .button p a{
		display:block;
		padding:5px 0;
		color:#333;
		text-decoration:none;
	}



	.hiring.newgraduate section p.banner{
		position: inherit;
		top:0;
		right:0;
		text-align:center;
	}
	.hiring.newgraduate section p.banner img{
		width: auto;
		height:44px;
	}
	.hiring.newgraduate div{
		width:100%;
		border:1px #e6e6e6 solid;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		margin:30px 0 0 0;
		padding:30px 0 15px 0;
	}
	.hiring.newgraduate .button{
		font-size:14px;
	}


	.hiring.career section p.banner{
		position: inherit;
		top:0;
		right:0;
		text-align:center;
	}
	.hiring.career section p.banner img{
		width: auto;
		height:44px;
	}

	.hiring.career div{
		margin:20px 0 0 0;
		padding:10px 0 15px 0;
	}
	.hiring.career .button{
		font-size:14px;
	}



	.hiring.guidance h1{
		border:none;
	}
	.hiring.guidance h1 img{
		width:auto;
		height:36px;
	}
	.hiring.guidance h3{
		background:url(../images/icn_ttldt.png) 0 34px no-repeat;
		background-size:13px 13px;
		padding:30px 0 0 20px;
		font-size:14px;
	}
	.hiring.guidance p.image-w1{
		padding:20px;
		margin:20px 0 0 0;
	}
	.hiring.guidance p.image-w2{
		padding:10px;
		margin:20px 0 0 0;
	}
	.hiring.guidance p.image-w2 img{
		width:100%;
		height:auto;
	}
	.hiring.guidance p.image-right{
		float: inherit;
		padding:20px;
		margin:20px 0 0 0;
		width: auto;
	}
	.hiring.guidance p.image-right img{
		width:100%;
		height:auto;
		padding:0;
	}
	.hiring.guidance p.image-left{
		float: inherit;
		padding:20px;
		margin:20px 0 0 0;
		width: auto;
	}
	.hiring.guidance p.image-left img{
		width:100%;
		height:auto;
		padding:0;
	}
	.hiring.guidance p.image-free{
		width:100%;
	}
	.hiring.guidance p.image-free img{
		width:100%;
		height:auto;
		padding:0;
	}
	.hiring.guidance .clear{
		display:none;
	}



	.hiring.guidance p.faq-q{
		font-size:14px;
		text-indent:-24px;
		margin:0 0 0 24px;
	}
	.hiring.guidance p.faq-q span{
		font-size:14px;
	}

	.hiring.guidance p.faq-a{
		text-indent:-24px;
		margin:0 0 0 24px;
	}
	.hiring.guidance p.faq-a span{
		font-size:14px;
	}



	.hiring.guidance .button a{
		font-size:14px;
	}



	.hiring.interview h2{
		margin:20px 0 0 0;
	}
	.hiring.interview h2 img{
		width:auto;
		height:150px;
	}



	.hiring.interview dl{
		margin:20px 0 0 0;
	}
	.hiring.interview dl dt{
		background-size:25px auto;
		padding:0 0 8px 30px;
	}
	.hiring.interview dl dt img{
		display:none;
	}
	.hiring.interview dl dt span{
		font-size:14px;
		line-height:24px;
		text-indent: inherit;
		display: inherit;
		font-weight:bold;
	}
	.hiring.interview dl dd{
		background-size:25px auto;
		padding:2px 0 8px 30px;
		margin:0;
		font-size:12px;
		line-height:21px;
	}



	.hiring.interview p.image-right{
		margin:20px 0 0 0;
	}



	.hiring.interview #interview-01{
		border-top:5px solid #000;
		margin:30px 0 0 0;
		padding:10px 0 0 0;
	}
	.hiring.interview #interview-02{
		margin:30px 0 0 0;
		padding:10px 0 0 0;
	}
	.hiring.interview #interview-03{
		margin:30px 0 0 0;
		padding:10px 0 0 0;
	}
	.hiring.interview div{
		margin:20px 0 0 0;
		padding:10px 0 0 0;
	}
	.hiring.interview div h3{
		padding:10px 0 0 0;
	}
	.hiring.interview div h3 img{
		display:none;
	}
	.hiring.interview div h3 span{
		font-size:14px;
		line-height:24px;
		text-indent: inherit;
		display: inherit;
		font-weight:bold;
	}
	.hiring.interview div p{
		float: inherit;
		width: auto;
		margin:0;
		padding:10px 0 0 0;
	}

}

/* ==============================================
houtei
============================================== */
.houtei header,
.houtei nav,
.houtei footer{
	display: none;
}

.houtei nav ul{
	width:100%;
}
.houtei nav ul li{
	width:25%;
}

.houtei h1{
	text-align: left;
    padding: 100px 10% 40px 10%;
    background-color: #fafafa;
    text-indent: -25px;
}
.houtei .title {
    font-family: 'Noto Sans Japanese';
    font-size: 34px;
    font-weight: 900;
    border-left: 15px solid #515769;
    padding-left: 10px;
}
.houtei section{
	margin: 0 10%;
}
.houtei h2{
	/*border-top:3px solid #000;*/
	/*border-bottom:1px dotted #999;*/
	margin:35px 0 0 0;
	font-size:25px;
	line-height:1.2;
	font-weight:bold;
	padding:9px 0 10px 0;
	color: #1297a5;
}
.houtei h3{
	background:url(../images/icn_ttldt.png) 0 33px no-repeat;
	background-size:13px 13px;
	font-weight:bold;
	padding:30px 0 0 20px;
}
.houtei section p{
	padding:10px 0 0 0;
}
.houtei section p img{
	padding: 0 0 10px 0;
}
.houtei p.note{
	background:#f7f7f7;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	font-size:12px;
	line-height:24px;
	margin:20px 0 0 0;
	padding:20px;
	text-indent:0;
}
.houtei section a {
	color: #17bed2;
}
/*.houtei section ul{
	padding:15px 0 0 0;
}*/

.houtei section ul li{
	padding:15px 0 0 0;
	/*text-indent:-24px;*/
	margin:0 0 0 24px;
}
.houtei section ul.total li{
	padding:15px 0 0 0;
	text-indent:-18px;
	margin:0 0 0 18px;
}

.houtei section ul>li>ul>li{
	padding:0;
}

.houtei section .wrap-1{
	width:380px;
	height:300px;
	float:left;
	margin-right:20px;
}


.houtei section p img{
	padding: 5px 0 0 5px;
}
.houtei .button{
	padding:40px 0 35px 60px;
}
.houtei .button p{
	float:left;
	border:5px #ccc solid;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
	width:280px;
	text-align:center;
	padding:0;
	margin:0 0 0 30px;
}
.houtei .button p:hover{
	background:#f7f7f7;
}
.houtei .button p a{
	display:block;
	padding:5px 0;
	color:#333;
	text-decoration:none;
}


/* message-sp */
@media screen and (max-width: 769px) {
	.houtei nav{
		display:none;
	}
	.houtei nav.bottom{
		display:inherit;
		padding:0 0 50px 0;
		background:#FFF;
	}
	.houtei nav ul li{
		float:none;
		border-top:1px dotted #ccc;
		text-align:left;
		width:100%;
	}
	.houtei nav ul li.here{
		background:#efefef;
	}
	.houtei nav ul li a{
		padding:8px 10px;
	}



	.houtei h1{
	    padding: 50px 5% 40px 5%;
	    text-indent: -10px;
	}
	.houtei .title {
	    font-size: 26px;
	    border-left: 5px solid #515769;
	    padding-left: 5px;
	}
	/*.houtei h2{
		font-size:14px;
		line-height:21px;
		margin:30px 0 0 0;
	}*/
	.houtei h2{
		font-size:20px;
		line-height:1.2;
		margin:15px 0 0 0;
	}
	.houtei h3{
		padding:20px 0 0 20px;
		font-size:12px;
		background:url(../images/icn_ttldt.png) 0 23px no-repeat;
		background-size:12px 12px;
	}
	.houtei p.note{
		font-size:10px;
		line-height:18px;
		margin:10px 0 0 0;
		padding:10px;
	}
	.houtei section{
		margin: 0 5%;
	}
	.houtei section p{
		font-size:12px;
		line-height:21px;
		margin:0;
	}
	.houtei section p img{
		padding: 0 0 10px 0;
		width:50%;
		height:auto;
	}

	.houtei section ul{
		padding:0;
	}
	.houtei section ul li{
		padding:10px 0 0 0;
		/*text-indent:-22px;
		margin:0 0 0 22px;*/
		font-size:12px;
		line-height:21px;
	}



	.houtei h1 img{
		width:auto;
		height:34px;
	}
	.houtei section p img{
		width:50px;
		height:auto;
		padding: 1px 0 0 5px;
	}
	.houtei .button{
		padding:10px 20px 100px 20px;
	}
	.houtei .button p{
		float:left;
		border:5px #ccc solid;
		-moz-box-shadow: 0px 0px 10px #ccc;
		-webkit-box-shadow: 0px 0px 10px #ccc;
		-webkit-border-radius: 50px;
		-moz-border-radius: 50px;
		font-weight:bold;
		width:100%;
		text-align:center;
		padding:0;
		margin:10px 0 0 0;
	}
	.houtei .button p:hover{
		background:#f7f7f7;
	}
	.houtei .button p a{
		display:block;
		padding:5px 0;
		color:#333;
		text-decoration:none;
	}
	.houtei section ul li{
		padding:10px 0 0 0;
		/*text-indent:-14px;*/
		margin:0 0 0 14px;
	}

	.houtei section .wrap-1{
		width:100%;
		height:auto;
		float:none;
		margin-right:0;
	}

}

/* ==============================================
privacypolicy
============================================== */
.privacypolicy header,
.privacypolicy nav,
.privacypolicy footer{
	display: none;
}

.privacypolicy nav ul{
	width:100%;
}
.privacypolicy nav ul li{
	width:25%;
}

.privacypolicy h1{
	text-align: left;
    padding: 100px 10% 40px 10%;
    background-color: #fafafa;
    text-indent: -25px;
}
.privacypolicy .title {
    font-family: 'Noto Sans Japanese';
    font-size: 34px;
    font-weight: 900;
    border-left: 15px solid #515769;
    padding-left: 10px;
}
.privacypolicy section{
	margin: 0 10%;
}
.privacypolicy h2{
	/*border-top:3px solid #000;*/
	/*border-bottom:1px dotted #999;*/
	margin:35px 0 0 0;
	font-size:25px;
	line-height:1.2;
	font-weight:bold;
	padding:9px 0 10px 0;
	color: #1297a5;
}
.privacypolicy h3{
	background-size: 13px 13px;
	font-weight: bold;
	padding: 30px 0 0 0;
	font-size: 20px;
}
.privacypolicy p.section-bottom {
    margin-bottom: 35px;
}
.privacypolicy p.note{
	background:#e6e6e6;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	font-size:12px;
	line-height:24px;
	margin:20px 0 0 0;
	padding:20px;
}
.privacypolicy section a {
	color: #17bed2;
}
/*.privacypolicy section ul{
	padding:15px 0 0 0;
}*/

.privacypolicy section ul li{
	padding:15px 0 0 0;
	text-indent:-24px;
	margin:0 0 0 24px;
}
.privacypolicy section ul.roman1 li{
	padding:15px 0 0 0;
	text-indent:-28px;
	margin:0 0 0 24px;
}
.privacypolicy section ul.roman2 li{
	padding:15px 0 0 0;
	text-indent:-38px;
	margin:0 0 0 24px;
}
.privacypolicy section ul.total li{
	padding:15px 0 0 0;
	text-indent:-18px;
	margin:0 0 0 18px;
}

.privacypolicy section ul>li>ul>li{
	padding:0;
}

.privacypolicy section .wrap-1{
	width:380px;
	height:300px;
	float:left;
	margin-right:20px;
}



.privacypolicy .button{
	padding:40px 0 35px 60px;
}
.privacypolicy .button p{
	float:left;
	border:5px #ccc solid;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
	width:280px;
	text-align:center;
	padding:0;
	margin:0 0 0 30px;
}
.privacypolicy .button p:hover{
	background:#f7f7f7;
}
.privacypolicy .button p a{
	display:block;
	padding:5px 0;
	color:#333;
	text-decoration:none;
}


/* message-sp */
@media screen and (max-width: 769px) {
	.privacypolicy nav{
		display:none;
	}
	.privacypolicy nav.bottom{
		display:inherit;
		padding:0 0 50px 0;
		background:#FFF;
	}
	.privacypolicy nav ul li{
		float:none;
		border-top:1px dotted #ccc;
		text-align:left;
		width:100%;
	}
	.privacypolicy nav ul li.here{
		background:#efefef;
	}
	.privacypolicy nav ul li a{
		padding:8px 10px;
	}



	.privacypolicy h1{
		padding: 50px 5% 40px 5%;
	    text-indent: -10px;
	}
	.privacypolicy .title {
	    font-size: 26px;
	    border-left: 5px solid #515769;
	    padding-left: 5px;
	}
	/*.privacypolicy h2{
		font-size:14px;
		line-height:21px;
		margin:30px 0 0 0;
	}*/
	.privacypolicy h2{
		font-size:20px;
		line-height:1.2;
		margin:15px 0 0 0;
	}
	.privacypolicy h3{
		padding:20px 0 0 0;
		font-size:17px;
		background-size:12px 12px;
	}
	.privacypolicy p.note{
		font-size:10px;
		line-height:18px;
		margin:10px 0 0 0;
		padding:10px;
	}
	.privacypolicy section{
		margin: 0 5%;
	}
	.privacypolicy section p{
		font-size:12px;
		line-height:21px;
		margin:0;
	}
	.privacypolicy p.section-bottom {
	    margin-bottom: 15px;
	}
	.privacypolicy section ul{
		padding:0;
	}
	.privacypolicy section ul li{
		padding:10px 0 0 0;
		/*text-indent:-22px;
		margin:0 0 0 22px;*/
		font-size:12px;
		line-height:21px;
	}



	.privacypolicy .button{
		padding:10px 20px 100px 20px;
	}
	.privacypolicy .button p{
		float:left;
		border:5px #ccc solid;
		-moz-box-shadow: 0px 0px 10px #ccc;
		-webkit-box-shadow: 0px 0px 10px #ccc;
		-webkit-border-radius: 50px;
		-moz-border-radius: 50px;
		font-weight:bold;
		width:100%;
		text-align:center;
		padding:0;
		margin:10px 0 0 0;
	}
	.privacypolicy .button p:hover{
		background:#f7f7f7;
	}
	.privacypolicy .button p a{
		display:block;
		padding:5px 0;
		color:#333;
		text-decoration:none;
	}
	.privacypolicy section ul li{
		padding:10px 0 0 0;
		/*text-indent:-14px;*/
		margin:0 0 0 14px;
	}

	.privacypolicy section .wrap-1{
		width:100%;
		height:auto;
		float:none;
		margin-right:0;
	}

}
/* ==============================================
houtei_kaiji
============================================== */
.houtei_kaiji table.billing_documents{
	width: 50%;
}
.houtei_kaiji .billing_documents th:first-child{
	width: 85%;
}
.houtei_kaiji .billing_documents th,
.houtei_kaiji .billing_documents td{
	padding: 5px;
	border: 1px solid #adadad;
}
/* message-sp */
@media screen and (max-width: 769px) {
	.houtei_kaiji table.billing_documents{
		width: 100%;
	}
	.houtei_kaiji .billing_documents th:first-child{
		width: 80%;
	}
	.houtei_kaiji .billing_documents th,
	.houtei_kaiji .billing_documents td{
		padding: 2px;
	}
}
/* ==============================================
compliance
============================================== */
.compliance td>p{
	padding-top: 15px;
}
.compliance .landscape{
	display: table-row;
}
.compliance .landscape>td{
	/*width: 33%;*/
}
.compliance .landscape>td:first-child{
	border-right: 50px solid white;
}
.compliance .portrait{
	display: none;
}

/* message-sp */
@media screen and (max-width: 769px) {
	.compliance .landscape{
		display: none;
	}
	.compliance .portrait{
		display: table-row;
	}
	.compliance td>p{
		padding-top: 7px;
	}
}
/* ==============================================
policy
============================================== */
.policy header,
.policy nav,
.policy footer{
	display: none;
}

.policy nav ul{
	width:100%;
}
.policy nav ul li{
	width:25%;
}


.policy .title{
	font-family: 'Noto Sans Japanese';
	font-size: 34px;
	font-weight: 900;
	border-left: 15px solid #515769;
	padding-left: 10px;
}
.policy h1{
	text-align:left;
	padding:100px 10% 40px 10%;
	background-color: #fafafa;
	text-indent: -25px;
}
.policy h2{
	/*border-top:3px solid #000;*/
	/*border-bottom:1px dotted #999;*/
	margin:35px 0 0 0;
	font-size:25px;
	line-height:1.2;
	font-weight:bold;
	padding:9px 0 10px 0;
	color: #1297a5;
}
.policy h3{
	/*background:url(../images/icn_ttldt.png) 0 33px no-repeat;*/
	background-size:13px 13px;
	font-weight:bold;
	padding:30px 0 0 0;
	font-size: 20px;
}

.policy p,
.policy li {
	color: #656871;
}

.policy section {
	margin: 0 10%;
}

.policy section p{
	padding:15px 0 0 0;
}
.policy section #current-status{
	color:#e66464;
	font-weight:bold;
}
.policy section a{
	color:#17bed2;
}
.policy .button{
	padding:30px 0 30px 0;
}
.policy .button a{
	border:5px #97c5cc solid;
	padding:10px 50px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
	background:#fff;
}
.policy .button a:hover{
	text-decoration:none;
	background:#eefbff;
}
.policy p.note{
	background:#f7f7f7;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	font-size:12px;
	line-height:24px;
	margin:20px 0 0 0;
	padding:20px;
	text-indent:0;
}
.policy ul.section-bottom {
	margin-bottom: 35px;
}
.policy .optout .btn{
	border:none;
	padding: 15px 40px;
	background: #17bed2;
}
.policy .optout .btn:focus{
	outline: none;
}
.policy .optout .btn>a{
	color: #ffffff;
}

.optout .btn>a:hover{
	text-decoration: none;
}

.policy .optout dl{
	background:#e6e6e6;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	margin:20px 0 0 0;
	padding:20px;
	text-indent:0;
}


.policy section>ul{
	padding:15px 0 0 0;
}
.policy section ul li{
	padding:15px 0 0 0;
	text-indent:-24px;
	margin:0 0 0 24px;
}
.policy footer .footer-links{
	padding: 0 10%;
	display: flex;
}

/* message-sp */
@media screen and (max-width: 769px) {

	.policy nav{
		display:none;
	}
	.policy nav.bottom{
		width:100%;
		display:inherit;
		padding:0 0 50px 0;
		background:#FFF;
	}
	.policy nav ul li{
		float:none;
		border-top:1px dotted #ccc;
		text-align:left;
		width:100%;
	}
	.policy nav ul li.here{
		background:#efefef;
	}
	.policy nav ul li a{
		padding:8px 10px;
	}



	.policy .title{
		font-size: 26px;
		border-left: 5px solid #515769;
		padding-left: 5px;
	}
	.policy h1{
		padding:50px 5% 40px 5%;
		text-indent: -10px;
	}
	.policy h1 img{
		width:70%;
		height:70%;
	}
	.policy h2{
		font-size:20px;
		line-height:1.2;
		margin:15px 0 0 0;
	}
	.policy h3{
		padding:20px 0 0 0;
		font-size:17px;
		/*background:url(../images/icn_ttldt.png) 0 23px no-repeat;*/
		background-size:12px 12px;
	}
	.policy section{
		margin: 0 5%;
	}
	.policy section p{
		font-size:12px;
		line-height:21px;
		margin:0;
		padding:15px 0 0 0;
	}
	.policy p.note{
		font-size:10px;
		line-height:18px;
		margin:10px 0 0 0;
		padding:10px;
	}
	.policy ul.section-bottom {
		margin-bottom: 15px;
	}
	.policy .optout .btn img{
		width:290px;
		height:auto;
	}


	.policy section ul{
		padding:0;
	}
	.policy section ul li{
		padding:10px 0 0 0;
		text-indent:-22px;
		margin:0 0 0 22px;
		font-size:12px;
		line-height:21px;
	}
	.policy footer .footer-links{
		padding: 0;
		display: block;
	}

}

/* ==============================================
cookie
============================================== */
.cookie header,
.cookie nav,
.cookie footer{
	display: none;
}

.cookie nav ul{
	width:100%;
}
.cookie nav ul li{
	width:25%;
}
.cookie .title{
	font-family: 'Noto Sans Japanese';
	font-size: 34px;
	font-weight: 900;
	border-left: 15px solid #515769;
	padding-left: 10px;
}
.cookie h1{
	text-align:left;
	padding:100px 10% 40px 10%;
	background-color: #fafafa;
	text-indent: -25px;
}
.cookie h2{
	/*border-top:3px solid #000;*/
	/*border-bottom:1px dotted #999;*/
	margin:35px 0 0 0;
	font-size:25px;
	line-height:1.2;
	font-weight:bold;
	padding:9px 0 10px 0;
	color: #1297a5;
}
.cookie h3{
	/*background:url(../images/icn_ttldt.png) 0 33px no-repeat;*/
	background-size:13px 13px;
	font-weight:bold;
	padding:30px 0 0 0;
	font-size: 20px;
}

.cookie p,
.cookie li {
	color: #656871;
}

.cookie section {
	margin: 0 10%;
}

.cookie section p{
	padding:15px 0 0 0;
}
.cookie section #current-status{
	color:#e66464;
	font-weight:bold;
}
.cookie section a{
	color:#17bed2;
}
.cookie .button{
	padding:30px 0 30px 0;
}
.cookie .button a{
	border:5px #97c5cc solid;
	padding:10px 50px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
	background:#fff;
}
.cookie .button a:hover{
	text-decoration:none;
	background:#eefbff;
}
.cookie p.note{
	background:#f7f7f7;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	font-size:12px;
	line-height:24px;
	margin:20px 0 0 0;
	padding:20px;
	text-indent:0;
}
.cookie p.section-bottom {
	margin-bottom: 35px;
}
.cookie .optout .btn{
	border:none;
	padding: 15px 40px;
	background: #17bed2;
}
.cookie .optout .btn:focus{
	outline: none;
}
.cookie .optout .btn>a{
	color: #ffffff;
}

.optout .btn>a:hover{
	text-decoration: none;
}

.cookie .optout dl{
	background:#e6e6e6;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	margin:20px 0 0 0;
	padding:20px;
	text-indent:0;
}


.cookie section ul{
	padding:15px 0 0 0;
}
.cookie section ul li{
	padding:15px 0 0 0;
	text-indent:-24px;
	margin:0 0 0 24px;
}
.cookie footer .footer-links{
	padding: 0 10%;
	display: flex;
}

/* message-sp */
@media screen and (max-width: 769px) {

	.cookie nav{
		display:none;
	}
	.cookie nav.bottom{
		width:100%;
		display:inherit;
		padding:0 0 50px 0;
		background:#FFF;
	}
	.cookie nav ul li{
		float:none;
		border-top:1px dotted #ccc;
		text-align:left;
		width:100%;
	}
	.cookie nav ul li.here{
		background:#efefef;
	}
	.cookie nav ul li a{
		padding:8px 10px;
	}

	.cookie .title{
		font-size: 26px;
		border-left: 5px solid #515769;
		padding-left: 5px;
	}

	.cookie h1{
		padding:50px 5% 40px 5%;
		text-indent: -10px;
	}
	.cookie h1 img{
		width:70%;
		height:70%;
	}
	.cookie h2{
		font-size:20px;
		line-height:1.2;
		margin:15px 0 0 0;
	}
	.cookie h3{
		padding:20px 0 0 0;
		font-size:17px;
		/*background:url(../images/icn_ttldt.png) 0 23px no-repeat;*/
		background-size:12px 12px;
	}
	.cookie section{
		margin: 0 5%;
	}
	.cookie section p{
		font-size:12px;
		line-height:21px;
		margin:0;
		padding:15px 0 0 0;
	}
	.cookie p.note{
		font-size:10px;
		line-height:18px;
		margin:10px 0 0 0;
		padding:10px;
	}
	.cookie p.section-bottom {
		margin-bottom: 15px;
	}
	.cookie .optout .btn img{
		width:290px;
		height:auto;
	}


	.cookie section ul{
		padding:0;
	}
	.cookie section ul li{
		padding:10px 0 0 0;
		text-indent:-22px;
		margin:0 0 0 22px;
		font-size:12px;
		line-height:21px;
	}
	.cookie footer .footer-links{
		padding: 0;
		display: block;
	}

}



/* ==============================================
sitepolicy
============================================== */

.sitepolicy h1{
	text-align:center;
	padding:100px 0 40px 0;
}
.sitepolicy h2{
	border-top:3px solid #000;
	border-bottom:1px dotted #999;
	margin:70px 0 0 0;
	font-size:16px;
	line-height:36px;
	font-weight:bold;
	padding:9px 0 10px 0;
}

.sitepolicy ul.gllist{
	list-style-type: disc;
}
.sitepolicy ol.gllist{
	margin-top:40px;
}
.sitepolicy ul.gllist li,
.sitepolicy ol.gllist li{
	margin-left:20px;
}
.sitepolicy p.linkarrow{
	text-decoration:underline;
}


/* message-sp */
@media screen and (max-width: 769px) {

	.sitepolicy h1{
		padding:50px 0 40px 0;
	}
	.sitepolicy h1 img{
		width:auto;
		height:60px;
	}
	.sitepolicy h2{
		font-size:14px;
		line-height:21px;
		margin:30px 0 0 0;
	}
	.sitepolicy section p{
		font-size:12px;
		line-height:21px;
		padding:20px 0 0 0;
	}

}



/* ==============================================
securitypolicy
============================================== */

.securitypolicy h1{
	text-align:center;
	padding:100px 0 40px 0;
}
.securitypolicy section ul{
	padding:30px 0 0 0;
}
.securitypolicy section ul li{
	padding:30px 0 0 0;
	margin:0 0 0 24px;
	text-indent:-24px;
}

.securitypolicy table{
	width:500px;
	float:right;
}
.securitypolicy table td{
	border: 1px solid #000;
	padding: 5px;
}
.securitypolicy .isoBlock{
	padding-top:100px;
}


/*
-sp */
@media screen and (max-width: 769px) {

	.securitypolicy h1{
		padding:50px 0 50px 0;
	}
	.securitypolicy h1 img{
		width:auto;
		height:60px;
	}
	.securitypolicy table{
		width:100%;
		float:none;
	}
	.securitypolicy .isoBlock{
		text-align:center;
		padding-top:50px;
	}
	.securitypolicy .isoBlock img{
		width:50%;
		height:auto;
		margin-bottom:30px;
	}
	.securitypolicy .isoBlock table td{
		text-align:left;
	}


}



/* ==============================================
contact
============================================== */

.contact nav ul{
	width:100%;
}
.contact nav ul li{
	width:33.33%;
}



.contact h1{
	text-align:center;
	padding:100px 0 40px 0;
}
.contact h2{
	text-align:center;
	border-top:3px solid #000;
	border-bottom:1px dotted #999;
	margin:70px 0 0 0;
	font-size:16px;
	font-weight:bold;
	padding:9px 0 10px 0;
}
.contact h3{
	font-weight:bold;
}


.contact p.button{
	padding:50px 0 0 0;
	margin:0 auto 60px auto;
	text-align:center;
}
.contact p.button a{
	background:#FFF;
	border:5px #97c5cc solid;
	padding:10px 50px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-weight:bold;
}
.contact p.button a:hover{
	text-decoration:none;
	background:#eefbff;
}

.contact p.dsplppdf{
	height:52px;
	line-height: 52px;
	text-decoration:underline;
}

.contact .note{
	border:1px solid #e6e6e6;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding:30px 0 30px 30px;
	margin:80px 0 0 0;
}
.contact .note ul{
	padding:10px 0 0 0;
}
.contact .note ul li{
	padding:10px 0 0 0;
	text-indent:-14px;
	margin: 0 0 0 14px;
}


.contact .frame{
	border-top:1px solid #e6e6e6;
	border-right:1px solid #e6e6e6;
	border-bottom:1px solid #e6e6e6;
	margin:50px 0 0 0;
}
.contact .frame div{
	width:24.6%;
	float:left;
	border-left:1px solid #e6e6e6;
}
.contact .frame:after { content:"."; clear:both; height:0; display:block; visibility:hidden; }
* html .contact .frame { display:inline-block; }
*:first-child+html .contact .frame { display:inline-block; }



.contact .frame h2{
	font-size:16px;
	font-weight:bold;
	text-align:center;
	padding:50px 0 0 0;
	border:none;
	margin:0;
}
.contact .frame p{
	padding:20px 30px 0 30px;
	text-align:center;
}
.contact .frame p.ta_left {
	text-align: left;
}
.contact .frame p.button{
	padding:40px 0 0 0;
	margin:0 auto 60px auto;
}
.contact .frame p.button a{
	background:#FFF;
	border:5px #97c5cc solid;
	padding:10px 30px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
}
.contact .frame p.button a:hover{
	text-decoration:none;
	background:#eefbff;
}



.contact .list div{
	border:1px solid #e6e6e6;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	padding:30px 0 30px 30px;
	margin:50px 0 0 0;
	position:relative;
}
.contact .list div h2{
	text-align:left;
	border:none;
	padding:0;
	margin:0;
}
.contact .list div p{
	padding:10px 0 0 0;
	line-height:24px;
	width:430px;
}
.contact .list div .button{
	position:absolute;
	top:43px;
	right:30px;
	background:#FFF;
	border:5px #97c5cc solid;
	padding:0;
	text-align:center;
	width:240px;
	-moz-box-shadow: 0px 0px 10px #ccc;
	-webkit-box-shadow: 0px 0px 10px #ccc;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
}
.contact .list div .button:hover{
	text-decoration:none;
	background:#eefbff;
}
.contact .list div .button a{
	display:block;
	border: none;
	padding:10px 0;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	-webkit-border-radius: inherit;
	-moz-border-radius: inherit;
}


.contact article#iframe{
	width:1000px;
	margin:0 auto;
	border:none;
}
.contact iframe{
	width:1000px;
	height:1600px;
	border:none;
}
.contact .txtlink {
	padding:80px 0;
	height: 20px;
	line-height: 20px;
}
.contact .txtlink a {
	font-size:16px;
	color:#629fa5;
}
.contact .txtlink a img{
	margin-right:10px;
}

/* message-sp */
@media screen and (max-width: 769px) {

	.contact nav{
		display:none;
	}
	.contact nav.bottom{
		width:100%;
		display:inherit;
		padding:0 0 50px 0;
		background:#FFF;
	}
	.contact nav ul li{
		float:none;
		border-top:1px dotted #ccc;
		text-align:left;
		width:100%;
	}
	.contact nav ul li.here{
		background:#efefef;
	}
	.contact nav ul li a{
		padding:8px 10px;
	}



	.contact h1{
		padding:50px 0 40px 0;
	}
	.contact h1 img{
		width:auto;
		height:55px;
	}
	.contact h2{
		text-align:left;
		font-size:14px;
		margin:30px 0 0 0;
		padding:9px 0;
	}
	.contact h3{
		font-weight:bold;
		padding:0 0 0 5px;
	}


	.contact p.button{
		padding:40px 0 0 0;
		margin:0 auto 40px auto;
	}


	.contact .note{
		padding:15px 15px 15px 10px;
		margin:0;
		font-size:12px;
		line-height:21px;
	}
	.contact .note ul{
		padding:0;
	}
	.contact .note ul li{
		padding:10px 0 0 0;
		text-indent:-14px;
		margin: 0 0 0 14px;
	}





	.contact .frame{
		margin:30px 0 0 0;
		border:none;
	}
	.contact .frame div{
		width:100%;
		float:inherit;
		border:1px solid #e6e6e6;
		margin:15px 0 0 0;
	}



	.contact .frame h2{
		padding:20px 0 0 0;
		border:none;
		margin:0;
	}
	.contact .frame p{
		padding:10px 15px 0 15px;
	}
	.contact .frame p.button{
		padding:30px 0 0 0;
		margin:0 auto 40px auto;
	}



	.contact .list{
		padding:0 0 30px 0;
	}
	.contact .list div{
		padding:15px 15px 25px 15px ;
		margin:10px 0 0 0;
		position:relative;
	}
	.contact .list div p{
		padding:10px 0 0 0;
		font-size:12px;
		line-height:21px;
		width: auto;
	}
	.contact .list div .button{
		font-size:14px;
		position: inherit;
		top:0;
		right:0;
		margin:10px auto 0 auto;
	}
	.contact .list div .button:hover{
		background:none;
	}

}

/* ==============================================
error | 2015.05.07 kakobayashi追記
============================================== */

.error article{
	width:100%;
	border-top:1px solid #E6E6E6;
	padding:165px 0 0;
	background:url(../../images/tp_cpt_bg.png) -426px center no-repeat;
	text-align:center;
}
.error article h1{
	font-size:30px;
	font-weight:500;
	line-height:38px;
}
.error article h1 br {
	display:none;
}
.error article p {
	width:400px;
	margin:40px auto 0;
	text-align:left;
	padding:0;
}
.error article div {
	margin:75px 0 0;
	padding-bottom:160px;
}
.error article div a {
	padding:6px 0;
	color:#629FA5;
}
.error article div a:first-child {
	/*background-color:green;*/
	padding-right:40px;
	border-right:1px solid #666666;
}
.error article div a:nth-child(2) {
	padding-left:30px;
}

/* -sp */
@media screen and (max-width: 769px) {
	.error article{
		margin:0;
		padding:100px 0 0;
	}
	.error article h1 br {
		display:block;
	}
	.error article p {
		width:auto;
		padding:0 10px;
	}
	.error article p br {
		display:none;
	}
	.error article div {
		padding-bottom:60px;
	}
	.error article div a {
		display:block;
		padding:0;
	}
	.error article div a:first-child {
		padding-right:0px;
		border-right:none;
	}
	.error article div a:nth-child(2) {
		padding-left:0px;
		margin-top:20px;
	}

	} /*2015.05.07 kakobayashi追記 end*/

/* ==============================================
densikoukoku
============================================== */

.densikoukoku section ul li {
	margin-top:0px;
}
.densikoukoku section ul li a img {
	margin:0 5px;
}
.densikoukoku section ul li span {
	margin-right:30px;
	font-weight:bold;
}
.densikoukoku a:link {
	color:#333;
	text-decoration: none;
}
.densikoukoku article #list ul li a:hover {
	text-decoration: none;
	background: #f7f7f7;
}
.densikoukoku a:visited {
	color: #333333;
	text-decoration: none;
}

.densikoukoku article #list ul li {
	border-bottom: dotted 1px #CCC;
}
.densikoukoku article #list ul  {
	padding:20px 0 0 0;
}
.densikoukoku article #list ul li a {
	display: block;
	text-indent: -102px;
	padding: 20px 0 19px 102px;
}

.densikoukoku article .acrobatDl {
	width:100%;
	margin-top:30px;
	clear: both;
	line-height: 1.4em;
}
.densikoukoku article .acrobatDl div img {
	float:left;
	margin-right:15px;
}
