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

@media screen and (min-width: 600px) { #mainImg { background-image: url(../img/knowledge/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 .secTxt span { font-weight: 700; margin-bottom: 5px; }

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

#service .section:nth-child(2) .txtWrap { padding-bottom: 30px; }

#service .questionnaire .head { color: #a2005b; font-weight: 700; margin-bottom: 5px; }

#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;}

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

#service .price .tit {
	position: absolute; font-size: 2.8rem; line-height: 1; margin: auto;
	left: 0;
	right: 0;
	top: -17px;
}

#service .price .tit .en { font-weight: 600; }

#service .price .wrap { position: relative; margin-bottom: 20px; padding: 30px 20px 15px; border: 1px solid #ddd; background: #fff; }

#service .price .wrap .num { text-align: center; line-height: 1; margin-bottom: 10px; }

#service .price .wrap .num span { color: #a2005b; font-size: 2.4rem; font-weight: 700; }

#service .price .wrap .note { color: #9a9a9a; font-size: 1.2rem; margin-bottom: 5px; }

#service .price .head { font-weight: 700; margin-bottom: 5px; }

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

#service .logo img { width: 130px; }

#service .tit { text-align: center; }

#service .report { margin-bottom: -40px; }

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

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

@media screen and (min-width: 600px) { #service .inner { padding-top: 100px; padding-bottom: 60px; }
  #service .section:nth-child(1) .txtWrap { padding-top: 0; padding-left: 120px; }
  #service .section:nth-child(1) .secIn { padding-bottom: 130px; }
  #service .section:nth-child(2) .txtWrap { padding-top: 0; padding-right: 120px; }
  #service .section:nth-child(2) .secIn { padding-bottom: 50px; }
  #service .section:nth-child(3) .txtWrap { padding-top: 0px; padding-left: 110px; }
  #service .section:nth-child(3) .secIn { margin-top: 80px; padding-bottom: 80px; }
  #service .section:nth-child(3) .content04img{width:50%; margin-top:10px; }
  #service .secIn { padding-top: 80px; }
  #service .secTit { font-size: 3.2rem; }
  #service .secTxt { padding-top: 25px; }
  #service .questionnaire { margin: 0 auto 40px; }
  #service .questionnaire .txt { padding-right: 120px; }
  #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-right: 100px; 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; }
  #service .price { margin-top: 20px; margin: 30px auto 60px; }

  #service .price .tit {
	font-size: 4rem;
  	top: -25px;
  }

  #service .price .wrap {
	margin: 0 auto 40px;
	padding: 50px 80px 40px;
	width: 1000px;
   }

  #service .price .wrap .num { margin-bottom: 20px; }

  #service .price .wrap .num span { font-size: 3.6rem; }

  #service .price .wrap .note { font-size: 1.4rem; margin-bottom: 0;; }

  #service .logo img { width: 180px; }
  #service .report { margin: 30px 0 -140px; }
  #service .report .tit .en { font-size: 4rem; }
  #service .report .tit .ja { padding-top: 10px; font-size: 1.6rem; }

}

@media screen and (max-width:599px){
  #service .section:nth-child(4) .txtWrap{
    padding-bottom:20px
  }
}

/*  #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: 50px; 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 { background: #f3f3f2; margin: 20px -20px 0; }

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

  .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; }

.report.case .swiper{
	background-color:transparent;
}

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

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

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

#single .cram { background: #e59f31; }

#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; } }
