/*  #mainImg
================================================ */
#mainImg { background-image: url(../img/lms/mainimg_sp.png); }

@media screen and (min-width: 600px) { #mainImg { background-image: url(../img/lms/mainimg_pc.png); } }


/*  #service
================================================ */
#service .inner { padding-bottom: 45px; }

#service .secIn { padding-top: 50px; padding-bottom: 40px; }

#service .secTit { font-size: 2.3rem; }

#service .secTxt { padding-top: 10px; }

#service .seclist { margin-top: 20px; }

#service .secTxt_01 { padding-top: 10px; 
color: #9a9a9a;
font-size: 1.4rem;
}

#service .seclist_01 { margin-top: 20px; 
color: #9a9a9a;
font-size: 1.4rem;
}

#service .achievement { margin: 25px 0 0; }

#service .achievement .tit { position: relative; text-align: center; z-index: 1; }

#service .achievement .tit .en { font-size: 2.8rem; line-height: 1; font-weight: 600; }

#service .achievement .tit .ja { font-size: 1.4rem; font-weight: 700; line-height: 1.6; }

#service .achievement .box { margin-top: -30px; padding: 40px 10px 25px; border: 1px solid #ddd; background: #fff; }

#service .achievement .list { overflow: hidden; }

#service .achievement .item { box-sizing: border-box; width: 50%; text-align: center; }

#service .achievement .item:nth-child(2n+1) { padding-right: 10px; }

#service .achievement .item:nth-child(2n) { padding-left: 10px; border-left: 1px solid #ddd; }

#service .achievement .item .img { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; height: 60px; margin: auto; }

#service .achievement .itemTxt { padding-top: 5px; font-size: 1.4rem; font-weight: 700; letter-spacing: .06em; line-height: 1.4; }

#service .achievement .itemTxt span { display: inline-block; }

#service .achievement .itemTxt .num { font-size: 3.5rem; font-weight: 600; color: #a2005b; }

#service .achievement .itemTxt .unit { font-size: 1.5rem; line-height: 2; }

#service .achievement .note { padding-top: 25px; color: #9a9a9a; font-size: 1.2rem; line-height: 1.6; }

#service .achievement .item01 .img { width: 77px; }

#service .achievement .item02 .img { width: 85px; }

#service .achievement .item03 .img { width: 54px; }

#service .achievement .item04 .img { width: 35px; }

#service .case { margin: 20px 0; }

#service .case .tit { position: relative; text-align: center; z-index: 1; }

#service .case .tit .en { font-size: 2.8rem; line-height: 1; font-weight: 600; }

#service .case .tit .ja { font-size: 1.4rem; font-weight: 700; line-height: 1.6; }

#service .case .box { margin: -30px 0 -20px; padding: 40px 20px 25px; border: 1px solid #ddd; background: #fff; }

#service .case .box .head {text-align: center; font-size: 1.8rem; font-weight: 700; margin-bottom: 15px; line-height: 1.6; }

#service .case .box .wrap { margin-bottom: 10px;}

#service .case .box .txt {  position: relative; padding-left: 20px; font-weight: 700; margin-bottom: 5px; font-size: 1.4rem;}
#service .case .box .txt span { color:  #a2005b; }
#service .case .box .txt:before {
	content: "";
    position: absolute;
    top: 13px;
	left: 0;
    width: 15px;
    height: 2px;
    background: #a2005b;
}

#service .case .note { color: #9a9a9a; font-size: 1.2rem; line-height: 1.6; margin-bottom: 5px; }
  #service .case .itemTxt { padding-top: 0px; font-size: 1.8rem; margin-left: 40px; }


#service .imgList { margin-top: 20px; }

#service .imgList .item:first-child { margin-bottom: 30px; position: relative;}

#service .imgList .item:first-child::after {
	content: "";
    position: absolute;
	display: block;
	left: 0;
	right: 0;
	bottom: -40px;
	margin: auto;
   box-sizing: border-box;
   width: 10px;
   height: 10px;
   border: 20px solid transparent;
   border-top: 10px solid #a2005b;
}
#service .imgList02 { margin-top: 20px; }
#service .imgList02 .item:first-child { margin-bottom: 30px; }
#service .logo { margin-top: 20px; padding: 0 7px; }

#service .map { margin-left: 15px; }

#service .map a { position: relative; padding: 5px 30px; background: #fff; border: 1px solid #d5d5d5; text-decoration: none;  color: #1b1b1b;}

#service .map a:before { content: ''; position: absolute; top: 50%; right: 10px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); width: 10px; height: 10px; background: url(../img/common/ico_window01.png) no-repeat; background-size: contain; }

#service .case { margin-top: 10px; }

#service .case .tit { position: relative; text-align: center; z-index: 1; }

#service .case .tit .en { font-size: 2.8rem; line-height: 1; font-weight: 600; }

#service .case .tit .ja { font-size: 1.4rem; font-weight: 700; line-height: 1.6; }

#service .case .box { margin: -30px 0 -20px; padding: 40px 20px 25px; border: 1px solid #ddd; background: #fff; }

#service .case .list { overflow: hidden; }

#service .case .item { position: relative; box-sizing: border-box; border-bottom: 1px solid #ddd; padding-bottom: 10px; }

#service .case .item:before { content: ""; position: absolute; top: 15px; width: 15px; height: 2px; background: #a2005b; }

#service .case .item + .item { margin-top: 10px; }

#service .case .item .img { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; height: 60px; margin: auto; }

#service .case .itemTxt { padding-top: 5px; margin-left: 20px; font-size: 1.4rem; font-weight: 700; letter-spacing: .06em; line-height: 1.4; }

#service .case .itemTxt span { display: inline-block; }

#service .case .img { margin-top: 10px;}





@media screen and (min-width: 600px) { #service .inner { padding-top: 70px; padding-bottom: 60px; }
  #service .inner:nth-child(1)  .txtWrap { padding:40px 0px 0px 120px ; }
  #service .inner:nth-child(2)  .txtWrap{ padding:40px 120px 0px 0;}
  #service .section:nth-child(2) .secTit { font-size: 3.0rem; }
  #service .section:nth-child(2) .secIn { padding-bottom: 80px; }
  #service .section:nth-child(2) .img { padding-top: 90px; }
  #service .inner:nth-child(3)  .txtWrap { padding:40px 0px 0px 120px ; }
  #service .secTit { font-size: 3.2rem; }
  #service .secTxt { padding-top: 25px;} 
  #service .seclist { margin-top: 25px; }
  #service .secTxt_01 { padding-top: 25px; color: #9a9a9a; font-size: 1.4rem;} 
  #service .seclist_01 { margin-top: 25px; color: #9a9a9a; font-size: 1.4rem;}
  #service .note { margin: 10px 0 0 30px;}
  #service .achievement { clear: both; margin-top: 30px; padding-top: 50px; }
  #service .achievement .tit .en { font-size: 4rem; }
  #service .achievement .tit .ja { padding-top: 10px; font-size: 1.6rem; }
  #service .achievement .box { position: relative; box-sizing: border-box; width: 1000px; margin: -50px auto 40px; padding: 75px 150px 85px; }
  #service .achievement .item:nth-child(2n+1) { padding-right: 100px; }
  #service .achievement .item:nth-child(2n) { padding-left: 100px; }
  #service .achievement .item .img { height: 105px; }
  #service .achievement .itemTxt { padding-top: 0px; font-size: 2rem; }
  #service .achievement .itemTxt .num { font-size: 7.2rem; }
  #service .achievement .itemTxt .unit { font-size: 3rem; }
  #service .achievement .note { position: absolute; right: 40px; bottom: 40px; padding-top: 0; font-size: 1.4rem; }
  #service .achievement .item01 .img { width: 140px; }
  #service .achievement .item02 .img { width: 160px; }
  #service .achievement .item03 .img { width: 104px; }
  #service .achievement .item04 .img { width: 60px; }
  
  #service .map { margin-left: 20px; }
  #service .map a { padding: 5px 25px; }
  
  #service .imgList {
	  width: 1100px;
	  margin: 20px auto 0;
	  display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 }
 
 #service .imgList .item { width: 50%;}
 #service .imgList .item { margin: 0 50px 0 0; }

  #service .imgList .item:first-child::after {
  	left: auto;
  	right: -75px;
	top: 0;
  	bottom: 0;
     width: 20px;
     height: 20px;
     border: 40px solid transparent;
     border-left: 20px solid #a2005b;
  }
  #service .imgList02 {
	 <!--width: 1100px;-->
	 margin: 20px auto 0;
	 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 }
 #service .imgList02 .item { width: 50%;}
  #service .imgList02 .item { margin: 0 50px 0 0; }
  #service .logo { width: 465px; margin-top: 25px; padding: 0; }
  #service .logo.is-add6 { width: 420px; }
  #service .logo.is-add6_en { width: 370px; }  
 #service .case { clear: both; margin-top: 30px; }
  #service .case .tit .en { font-size: 4rem; }
  #service .case .tit .ja { padding-top: 10px; font-size: 1.6rem; }
  #service .case .box { position: relative; box-sizing: border-box; width: 1000px; margin: -50px auto 0; padding: 95px 80px 60px; }
  #service .case .item { padding-bottom: 16px; }
  #service .case .item + .item { margin-top: 18px; }
  #service .case .item:before { top: 11px; left: 11px; width: 15px; height: 2px; }
  #service .case .itemTxt { padding-top: 0px; font-size: 1.8rem; margin-left: 40px; }
  #service .case .img { width: 80%; margin: 0 auto; }


  
  

  
  }

/*  #archive
================================================ */
#archive .inner { padding-bottom: 50px; }

#archive .article { margin-top: 15px; }

#archive .general { background: #00a298; }

#archive .publisher { background: #0069b8; }

#archive .cram { background: #e59f31; }

#archive .school { background: #bf0f0f; }

#archive .pager { margin-top: 25px; }

@media screen and (min-width: 600px) { #archive .inner { padding-top: 20px; padding-bottom: 130px; }
  #archive .article { margin-top: 45px; }
  #archive .pager { margin-top: 60px; } }

/*  #swiper
================================================ */
[class^="swiper-button-"], .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet:before, .swiper-slide { -webkit-transition: all .3s ease; transition: all .3s ease; }

.swiper-container.swiper-container-coverflow { padding-top: 20px !important; padding-bottom: 20px; }

*, *:before, *:after { box-sizing: border-box; margin: 0; padding: 0; }

.swiper { margin: 20px -20px -45px; }

@media screen and (min-width: 600px) { .swiper { margin: 0 -200%; padding: 0 200%;  } }

.swiper-container { width: 100%; -webkit-transition: opacity .6s ease; transition: opacity .6s ease; overflow: visible; position: static; }

.swiper-container.swiper-container-coverflow { padding-top: 2%; }

.swiper-container.loading { opacity: 0; visibility: hidden; }

.swiper-container:hover .swiper-button-prev, .swiper-container:hover .swiper-button-next { -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); opacity: 1; visibility: visible; }

.swiper-slide { background-position: center; background-size: cover; }

.swiper-slide .entity-img { display: none; }

[class^="swiper-button-"] { width: 20px; height: 50%; top: 40%; background-color: #333; background-size: 40%; }

@media screen and (min-width: 600px) { [class^="swiper-button-"] { width: 30px; height: 70px; top: 50%; margin-top: -35px; } }

.swiper-button-prev { left: 0; }

.swiper-button-next { right: 0; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet { margin: 0 9px; position: relative; width: 12px; height: 12px; background-color: #fff; opacity: .4; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet:before { content: ''; position: absolute; top: 50%; left: 50%; width: 18px; height: 18px; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); border: 0px solid #fff; border-radius: 50%; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet:hover, .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active { opacity: 1; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active:before { border-width: 1px; }

.swiper-container-3d .swiper-slide-shadow-right { background: none; }

.swiper-container-3d .swiper-slide-shadow-left { background: none; }

.swiper-slide { -webkit-transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(50deg) scale(0.6, 0.6) !important; transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(50deg) scale(0.6, 0.6) !important; opacity: 0.4; }

.swiper-slide.swiper-slide-active { -webkit-transform: translate3d(0px, 0px, 0px) rotateX(0deg) rotateY(0deg) !important; transform: translate3d(0px, 0px, 0px) rotateX(0deg) rotateY(0deg) !important; opacity: 1; }

.swiper-slide-prev { -webkit-transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(50deg) scale(0.6, 0.6) !important; transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(50deg) scale(0.6, 0.6) !important; opacity: 0.6; }

.swiper-slide-next { -webkit-transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(-50deg) scale(0.6, 0.6) !important; transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(-50deg) scale(0.6, 0.6) !important; opacity: 0.6; }

.swiper-slide-next + .swiper-slide { -webkit-transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(-65deg) scale(0.6, 0.6) !important; transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(-65deg) scale(0.6, 0.6) !important; opacity: 0.4; }

.swiper-slide-next + .swiper-slide + .swiper-slide { -webkit-transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(-80deg) scale(0.6, 0.6) !important; transform: translate3d(0px, 0px, -400px) rotateX(0deg) rotateY(-80deg) scale(0.6, 0.6) !important; opacity: 0.4; }

.swiper-slide[data-swiper-slide-index="0"] { color: #c00; }

/*  #single
================================================ */
#single .inner { padding-top: 50px; padding-bottom: 55px; }

#single .general { background: #307f2e; }

#single .publisher { background: #0098b8; }

#single .cram { background: #d85b00; }

#single .school { background: #bf0f0f; }

#single .titWrap { padding: 10px 20px; background: #f5f5f5; }

#single .cat { display: inline-block; padding: 4px 10px; background: #00a298; color: #fff; font-size: 1.1rem; line-height: 1.1; }

#single .tit { font-size: 2rem; font-weight: 700; line-height: 1.6; }

#single .eyecatch { margin-top: 20px; text-align: center; }

#single .eyecatch img { width: auto; height: auto; max-width: 100%; max-height: 100%; margin: auto; }

#single .txtWrap { padding-top: 5px; }

#single .txtWrap p { padding-top: 10px; }

#single .txtWrap p + p { margin-top: 20px; }

#single .txtWrap h2 { padding: 20px 0 7px; border-bottom: 1px solid #1b1b1b; font-size: 1.7rem; font-weight: 700; line-height: 1.6; }

#single .txtWrap h3 { position: relative; margin-top: 20px; padding-left: 15px; font-size: 1.5rem; font-weight: 700; line-height: 1.6; }

#single .txtWrap h3:before { content: ''; position: absolute; top: 50%; left: 0; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); width: 4px; height: 95%; background: #a2005b; }

#single .pager { margin: 20px -20px 0; padding: 30px 64px 0; border-top: 1px solid #1b1b1b; }

@media screen and (min-width: 600px) { #single .inner { padding-top: 100px; padding-bottom: 130px; }
  #single .post { margin: 0 80px; padding: 60px; border: 1px solid #1b1b1b; }
  #single .titWrap { padding: 17px 30px 22px; }
  #single .cat { display: inline-block; padding: 5px 9px; font-size: 1.3rem; }
  #single .tit { margin-top: 12px; font-size: 2.4rem; }
  #single .eyecatch { margin: 35px 48px 0; }
  #single .txtWrap { padding-top: 0; }
  #single .txtWrap p { padding-top: 20px; }
  #single .txtWrap p + p { margin-top: 10px; }
  #single .txtWrap h2 { padding: 40px 0 15px; font-size: 2rem; }
  #single .txtWrap h3 { margin-top: 30px; padding-left: 20px; font-size: 1.8rem; }
  #single .txtWrap h3:before { width: 6px; }
  #single .pager { margin: 50px auto 0; padding: 0; border-top: 0; }
  #single .pager .btn { width: 400px; margin: auto; } }

.lms .achievement { margin: 25px 0 0; }

.lms .achievement .tit { position: relative; text-align: center; z-index: 1; }

.lms .achievement .tit .en { font-size: 2.8rem; line-height: 1; font-weight: 600; }

.lms .achievement .tit .ja { font-size: 1.4rem; font-weight: 700; line-height: 1.6; }

.lms .achievement .box { margin-top: -30px; padding: 40px 10px 25px; border: 1px solid #ddd; background: #fff; }

.lms .achievement .list { overflow: hidden; }

.lms .achievement .item { float: left; box-sizing: border-box; width: 50%; text-align: center; }

.lms .achievement .item:nth-child(2n+1) { padding-right: 10px; }

.lms .achievement .item:nth-child(2n) { padding-left: 10px; border-left: 1px solid #ddd; }

.lms .achievement .item .img { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; height: 60px; margin: auto; }

.lms .achievement .itemTxt { padding-top: 5px; font-size: 1.4rem; font-weight: 700; letter-spacing: .06em; line-height: 1.4; }

.lms .achievement .itemTxt span { display: inline-block; }

.lms .achievement .itemTxt .num { font-size: 3.5rem; font-weight: 600; color: #a2005b; }

.lms .achievement .itemTxt .unit { font-size: 1.5rem; line-height: 2; }

.lms .achievement .note { padding-top: 25px; color: #9a9a9a; font-size: 1.2rem; line-height: 1.6; }

.lms .achievement .item01 .img { width: 77px; }

.lms .achievement .item02 .img { width: 85px; }

.lms .achievement .item03 .img { width: 54px; }

.lms .achievement .item04 .img { width: 35px; }
  
  
  
