@charset "UTF-8";
/* CSS Document */
/* main
------------------------------------------------------ */
.top-main-bg {
  background: url("images/main-bg.jpg") no-repeat;
  background-size: cover;
  padding: 120px 0;
  background-position: center;
}
.top-main {
  width: 90%;
  max-width: 980px;
  margin: 0 auto;
}
.top-main-content {
  width: 48%;
  margin-left: auto;
  color: #fff;
  position: relative;
}
.top-main-content p, .top-main-content span {
  color: #fff;
  font-family: 'hiragino7';
}
.top-main-recruitment {
  width: 40%;
  max-width: 100px;
  position: absolute;
  top: -50px;
  right: -10px;
}
.top-main-ttl02 span {
  color: #FAE252;
  font-size: 6rem;
}
.top-main-ttl03 {
  font-size: 3rem;
}
.top-main-ttl03 span {
  font-size: 4.4rem;
}
.top-main-link-wrap {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}
.top-main-link-wrap a {
  display: block;
  width: 49%;
  text-align: center;
}
.top-main-link-wrap a:first-child {
  background: #FAE252;
  color: #324A7C;
  padding: 10px 0;
  border-radius: 6px;
  font-family: 'hiragino7';
  font-size: 1.4rem;
}
.top-main-link-wrap a:first-child:before {
  content: '';
  background: url("images/top-main-contact-icon.png") no-repeat;
  background-size: contain;
  width: 16px;
  height: 16px;
  vertical-align: middle;
  display: inline-block;
  margin-right: 4px;
}
.top-main-link-wrap a:last-child {
  background: #50AF33;
  color: #fff;
  padding: 10px 0;
  border-radius: 6px;
  font-family: 'hiragino7';
  font-size: 1.4rem;
}
.top-main-link-wrap a:last-child:before {
  content: '';
  background: url("images/top-main-line-icon.png") no-repeat;
  background-size: contain;
  width: 20px;
  height: 20px;
  vertical-align: middle;
  display: inline-block;
  margin-right: 4px;
}
.top-main-ttl01 {
  margin-bottom: 30px;
  font-family: 'hiragino6' !important;
  font-size: 2rem;
}
.top-main-ttl02 {
  font-size: 2.4rem;
  margin-bottom: 20px;
}

/*SP Layout
===================================*/
@media all and (max-width: 768px) {
  .top-main-bg {
    background: none;
    padding: 0;
  }
  .main-sp{
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
}
/* passrate
------------------------------------------------------ */
.passrate-bg {
  background: url("images/top-bg01.jpg") no-repeat;
  background-size: cover;
  padding: 0 0 500px;
  position: relative;
  z-index: -1;
}
.passrate-bg video{
position:absolute; left:50%; top:40%;  min-width:100%; min-height:100%; transform:translate(-50%,-50%);
	}
.passrate-bg:after {
    content: '';
    background: rgba(255,255,255,.6);
    display: inline-block;
    width: 100%;
    height: 10000px;
    position: absolute;
    top: -60px;
}

.passrate {
  width: 90%;
  max-width: 600px;
  margin: 0 auto;
    padding-top: 60px;
	position: relative;
    z-index: 30;
}
.boat-icon01 {
  position: absolute;
  width: 30%;
  top: 36%;
  left: 5%;
	    z-index: 30;

}
.boat-icon02 {
  position: absolute;
  width: 23%;
  top: 36%;
  right: 5%;
	    z-index: 30;

}
/*SP Layout
===================================*/
@media all and (max-width: 768px) {
  .passrate-bg {
    padding-top: 20px;
  }
  .boat-icon01 {
    width: 60%;
    top: 44%;
    left: 5%;
  }
  .boat-icon02 {
    width: 30%;
    right: 25%;
	  top: 40%;
  }
	.passrate-bg video{
	object-fit: cover;
		}
}
/* support/check
------------------------------------------------------ */
.check-bg h3 {
  color: #FAE252;
}
.check-bg h3 span {
  color: #fff;
  font-size: 2rem;
  display: block;
  font-family: 'hiragino6';
}
.check-bg h3:before, .check-bg h3:after {
  content: none;
}

.support-item {
  width: 24%;
}
.moreover {
  width: 90%;
  max-width: 160px;
  margin: 0 auto 10px;
}
.check h3 {
  margin: 60px auto -80px;
  background: url("images/top-kinki.png") no-repeat;
  background-size: 48% auto;
  height: 200px;
  background-position: center;
}
.check h3:before {
  content: '';
  background: url("images/boat-icon03.png") no-repeat;
  background-size: contain;
  width: 120px;
  height: 80px;
  display: block;
  margin: 0 auto 10px;
}

.check-item {
  background: #F2F5FC;
  margin-top: 80px;
  margin-bottom: 30px;
  position: relative;
  padding-top: 70px;
}
.check-img {
  width: 40%;
  margin: 0 auto;
  position: absolute;
  top: -50px;
  right: 0;
  left: 0;
}
.check-ttl {
  text-align: center;
  color: #324A7C;
  font-size: 2rem;
  margin-bottom: 10px;
  font-family: 'hiragino6';
  margin-top: 10px;
}
.check-txt {
  width: 80%;
  margin: 20px auto;
  font-size: 1.2rem;
  line-height: normal;
  min-height: 90px;
}
.check-list {
  display: flex;
  width: 80%;
  margin: 10px auto 30px;
}
.check-list li {
  background: #fff;
  text-align: center;
  border-radius: 30px;
  color: #4A5F8B;
  padding: 2px 14px;
  margin-right: 6px;
  font-family: 'hiragino6';
  font-size: 1.1rem;
}
.check-link-wrap {
  display: flex;
  justify-content: space-between;
}
.check-link-item {
  display: block;
  width: 50%;
  text-align: center;
  padding: 26px 0;
  font-family: 'hiragino6';
  font-size: 1.6rem;
}
.check-link-item:nth-child(1) {
  background: #FAE252;
  color: #324A7C;
}
.check-link-item:nth-child(1):before {
  content: '';
  background: url("license/common/images/check-icon01.png") no-repeat;
  background-size: contain;
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
}
.check-link-item:nth-child(2) {
  background: #67B6AE;
  color: #fff;
}
.check-link-item:nth-child(2):before {
  content: '';
  background: url("license/common/images/check-icon02.png") no-repeat;
  background-size: contain;
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
}
.kousin-wrap-bg {
  background: #F2F5FC;
  padding: 10px 20px;
  position: relative;
  max-width: 600px;
  margin: 30px auto;
}
.kousin-ttl span {
  display: block;
  color: #324A7C;
  font-size: 2.6rem;
  font-family: 'hiragino6';
}
.kousin-icon {
  width: 25%;
  position: absolute;
  left: -90px;
  bottom: -30px;
}
.kousin-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}
.kousin-wrap .link-btn {
  width: 45%;
}
.kousin-wrap .link-btn:before {
  width: 270px;
}
.kousin-wrap .link-btn:after {
  right: 12%;
}
.kousin-ttl {
  text-align: center;
}
.check-support{
	background-image: linear-gradient(to bottom, transparent 23%, #324A7C 23%, #324A7C 77%, transparent 77%);
  padding: 40px 0;
  width: 100VW;
  margin: 20px calc(50% - 50vw) 0;
	margin-top: -400px;
}
.check-support:before{
content: '';
    background: url(/common/images/circle01-top.png) no-repeat;
    background-size: 140% auto;
    width: 100%;
    background-position: top center;
    display: block;
    height: 400px;
    margin-bottom: -280px;
}
.check-support:after{
content: '';
    background: url(/common/images/circle01-bottom.png) no-repeat;
    background-size: 140% auto;
    width: 100%;
    background-position: bottom center;
    display: block;
    height: 360px;
	margin-top: -300px;
}
/*PC Layout
===================================*/
@media print, screen and (min-width: 769px) {
  .check-wrap {
    max-width: 1180px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }
  .check-item {
    width: 24%;
  }
  .kousin-wrap .link-btn {
    margin-left: 20px;
    margin-right: 0;
  }
	.support-wrap {
  display: flex;
  justify-content: space-between;
  max-width: 900px;
  margin: 40px auto;
}
}
/*SP Layout
===================================*/
@media all and (max-width: 768px) {
  .check-bg {
    margin-top: -380px;
    padding-top: 80px;
	background-image: linear-gradient(to bottom, transparent 23%, #324A7C 23%, #324A7C 77%, transparent 77%);
	  margin-bottom: 0;
  }
	.check-support{
		margin-top: -100px;
	}
	.check-support:after{
		content: none;
	}
	.support:after {
    content: '';
    background: url(/common/images/circle01-bottom.png) no-repeat;
    background-size: 140% auto;
    width: 100%;
    background-position: bottom center;
    display: block;
    height: 150px;
    margin-top: -30px;
}
  .check-img {
    width: 40%;
  }
  .check-ttl {
    margin-top: 50px;
  }
  .check-txt {
    font-size: 1.4rem;
    min-height: auto;
  }
  .check h3 {
    color: #1E427A;
    margin-bottom: 60px;
  }
  .kousin-ttl {
    line-height: 3rem;
  }
	.support{
	background-image: linear-gradient(to bottom, transparent 10%, #324A7C 10%, #324A7C 85%, transparent 85%);
		width: 100vw;
	}
	.support .slick-slide{
		margin: 10px!important;
	}
	.check-support:before{
		margin-bottom: -360px;
	}
}
/* skill
------------------------------------------------------ */
.skill h3 {
  color: #324A7C;
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 10px;
}
.skill h3:before, .skill h3:after {
  content: none;
}
.skill h3 span {
  font-size: 3rem;
  display: block;
  color: #324A7C;
  margin-top: 10px;
  font-family: 'hiragino7';
}
.skill-bg {
  background: url("images/top-bg01.jpg") no-repeat;
  padding: 500px 0 200px;
  background-size: cover;
  background-position: center;
  margin-top: -380px;
  position: relative;
  z-index: -1;
}
.skill-wrap {
  display: flex;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}
.slick-dots li button:before {
  height: 4px !important;
  background: #fff;
}
.slick-dots li.slick-active button:before {
  opacity: 1 !important;
  background: #F3F6FD !important;
}
/*SP Layout
===================================*/
@media all and (max-width: 768px) {
  .kousin-wrap {
    flex-wrap: wrap;
  }
  .kousin-wrap .link-btn {
    margin-bottom: 0;
    width: 77%;
  }
  .kousin-icon {
    width: 30%;
    z-index: 2;
    left: -30px;
  }
  .skill-bg {
    margin-top: 0;
    padding: 60px 0 100px;
  }
  .check-wrap {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    background: #1E427A;
    padding: 60px 0 0;
  }
  .check-item {
    width: 95%;
    margin: 0 auto 60px;
  }
  .check-list li {
    font-size: 1.4rem;
  }
  .check h3 {
    background: #fff url(images/top-kinki-blue.png) no-repeat;
    background-size: 100%;
    background-position: center bottom;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding-top: 60px;
  }
	.skill-wrap{
		flex-direction: column;
	}
}
/*PC Layout
===================================*/
@media all and (min-width: 769px) {
  .skill-item {
    margin: 10px;
  }
}
/* youtube
------------------------------------------------------ */
.youtube-bg {
  background: #F3F6FD;
  padding: 0 0 30px;
}
.youtube-ttl {
  width: 40%;
  max-width: 140px;
  margin: 0 auto 30px;
}
.youtube-lead {
  color: #253F71;
  text-align: center;
  font-family: 'hiragino6';
  font-size: 3rem;
  margin-bottom: 40px;
}
/* sns
------------------------------------------------------ */
.sns-bg {
  padding: 100px 0;
  background: url("images/top-bg03.jpg") no-repeat;
  background-size: cover;
  height: 500px;
}
.sns {
  background: url("images/bg01.png") no-repeat;
  background-size: 100% auto;
}
.sns h3 {
  color: #324A7C;
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 10px;
}
.sns h3:before, .sns h3:after {
  content: none;
}
.sns h3 span {
  font-size: 3rem;
  display: block;
  color: #324A7C;
  font-family: 'hiragino7';
}
.contact-txt-img{
	display: none;
}
.sns-item {
    background: #fff;
	min-height: 400px;
}
.twitter-icon {
    width: 60px;
    margin: 20px auto;
}
.ig-icon {
    width: 60px;
    margin: 20px auto;
}
/*SP Layout
===================================*/
@media all and (max-width: 768px) {
  .sns-bg {
    padding: 50px 0 100px;
  }
	.contact-bg{
	margin-top: 0;
}
		.check {
    background: #1E427A;
    width: 100vw;
    padding-bottom: 40px;
}
	.kousin-wrap-bg{
		width: 80%;
	}
	.check-support{padding-bottom: 0;}
	.sns-bg{
		height: auto;
	}
	.sns{
		background: none;
	}
	.sns-item{
		padding-top: 10px;
    margin: 20px auto;
	}
}
.contact-bg{
	margin-top: 0;
}


/*PC Layout
===================================*/
@media all and (min-width: 769px) {
	.sns-wrap{
		display: flex;
		max-width: 980px;
		margin: 60px auto;
		justify-content: space-between;
	}
	.sns-item {
    width: 48%;
}
}
