@charset "utf-8";

/* ▼▼▼ トップ
=====================================*/
.inner .list {
	padding-bottom: 10px;
    padding-right: 10px;
	text-align: right;
	}
/* ▼ メインビジュアル */
#mainVisual {
	width: 960px;
    height: 350px;
	margin: 0 auto;
	position: relative;
	}

.mvArrow {
    position: absolute;
    top: 150px;
    width: 23px;
    height: 43px;
    cursor: pointer;
}

.mvArrowPrev {
  left: -35px;
  background: url(/common/img/slider_arrow01.png) no-repeat;
}
.mvArrowNext {
  right: -35px;
  background: url(/common/img/slider_arrow02.png) no-repeat;
}

.mainVisualMenu {
    width: 960px;
    margin: 15px auto;
}

.mainVisualMenu img {
	width: 99%;
	margin: auto;
	cursor: pointer;
}
.mainVisualMenu .slick-current {
	background-color: #e60012;
	color: #fff;
}

.mainVisualMenu li {
  text-align: center;
}

.mainVisualMenu li:focus {
  outline: 0; 
}

/* ▼ 最新イベント */
#new_event {
    width: 960px;
    height: 40px;
    line-height: 38px;
    margin: 30px auto;
}

#new_event br {
    display: none;
}

#new_event h2 {
    float: left;
    display: inline-block;
    width: 110px;
    background: url(../img/top/bg_top_newevent.png);
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 1px 0;
}
#new_event h2 a {
    display: block;
    color: #fff;
    text-decoration: none;
}

#new_event ul {
    position: relative;
    overflow: hidden;
    width: 848px;
    height: 38px;
    border-top: 1px solid #eee;
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

#new_event li {
    position: absolute;
    display: none;
    width: 790px;
    padding: 0 0 0 10px;
}

#new_event dl {
    float: left;
}

#new_event dt,
#new_event dd,
#new_event .request,
#new_event .request2 {
    display: inline-block;
}

#new_event dt {
    width: 160px;
    float: left;
}
#new_event dt.i01 {background: url(../img/icon_news01.gif) no-repeat 90px center;}
#new_event dt.i02 {background: url(../img/icon_news02.gif) no-repeat 90px center;}
#new_event dt.i03 {background: url(../img/icon_news03.gif) no-repeat 90px center;}
#new_event dt.cat3 {background: url(../img/icon_news05.gif) no-repeat 90px center;}
#new_event dt.cat2 {background: url(../img/icon_news04.gif) no-repeat 90px center;}
#new_event dt.cat5 {background: url(../img/icon_news06.gif) no-repeat 90px center;}	
#new_event dd {
    overflow: hidden;
    width: 620px;
    float: left;
}

#new_event dd span {
    display: inline-block;
    float: left;
    max-width: 480px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#new_event .icon_seminar {
    background: url(../img/top/icon_seminar.jpg) no-repeat 90px 50%;
}

#new_event .icon_event {
    background: url(../img/top/icon_event.jpg) no-repeat 90px 50%;
}

#new_event .request,
#new_event .request2 {
    border: 1px solid #ddd;
    background: url(../img/top/arrow_top_newevent.png) no-repeat 5px 50%;
    line-height: 25px;
    margin: 7px 0 0 10px;
}

#new_event .request a,
#new_event .request2 a {
    padding: 0 6px 0 20px;
    display: block;
}

#new_event .request a:hover, 
#new_event .request2 a:hover {
    text-decoration: none;
}

#new_event .request:hover,
#new_event .request2:hover {
    border: 1px solid #e50012;
}

#new_event li.animation {
     animation: anime1 5.5s linear 1 both;
     display: block;
}

@keyframes anime1 {
     0% {opacity: 0;}
     5% {opacity: 0;}
     15% {opacity: 1;}
     85% {opacity: 1;}
     95% {opacity:0;}
     100% {opacity: 0;}
}

/* ▼ KDLのサービス */
#service {
	max-height: 650px;
	background: url(../img/bg.gif) repeat left top;
	}
#service h2 {
	padding: 32px 0 26px;
	text-align: center;
	}
	#service ul.service {
		margin-bottom: 25px;
		overflow: hidden;
		}
		#service ul.service > li {
			float: left;
			width: 308px;
			background: #fff;
			border: 1px solid #CCCCCC;
			border-top: 5px solid #000;
			padding-bottom: 15px;
			margin-right: 15px;
			}
		#service ul.service li:last-child {margin-right: 0;}
			#service ul.service li p {
				width: 250px;
				margin: 10px auto 5px;
				font-size: 16px;
				line-height: 1.35;
				}
			#service ul.btn {
				width: 250px;
				margin: 0 auto;
				}
				#service ul.btn li {margin-bottom: 5px;}


/* ▼ 事例紹介 */
#works {
    padding: 50px 0 0;
}
#works .works {
    cursor: pointer;
}
#works .inner {
    padding: 30px 0 0;
    background: #fff;
}
#works h2 {
	margin: 0 0 30px 30px;
    font-size: 25px;
    font-weight: bold;
    color: #666;
    border-left: 6px solid #e50012;
    padding: 0 0 0 15px;
    line-height: 1.2;
}
#works .company-name {
    height: 45px;
    margin-bottom: 10px;
    position: relative;
}
#works h3 {
    width: 100%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
#works .slick-slide {
    text-align: center;
}
#works .item {
    width: 250px;
    text-align: center;
    position: relative;
    height: 200px;
    margin: 0 auto;
    padding: 6px 0 0;
}

#works .works:hover img {
    opacity: 0.35;
}
#works .item p {
    background: #000;
    box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
    -moz-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
    -webkit-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
}
#works .item img {
    margin: 0 auto;
    width: 100%;
}
#works .caption {
    display: none;
    text-align: left;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 12px;
    color: #fff;
}
#works .caption h4 {
    margin: 20px;
    font-size: 14px;
}
#works .caption p.link {
    background: none;
    padding: 0;
    margin-top: 20px;
    line-height: 16px;
    text-align: center;
}
#works .caption p.link a {
    background: url(../img/arrow_wh.png) no-repeat left center;
    padding-left: 13px;
    color: #fff;
}
#works .service-name {
    display: inline-block;
    background: #e50012;
    color: #fff;
    font-size: 12px;
    padding: 2px 4px;
    text-align: center;
    margin: 0 auto;
    border-radius: 3px;
}

#works .mvArrow {
    position: absolute;
    top: 80px;
    width: 23px;
    height: 43px;
    cursor: pointer;
}

#works .mvArrowPrev {
  left: -35px;
  background: url(/common/img/slider_arrow01.png) no-repeat;
}
#works .mvArrowNext {
  right: -35px;
  background: url(/common/img/slider_arrow02.png) no-repeat;
}

/* ▼ 特集 */
#special {
    position: relative;
	max-height: 401px;
	padding: 50px 0;
}

#special h2 {
	margin: 0 0 30px 30px;
    font-size: 25px;
    font-weight: bold;
    color: #666;
    border-left: 6px solid #e50012;
    padding: 0 0 0 15px;
    line-height: 1.2;
}

#special .inner {
    padding: 30px 0 0;
    background: #fff;
}

#special h2 {
	margin-bottom: 40px;
}
#special .special {
    cursor: pointer;
}
#special .special p.txt {
    background: #E50012;
    padding: 5px 10px;
    height: 48px;
    width: 258px;
    margin: 0 auto;
}
#special .special p a {
    color: #fff;
}

#special .slick-slide {
    text-align: center;
}

#special .slick-slide img {
    margin: 0 auto;
}
#special .mvArrow {
    position: absolute;
    top: 80px;
    width: 23px;
    height: 43px;
    cursor: pointer;
}

#special .mvArrowPrev {
  left: -35px;
  background: url(/common/img/slider_arrow01.png) no-repeat;
}
#special .mvArrowNext {
  right: -35px;
  background: url(/common/img/slider_arrow02.png) no-repeat;
}



/* ▼ セミナー・イベント情報、採用情報  */
#other {
	min-height: 600px;
	background: url(../img/top/other_bg.gif) repeat left top;
	padding: 56px 0 50px;
	}
#other .box {
	width: 410px;
	min-height: 480px;
    height: 530px;
	background: #fff;
	padding: 20px 30px 50px;
	position: relative;
	}
	#other .box > div {
		overflow: auto;
		max-height: 475px;
]		min-height: 475px;
		overflow-x: hidden;
		padding-right: 20px
	}
	#other .box > div::-webkit-scrollbar {
		width: 12px;
		}
	#other .box > div::-webkit-scrollbar-track {
		border-radius: 10px;
		background: #f2f2f2;
	}
	#other .box > div::-webkit-scrollbar-thumb {
		border-radius: 10px;
		background:#ccc;
	}
	#other .box h2 {
		border-bottom: 1px dotted #E60012;
		padding-bottom: 20px;
		margin-bottom: 5px;
		text-align: center;
		}
		#other .box dl.other {
			border-bottom: 1px dotted #E60012;
			padding-bottom: 10px;
			margin-bottom: 10px;
			overflow: hidden;
			vertical-align: middle;
			}
			#other .box dl.other dt {
				text-align: center;
				float: left;
				}
			#other .box.right dl.other dt {
				width: 145px;
				}
				#other .box.right dl.other dt img {
					vertical-align: middle;
				}
			#other .box dl.other dd {
				margin-left: 100px;
				}
			#other .box.right dl.other dd {
				margin-left: 145px;
				}
	#other .box ul.btn {
		position: absolute;
		bottom: 10px;
		right: 30px;
		}
		#other .box ul.btn li {
			float: left;
			margin-left: 30px;
			}
#other .inner .none_articles {
    border-top: none;
}
/* top seminar list title */
#other .box dl.other dd span {
    overflow: hidden;
    display: block;
	margin-bottom: 5px;

}
/* seminar */
#other .left dt.icon_seminar {
	margin-bottom:15px;
    background: url(../img/top/icon_seminar.jpg) no-repeat 8px bottom;
	padding-bottom: 25px;
}
/* event */
#other .left dt.icon_event {
    background: url(../img/top/icon_event.jpg) no-repeat 8px bottom;
	padding-bottom: 25px;
}

#other .left dd p.request {
    width: 250px;
    background: url(../img/arrow_rd.png) no-repeat scroll 50px center;
    border: 1px solid #CCC;
    font-size: 13px;
    line-height: 25px;
    text-align: center;
}
#other .left dd p.request2 {
    width: 250px;
    border: 1px solid #CCC;
    font-size: 13px;
    line-height: 25px;
    text-align: center;
}

#other .left dd p.request a,
#other .left dd p.request2 a {
    display: block;
    width: 100%;
    height: 100%;
}

#other .left dd p.request:hover,
#other .left dd p.request2:hover {
    border: 1px solid #e50012;
}

#other .left dd p.request a:hover,
#other .left dd p.request2 a:hover {
    text-decoration: none;
}


/* ▼ お知らせ一覧  */
#news {
	padding: 20px 0 0;
	}
#news h2 {
	margin-bottom: 15px;
    font-size: 25px;
    font-weight: bold;
    color: #666;
    border-left: 6px solid #e50012;
    padding: 0 0 0 15px;
    line-height: 1.2;
	}
#news .tabbox {
	background: #fff;
	padding: 30px;
    overflow: hidden;
	}
	ul li#tab {
		zoom: 1;
		}
	ul#tab:after { content:"."; display: block; height:0px; clear:both; line-height:0; visibility:hidden; }
		ul#tab li {
			float: left;
			width: 314px;
			margin-right: 9px;
			text-indent: -9999px;
			}
		ul#tab li:last-child {
			margin-right: 0;
			}
		ul#tab li a {
			display: block;
			width: 314px;
			height: 41px;
			background: url(../img/top/news_tab01.png) no-repeat left top;
			outline: none;
			}
		ul#tab li.active a,
		ul#tab li a:hover {
			background: url(../img/top/news_tab01_over.png) no-repeat left top;
			}
		ul#tab li:nth-child(2) a {background: url(../img/top/news_tab02.png) no-repeat left top;}
		ul#tab li:nth-child(2).active a,
		ul#tab li:nth-child(2) a:hover {
			background: url(../img/top/news_tab02_over.png) no-repeat left top;
			}
		ul#tab li:nth-child(3) a {background: url(../img/top/news_tab03.png) no-repeat left top;}
		ul#tab li:nth-child(3).active a,
		ul#tab li:nth-child(3) a:hover {
			background: url(../img/top/news_tab03_over.png) no-repeat left top;
			}
#top_news,
#top_update {
    width: 425px;
    float: left;
}
#top_news {
    margin-right: 45px;
}
#news #tab1 #top_update dl.news dd {
    padding-left: 0;
}
	#news dl.news {
		margin-bottom: 15px;
		overflow: hidden;
		}
		#news dl.news dt,
		#news dl.news dd {
			border-bottom: 1px dotted #E60012;
			padding-bottom: 7px;
			margin-bottom: 7px;
            min-height: 45px;
			}
		#news dl.news dt {
			float: left;
			width: 105px;
			}
		#news dl.news dd {
			margin-left: 105px;
			}
			#news dl.news dt.i01 {background: url(../img/icon_news01.gif) no-repeat 10px 25px;}
			#news dl.news dt.i02 {background: url(../img/icon_news02.gif) no-repeat 10px 25px;}
			#news dl.news dt.i03 {background: url(../img/icon_news03.gif) no-repeat 10px 25px;}
			#news dl.news dt.cat3 {background: url(../img/icon_news05.gif) no-repeat 10px 25px;}
			#news dl.news dt.cat2 {background: url(../img/icon_news04.gif) no-repeat 10px 25px;}
			#news dl.news dt.cat5 {background: url(../img/icon_news06.gif) no-repeat 10px 25px;}		
#news .list {
    display: inline-block;
    float: right;
    padding-right: 0;
}

#news .blog {
    float: left;
}

#news .inner .none_articles {
    margin-bottom: 201px;
}

@charset "utf-8";

/* Slider */
.slick-slider
{
    position: relative;
    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
.mainVisualMenu .slick-slider {
	line-height: 0;
}
.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
.slider01sub .slick-slide {
	padding-bottom: 20px;
	border: 1px solid #ccc;
	font-size: 80%;
	margin-right: 4px;
	padding-top: 1px;
}

.slick-initialized .slick-slide span {
	display: block;
	position: relative;
	top: 10px;
}

/* ▼ 協賛 */
#sponsor {
    height: 400px;
    background: url(../img/top/078bg.png) 50% 50% no-repeat;
    text-align: center;
}

#sponsor .sponsor-inner {
    width: 960px;
    margin: 0 auto;
    padding-top: 110px;
}

#sponsor p {
    color: #444;
    font-size: 17px;
    margin-top: 10px;
}
