@charset 'utf-8';
@import 'type_a.css';

/*****************************************************************************
 基本
 *****************************************************************************/

* { margin:0; padding:0; }
body { 
	font-size:85%;
	color:#2c2d2e;
	/*font-family:"ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";*/
	font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	line-height:1.4;
	-webkit-text-size-adjust: 100%;
}
a:link,a:visited,a:active { 
	color:#2c2d2e;
}
a:hover { 
	color:#2c2d2e;
	text-decoration:none;
}
img { border:none; }
h1, h2, h3, h4, h5, h6 { font-size:100%; }


*,
*:before,
*:after{
 box-sizing: border-box;
}
html, body {
	margin: 0;
	padding: 0;
}
h1, h2, h3, h4, h5, h6, address, em {
	margin: 0;
	padding: 0;
	border: 0;
	font-style: normal;
	font-weight: normal;
}
div, blockquote, p, pre, ul, ol, li, dl, dt, dd {
	margin: 0;
	padding: 0;
	border: 0;
}
table, caption, th, td {
	font-style: normal;
	font-weight: normal;
	padding: 0;
	margin: 0;
}
hr {
	margin: 0;
	padding: 0;
	border: none;
}
form, fieldset, input, button, select, optgroup, option, textarea,label, legend {
	margin: 0;
	padding: 0;
}
span, em, strong, dfn, code, samp, kbd, var, cite, abbr, acronym, q, br,ins, del, a, img, object {
	margin: 0;
	padding: 0;
	border: 0;
}
i,address {
	font-style:normal;
}
ul,dl,ol,li {
	list-style-position:outside;
	list-style-type:none;
}
em {
	font-weight:bold;
}
img{
	vertical-align:top;
}
a { 
	outline:none; 
	/*text-decoration:none;*/
}
a img { border:none;}
input[type="text"],
input[type="button"],
input[type="submit"],
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	border-radius: 0;
}


/*****************************************************************************
 clearfix 
 *****************************************************************************/

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {	
	display: inline-block;
	min-height: 1px;
}
/* Hides from IE-mac \*/
.clearfix { 
	/height: 1%;
	display: block;
}
/* End hide from IE-mac */ 



/*****************************************************************************
 テーブル関連
 *****************************************************************************/

table { border:0; border-collapse:collapse; font-size:100%; }
.vaT { vertical-align:top !important; }
.vaM { vertical-align:middle !important; }
.vaB { vertical-align:bottom !important; }


#table-01 {
		width: 100%;
    border: 1px #ffffff solid;
    border-collapse: collapse;
    border-spacing: 0;
}

#table-01 th {
    padding: 3px;
    border: #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    background: #F5F5F5;
    font-weight: bold;
    line-height: 120%;
    text-align: center;
}
#table-01 td {
    padding: 3px;
    border: 1px #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    text-align: left;
}


/*****************************************************************************
 フォント関連
 *****************************************************************************/

.fs70 { font-size:70%; }
.fs80 { font-size:80%; }
.fs90 { font-size:90%; }
.fs100 { font-size:100%; }
.fs110 { font-size:110%; }
.fs120 { font-size:120%; }
.fs140 { font-size:140%; }
.fs160 { font-size:160%; }
.fs10 { font-size:10px; }
.fs12 { font-size:12px; }
.fs14 { font-size:14px; }
.fs16 { font-size:16px; }
.fs18 { font-size:18px; }

.ffj1 { font-family:"ＭＳ Ｐ明朝", "細明朝体", "ヒラギノ明朝 Pro W3"; }
.ffj2 { font-family:"ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3"; }
.ffj3 { font-family:"ＭＳ ゴシック", "Osaka－等幅"; }
.ffe1 { font-family:Arial, Helvetica, sans-serif; }
.ffe2 { font-family:"Times New Roman", Times, serif; }
.ffe3 { font-family:"Courier New", Courier, mono; }
.ffe4 { font-family:Georgia, "Times New Roman", Times, serif; }
.ffe5 { font-family:Geneva, Arial, Helvetica, sans-serif; }

.fwB { font-weight:bold; }
.fwN { font-weight:normal; }

small { font-size:80%; }


/*****************************************************************************
 テキスト関連
 *****************************************************************************/

.lh12em { line-height:1.2; }
.lh14em { line-height:1.4; }
.lh16em { line-height:1.6; }
.lh18em { line-height:1.8; }

.tdN { text-decoration:none; }
.tdU { text-decoration:underline; }

.taL { text-align:left !important; }
.taR { text-align:right !important; }
.taC { text-align:center !important; }


/*****************************************************************************
 フロート関連
 *****************************************************************************/

.left { float:left; }
.right { float:right; }
.clear { clear:both; height:0; line-height:0; font-size:1%; }
.cb { clear:both; height:0; line-height:0; font-size:1%; }


/*****************************************************************************
 インライン・ブロック関連
 *****************************************************************************/
.dB { display:block; }
.dI { display:inline; }
.dN { display:none; }


/*****************************************************************************
 リスト関連
 *****************************************************************************/
.lsN { list-style:none; }


/*****************************************************************************
 マージン
 *****************************************************************************/

.m00 { margin:0 !important; }
.m05 { margin:5px !important; }
.m10 { margin:10px !important; }
.m15 { margin:15px !important; }
.m20 { margin:20px !important; }

.mLR00 { margin-right:0px; margin-left:0px !important; }
.mLR05 { margin-right:5px; margin-left:5px !important; }
.mLR10 { margin-right:10px; margin-left:10px !important; }
.mLR15 { margin-right:15px; margin-left:15px !important; }
.mLR20 { margin-right:20px; margin-left:20px !important; }

.mT00 { margin-top:0px !important; }
.mT05 { margin-top:5px !important; }
.mT10 { margin-top:10px !important; }
.mT15 { margin-top:15px !important; }
.mT20 { margin-top:20px !important; }
.mT25 { margin-top:25px !important; }
.mT30 { margin-top:30px !important; }
.mT35 { margin-top:35px !important; }
.mT40 { margin-top:40px !important; }

.mR00 { margin-right:0px !important; }
.mR05 { margin-right:5px !important; }
.mR10 { margin-right:10px !important; }
.mR15 { margin-right:15px !important; }
.mR20 { margin-right:20px !important; }
.mR25 { margin-right:25px !important; }
.mR30 { margin-right:30px !important; }
.mR35 { margin-right:35px !important; }
.mR40 { margin-right:40px !important; }

.mB00 { margin-bottom:0px !important; }
.mB05 { margin-bottom:5px !important; }
.mB10 { margin-bottom:10px !important; }
.mB15 { margin-bottom:15px !important; }
.mB20 { margin-bottom:20px !important; }
.mB25 { margin-bottom:25px !important; }
.mB30 { margin-bottom:30px !important; }
.mB35 { margin-bottom:35px !important; }
.mB40 { margin-bottom:40px !important; }

.mL00 { margin-left:0px !important; }
.mL05 { margin-left:5px !important; }
.mL10 { margin-left:10px !important; }
.mL15 { margin-left:15px !important; }
.mL20 { margin-left:20px !important; }
.mL25 { margin-left:25px !important; }
.mL30 { margin-left:30px !important; }
.mL35 { margin-left:35px !important; }
.mL40 { margin-left:40px !important; }


/*****************************************************************************
 パディング
 *****************************************************************************/

.p00 { padding:0!important ; }
.p05 { padding:5px !important; }
.p10 { padding:10px !important; }
.p15 { padding:15px !important; }
.p20 { padding:20px !important; }

.pLR00 { padding-right:0px; padding-left:0px !important; }
.pLR05 { padding-right:5px; padding-left:5px !important; }
.pLR10 { padding-right:10px; padding-left:10px !important; }
.pLR15 { padding-right:15px; padding-left:15px !important; }
.pLR20 { padding-right:20px; padding-left:20px !important; }

.pT00 { padding-top:0px !important; }
.pT05 { padding-top:5px !important; }
.pT10 { padding-top:10px !important; }
.pT15 { padding-top:15px !important; }
.pT20 { padding-top:20px !important; }
.pT25 { padding-top:25px !important; }
.pT30 { padding-top:30px !important; }
.pT35 { padding-top:35px !important; }
.pT40 { padding-top:40px !important; }

.pR00 { padding-right:0px !important; }
.pR05 { padding-right:5px !important; }
.pR10 { padding-right:10px !important; }
.pR15 { padding-right:15px !important; }
.pR20 { padding-right:20px !important; }
.pR25 { padding-right:25px !important; }
.pR30 { padding-right:30px !important; }
.pR35 { padding-right:35px !important; }
.pR40 { padding-right:40px !important; }

.pB00 { padding-bottom:0px !important; }
.pB05 { padding-bottom:5px !important; }
.pB10 { padding-bottom:10px !important; }
.pB15 { padding-bottom:15px !important; }
.pB20 { padding-bottom:20px !important; }
.pB25 { padding-bottom:25px !important; }
.pB30 { padding-bottom:30px !important; }
.pB35 { padding-bottom:35px !important; }
.pB40 { padding-bottom:40px !important; }

.pL00 { padding-left:0px !important; }
.pL05 { padding-left:5px !important; }
.pL10 { padding-left:10px !important; }
.pL15 { padding-left:15px !important; }
.pL20 { padding-left:20px !important; }
.pL25 { padding-left:25px !important; }
.pL30 { padding-left:30px !important; }
.pL35 { padding-left:35px !important; }
.pL40 { padding-left:40px !important; }


/*****************************************************************************
 グローバルナビ
 *****************************************************************************/

#gnv {
	width:100%;
	margin:0 0 10px 0;
	display: flex;
	border: 1px solid #565656;
	border-top: 0;
	padding: 1px;
	background: #fff;
}
#gnv li {
	width: 20%;
	border-right: 2px solid #565656;
	box-sizing: border-box;
}
#gnv li:last-child {
	border: none;
}
#gnv li a{
	display:block;
	background: linear-gradient(to bottom, #6f6f6f 0%,#646464 100%);
	color: #fff;
	text-align: center;
	padding: 15px 0;
	text-decoration: none;
}
#gnv li a:hover{
	opacity: 0.9;
}
#gnv li a span{
position: relative;
padding-left: 18px;
}
#gnv li a span::before{
	content: "";
	background: url("../img/gnvArr.png") no-repeat 0 0;
	width: 12px;
	height: 12px;
	display: inline-block;
	transform: translateY(-50%);
	position: absolute;
	left: 0;
	top:50%;
}

/*****************************************************************************
 ヘッダー
 *****************************************************************************/

div#header {
	width:100%;
}
/*div#header h1,
div#header h1 a {
	width:280px;
	height:66px;
	width:300px;
	height:66px;
}
div#header h1 {
	float:left;
	background:url(../img/header_logo.gif) no-repeat left center;
	background: url(../img/ctslogo.jpg) no-repeat 0 50%;
}
div#header h1 a {
	display:block;
	overflow:hidden;
	text-indent:-9999px;
}*/
div#header .headerlogo{
	height: 66px;
}
div#header .headerlogo a {
	display:block;
	height: 66px;
	padding: 20px 0;
	box-sizing: border-box;
}
div#header .left {
	width:520px;
	width:600px;
}
div#header .right {
	width:212px;
}
/*div#header p.catch {
	display: none;	
	float:right;
	width:300px;
	padding:2em 0 0 0;
	font-size:14px;
}
div#header p.catch a {
	text-decoration:none;
}*/



/*****************************************************************************
 フッターナビ
 *****************************************************************************/

div#fnv {
	width:100%;
	border-bottom:1px solid #ddddd3;
}
div#fnv .left {
	font-size:12px;
	padding:0.5em 0 0 0;
	display: flex;
}
div#fnv .left li {
	margin-right: 13px;
}
div#fnv .left a {
	background:url("../img/icon_arrow02.gif") no-repeat left center;
	padding-left:18px;
}

div#fnv .right {
	width:150px;	
}

/*****************************************************************************
 フッター
 *****************************************************************************/

div#footer {
	width:100%;
	margin:0 0 10px 0;
	border-top:1px solid #cdcfce;
	padding:10px 0 0 0;
}
div#footer p#logo {
	font-size:12px;
	padding:0 0 6px 0;
	vertical-align: middle;
	display: inline-block;
	float: left;
}
div#footer p#logo img{
	width: 100%;
}
div#footer ul{
	display: flex;
	margin-top: 6px;
}
div#footer li{
	margin-left: 13px;
	font-size: 12px;
}
div#footer li a {
	background:url("../img/icon_arrow02.gif") no-repeat left center;
	padding-left:18px;
}
div#footer p#add {
	clear: both;
	margin-top: 5px;
	font-size:10px;
}

/*****************************************************************************
 コピーライト
 *****************************************************************************/

div#copyright {
	width:100%;
	color:#fff;
	font-size:80%;
	padding:8px 0;
	background:#270bb5;
}
div#copyright .in {
	padding:0 14px;
}
div#copyright .left {
	width:370px;
}
div#copyright .right {
	/*width:350px;*/
	text-align:right;
}

/*****************************************************************************
 ワイヤー
 *****************************************************************************/
#body {
	width:1100px;
	margin:auto;
	background:#fff;
}
/*@media screen and (max-width: 1100px) {
	#body {
		width:100%;
	}
}*/
#padding {
	padding:0 14px;
}
#contents {
	width:100%;
	margin:0 0 20px 0;
}
#contents #left {
	float:left;
	width:504px;
	width: calc(100% - 234px);
	margin-top: 5px;
}
#contents #right {
	float:right;
	width:212px;
}
#contents #right.heightLine {
	float:right;
	width:212px;
	background:url("../img/catebox-title-mid.png") repeat-y 0 0;
	position: relative;
}
#contents #right.heightLine::after {
	content: url("../img/catebox-title-btm.png");
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
}
/*****************************************************************************
 メインイメージ
 *****************************************************************************/
#main-image {
	margin-bottom: 5px;
}
#main-image img{
	width: 100%;
}
/*****************************************************************************
 左段、ボックス
 *****************************************************************************/
.leftbox {
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #fff;
	padding: 1px;
}
.leftbox .foot {
	border: 3px solid #edeedc;
	border-radius: 4px;
}
.leftbox .foot .in {
	border: 1px solid #ccc;
	padding: 12px 10px;
	background: #fff;
}




/*****************************************************************************
 お問い合わせリンク
 *****************************************************************************/
.contactBoxOuter {
	background: #fff;
	border-bottom: 10px solid #fff;
}
.contactBox {
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #fff;
	padding: 1px;
	/*margin-bottom:10px;*/
}
.contactBox .foot {
	border: 3px solid #edeedc;
	border-radius: 4px;
}
.contactBox .foot .in {
	border: 1px solid #ccc;
	background: linear-gradient(to bottom, rgba(20,72,191,1) 0%,rgba(38,15,182,1) 100%);
	color: #fff;
	line-height:1;
}
.contactTitle{
	padding: 15px 15px 7px;
	position: relative;
}
.contactTitle::after{
	content: "";
	width: 192px;
	height: 1px;
	background: rgba(255,255,255,0.5);
	display: block;
	position: absolute;
	left: 4px;
	bottom: 0;
}
.contactBtn{
}
.contactBtn a{
	display: block;
	padding: 11px 12px 11px 34px;
	position: relative;
	color:#fff;
	font-weight:bold;
	text-decoration:none;
}
.contactBtn a::before{
	content: "";
	background:url("../img/icon_arrow02.gif") no-repeat 0 0;
	display: block;
	width: 12px;
	height: 12px;
	position: absolute;
	left: 17px;
	top: 11px;
}
.contactBtn a:hover{
	opacity:0.8;
}




/*****************************************************************************
 事業内容footer
 *****************************************************************************/
#top-etc2 {
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #fff;
	padding: 1px;
	margin-bottom: 30px;
}
#top-etc2 .foot {
	border: 3px solid #edeedc;
	border-radius: 4px;
}
#top-etc2 .foot .in {
	border: 1px solid #ccc;
	padding: 15px 12px 0;
	background: #ffffff;
}
#top-etc2 .foot .in .categoryTop {
	padding: 0 5px 4px;
	margin-bottom: 5px;
	border-bottom: 1px solid #dcdcdc;
	font-weight: bold;
}
ul.category {
	list-style:none;
	margin:0 0.5em;
	display: flex;
}
ul.category li{	
	padding: 0;

	margin: 0 1em 0 0;
}
ul.category li a{
	display: block;
	padding:4px 0 4px 18px;
	position: relative;
}
ul.category li a::before{
	content: "";
	background:url("../img/icon_arrow02.gif") no-repeat 0 0;
	display: block;
	width: 12px;
	height: 12px;
	position: absolute;
	left: 0;
	top: 6px;
}






/*****************************************************************************
 カテゴリright
 *****************************************************************************/
#right #top-etc2Outer {
	background: #fff;
}
#right #top-etc2 {
	margin-bottom: 0;
}
#right.heightLine #top-etc2 {
	border-bottom: none;
	padding-bottom: 0;
	border-radius: 4px 4px 0 0;
}
#right #top-etc2 .foot {
	border: 3px solid #edeedc;
}
#right.heightLine #top-etc2 .foot {
	border-bottom: none;
	border-radius: 4px 4px 0 0;
}
#right #top-etc2 .foot .in {
	background: #fffff1;
}
#right.heightLine #top-etc2 .foot .in {
	border-bottom: none;
}
#right ul.category{	
	display: block;
	margin: 0;
}
#right ul.category li{
	display: block;
	margin: 0 0 0.5em;
}




/*****************************************************************************
 矢印・アイコン
 *****************************************************************************/
.arrow {
	background:url("../img/icon_arrow02.gif") no-repeat left center;
	padding:0 0 0 18px;
}
p.pdf {
	background:url("../img/icon_pdf.jpg") no-repeat left top;
}
p.pdf span {
	display:block;
	padding-left:60px;
	line-height:1.3;
	padding-top:5px;
}

/*****************************************************************************
 Adsエリア
 *****************************************************************************/
.ads {
	width:740px;
	width:100%;
	margin:auto;
	border-top:1px solid #ccc;
}
.ads .in {
	width:708px;
	width:100%;
	padding:20px 0;
	margin:auto;
	padding: 20px 15px;
}