/*  #news
================================================ */
#news .post a { padding: 15px 15px 10px; background: #494949; display: block; text-decoration: none; }

#news .post .cats { float: left; font-size: 1.4rem; font-weight: 600; line-height: 1; color: #a2005b; }

#news .post .info { padding-left: 50px; color: #fff; }

#news .post .info .date { font-size: 1.2rem; line-height: 1; }

#news .post .info .tit { padding-top: 7px; font-size: 1.2rem; line-height: 1.6; }

@media screen and (min-width: 600px) { #news { position: absolute; bottom: 30px; right: 0; }
  #news .post { width: 360px; }
  #news .post a { padding: 25px 30px; background: rgba(30, 33, 37, 0.8); -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  #news .post a:hover { background: #1e2125; }
  #news .post a:hover .info { opacity: 0.7; }
  #news .post .cats { padding-right: 20px; border-right: 1px solid #404245; font-size: 1.6rem; }
  #news .post .info { padding-left: 0; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  #news .post .info .date { float: left; padding-left: 20px; font-size: 1.4rem; line-height: 1.14; }
  #news .post .info .tit { clear: both; padding-top: 10px; font-size: 1.4rem; } }

/*  #about
================================================ */
#about { background: url(../img/home/bg_about01_sp.png) no-repeat; background-size: cover; background-position: center; color: #fff; }

#about .inner { padding-top: 30px; padding-bottom: 47px; }

#about .txtWrap { margin-top: 12px; }

#about .lead { font-size: 2.1rem; line-height: 1.6; font-weight: 700; }

#about .txt { margin-top: 10px; font-size: 1.4rem; letter-spacing: .06em; }

#about .btn { margin: 5px 37px 0; }

@media screen and (min-width: 600px) { #about { background-image: url(../img/home/bg_about01_pc.png); }
  #about .inner { padding-top: 130px; padding-bottom: 170px; }
  #about .txtWrap { width: 500px; margin: 35px auto 0; }
  #about .lead { font-size: 3.2rem; }
  #about .txt { margin-top: 20px; font-size: 1.6rem; }
  #about .btn { width: 400px; margin: 40px auto 0; } }

/*  #service
================================================ */
#service .inner { padding-top: 25px; padding-bottom: 20px; }

#service .subject .tit { position: relative; z-index: 1; padding-left: 20px; }

#service .subject .box { position: relative; overflow: hidden; margin-top: -45px; padding: 55px 20px 35px; border: 1px solid #ddd; }

#service .subject .box:before { content: ''; position: absolute; top: -5px; right: -33px; width: 243px; height: 261px; background: url(../img/common/bg_logo01.png) no-repeat; background-size: contain; }

#service .subject .txt .emphasis { color: #a2005b; font-weight: 700; }

#service .subject .imgWrap .imgGroup { margin-top: 23px; text-align: center; }

#service .subject .imgWrap .img { width: 100px; margin: auto; }

#service .subject .imgWrap .en { padding-top: 10px; font-size: 2rem; font-weight: 600; letter-spacing: .02em; line-height: 1.6; }

#service .subject .imgWrap .ja { padding-top: 5px; font-size: 1.3rem; line-height: 1.6; }

#service .secService { margin-top: 30px; }

#service .secService + .secService { margin-top: 0; }

#service .secService .list { margin-top: 15px; }

#service .secService .list .item { position: relative; padding-left: 20px; line-height: 1.5; }

#service .secService .list .item:before { content: ''; position: absolute; left: 0; top: 8px; width: 15px; height: 2px; background: #a2005b; }

#service .secService .list .item + .item { margin-top: 3px; }

#service .secService.moKnowledge .sectionIn { padding-bottom: 10px; }

#service .btn { margin: 15px auto 0; width: 260px; }

@media screen and (min-width: 600px) { #service .inner { padding-top: 95px; padding-bottom: 0px; }
  #service .subject .tit { position: relative; padding-left: 0; }
  #service .subject .box { margin: -65px -230px 0; padding: 30px 230px 70px; }
  #service .subject .box:before { top: auto; right: auto; left: -22px; bottom: -194px; width: 512px; height: 512px; }
  #service .subject .txt { float: left;  padding-top: 70px; }
  #service .subject .imgWrap { float: right; width: 605px; }
  #service .subject .imgWrap .imgGroup { float: left; box-sizing: border-box; width: 260px; }
  #service .subject .imgWrap .imgGroup + .imgGroup { float: right; margin-left: 60px; width: 283px; }
  #service .subject .imgWrap .img { width: 225px; height: 175px; }
  #service .subject .imgWrap .en { padding-top: 25px; font-size: 2.6rem; letter-spacing: 0; }
  #service .subject .imgWrap .ja { padding-top: 0; font-size: 1.5rem; }
  #service .secService { margin-top: 80px; }
  #service .secService .txtWrap { padding-top: 10px; padding-left: 100px; }
  #service .secService .txtWrap02 { padding-right: 100px; padding-left: 0; }
  #service .secService .list { margin-top: 25px; }
  #service .secService .list .item { box-sizing: border-box; padding-left: 25px; }
  #service .secService .list .item:before { top: 11px; }
  #service .secService.moKnowledge .sectionIn { padding-bottom: 80px; }
  #service .secService .btn { margin: 50px auto 0 0; width: 400px; }
  #service .contentsIn { padding-bottom: 25px; } }

/*  #partners
================================================ */
#partners { background: #fff; }

#partners .inner { padding-top: 35px; padding-bottom: 55px; }

#partners .txtWrap { margin-top: 5px; }

#partners .note { font-size: 1.2rem; color: #9a9a9a; }

#partners .logoWrap { margin: 20px -10px 0; text-align: center; }

#partners .logoWrap + .logoWrap { margin-top: 15px; }

#partners .logoWrap .logo { display: inline-block; vertical-align: middle; box-sizing: border-box; width: 32.5%; padding: 0 10px; }

#partners .logoWrap .logo img { vertical-align: middle; backface-visibility: hidden; }

@media screen and (max-width: 599px) {
	#partners .logoWrap{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}
@media screen and (min-width: 600px) { #partners .inner { overflow: hidden; padding-top: 80px; padding-bottom: 120px; }
  #partners .titWrap { overflow: hidden; }
  #partners .tit { float: left; padding-right: 50px; }
  #partners .tit .en { line-height: 1.4; }
  #partners .txtWrap { position: relative; float: left; box-sizing: border-box; width: 850px; margin-top: 0; padding: 15px 0 15px 50px; }
  #partners .txtWrap:before { content: ''; position: absolute; top: 50%; left: 0; width: 1px; height: 90px; background: #ddd; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
  #partners .note { font-size: 1.4rem; }
  #partners .partner { margin: 50px 0 0; text-align: center; }
  #partners .logoWrap { display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 0; }
  #partners .logoWrap + .logoWrap { margin-top: 6px; }
  #partners .logoWrap .logo { width: 218px; padding: 0 25px; }
	#partners .logoWrap .logo.gacco{ width: 163px; }
	#partners .logoWrap .logo.EXC{width: 300px;}
 }

@media screen and (min-width: 600px) { #contents .fadeinContent { -webkit-transform: translateY(40px); -ms-transform: translateY(40px); transform: translateY(40px); -webkit-transition: all 1s ease; transition: all 1s ease; opacity: 0; }
  #contents .fadeinContent.is_active { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); opacity: 1; } }
  
  
  /*  #certifications
================================================ */
#certifications { background: #f5f5f5; }

#certifications .inner { padding-top: 35px; padding-bottom: 55px; }

#certifications .txt { padding-top: 5px; }

#certifications .txtWrap { margin-top: 5px; }


@media screen and (max-width: 599px) {
  #certifications .isologo{padding-top:30px;}
 }
 
@media screen and (min-width: 600px) { #certifications .inner { overflow: hidden; padding-top: 10px; padding-bottom: 10px; text-align: middle;  }
  #certifications .titWrap { overflow: hidden; }
  #certifications .tit { float: left; padding-right: 50px; }
  #certifications .tit .en { line-height: 1.4; }
  #certifications .txtWrap { position: relative; float: middle; box-sizing: border-box; margin-top: 0; padding: auto; }
	#certifications .isologo{padding-top:30px;}
}

/*  #ics  
================================================ */
#ics { background: #f5f5f5; }

#ics .inner { padding-top: 35px; padding-bottom: 55px; }

#ics .txt { 
	padding-top: 5px;
    line-height: 150%;
    margin-bottom: 15px; 
}

#ics .txt .bold{
	font-weight:bold;
}

#ics .txtWrap {     
	border: solid 1px #000;
    padding: 15px;
    text-align: center;
	margin-top:15px;
}

#ics .flexwrap{
	display:flex;
	flex-wrap:wrap;
}

#ics .flex-item{
	width:50%;
	margin-top:20px;
}

#ics .flex-item img{
	width:25%;
}

@media screen and (max-width: 599px) {
#ics .isologo{padding-top:30px;}
 }
 
@media screen and (min-width: 600px) { #certifications .inner { overflow: hidden; padding-top: 10px; padding-bottom: 10px; text-align: middle;  }
#ics .titWrap { overflow: hidden; }
#ics .tit { float: left; padding-right: 50px; }
#ics .tit .en { line-height: 1.4; }
#ics .txtWrap { position: relative; float: middle; box-sizing: border-box; margin-top: 15px; padding: auto; }
#ics .isologo{padding-top:30px;}
}

/*  #isd  
================================================ */
#isd { background: #f5f5f5; }

#isd .inner { padding-top: 35px; padding-bottom: 55px; }

#isd .txt { padding-top: 5px; }

#isd .txtWrap {     
	border: solid 1px #000;
    padding: 15px;
    text-align: center;
}


@media screen and (max-width: 599px) {
#isd .isologo{padding-top:30px;}
 }
 
@media screen and (min-width: 600px) { #certifications .inner { overflow: hidden; padding-top: 10px; padding-bottom: 10px; text-align: middle;  }
#isd .titWrap { overflow: hidden; }
#isd .tit { float: left; padding-right: 50px; }
#isd .tit .en { line-height: 1.4; }
#isd .txtWrap { position: relative; float: middle; box-sizing: border-box; margin-top: 0; padding: auto; }
#isd .isologo{padding-top:30px;}
}




@media screen and (min-width: 600px) { #contents .fadeinContent { -webkit-transform: translateY(40px); -ms-transform: translateY(40px); transform: translateY(40px); -webkit-transition: all 1s ease; transition: all 1s ease; opacity: 0; }
  #contents .fadeinContent.is_active { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); opacity: 1; } 
}