body {
	background-color: #EFF0F2;
}
.hero.service {
  position: relative;
  background-image: url("./images/recruit_18.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  color: #fff;
  text-align: center;
  /*padding: 120px 20px;*/
  height: 357px;
}
h1 {
	font-size: 3.4rem;
	color: #fff;
	font-weight: 300;
	margin-top: 100px;
}
.service-content {
  position: relative;
  text-align: center;
  line-height: 364px;
  z-index: 1;
}
.recruit {
	background: transparent;
}
.recruit .inner {
	text-align: left;
	line-height: 2.4;
}
.recruit .recruit-title {
	color: #175996;
	font-weight: 500;
	padding-bottom: 30px;
}
.company .about-title.l2 {
	border-bottom: 1px solid #aaa;
}
.company .about-title a {
	color: #175996;
	text-decoration: none;
}
.advantage {
	background-color: #fff;
	padding: 100px;
}
.advantage h2, .outline h2, .goal h2, .greeting h2 {
	font-size: 3.0rem;
	color: #175996;
	font-weight: 300;
}
.advantage h3 {
	color: #175996;
	font-weight: 500;
	margin-top: 50px;
}
.outline {
	background-color: #fff;
	padding: 100px;
	margin-top: 60px;
}
.outline .ol {
	display: grid;
	grid-template-columns: 10% 90%;
}
.outline .ol .ol-lt {
	border-top: 1px solid #175996;
	padding: 10px 5px;
}
.outline .ol .ol-rt {
	border-top: 1px solid #ddd;
	padding: 10px 5px;
}
.outline .ol .ol-rt P {
	padding: 10px 0 10px 0;
}
.goal {
	background-image: url("./images/recruit_26.jpg");
	background-position: center;
	background-size: cover;
	height: 607px;
	padding: 150px;
}
.goal h2 {
	font-size: 3.0rem;
	color: #fff;
	font-weight: 300;
}
.goal p {
	color: #fff;
	padding: 100px 0 0 0;
	font-size: 1.4rem;
	text-align: center;
}
.apply {
	background-image: url("./images/recruit_53.jpg");
	background-position: center;
	background-size: cover;
	height: 556px;
	padding: 100px;
	margin-top: 50px;
}
.apply h2 {
	font-size: 3.0rem;
	color: #fff;
	font-weight: 300;
}
.apply p {
	color: #fff;
	padding: 10px 0 0 0;
	font-size: 1.4rem;
	text-align: center;
}
.ceo {
	background-image: url("./images/about_60.jpg");
	background-position: center;
	background-size: cover;
	height: 730px;
}
.greeting {
	padding: 200px;
}
.greeting h3 {
	font-size: 1.5rem;
	color: #175996;
	font-weight: 500;
}
.greeting p {
	padding: 10px 0;
}
.greeting p.sign {
	text-align: right;
}

@media (max-width: 768px) {
  .outline {
	background-color: #fff;
	padding: 10px;
	margin-top: 60px;
  }
  .outline .ol {
	display: grid;
	grid-template-columns: 20% 80%;
  }
  .outline .ol .ol-lt {
	border-top: 1px solid #175996;
	padding: 10px 5px;
  }
  .outline .ol .ol-rt {
	border-top: 1px solid #ddd;
	padding: 10px 5px;
  }
  .outline .ol .ol-rt P {
	padding: 10px 0 10px 0;
  }
	.goal {
		padding: 50px 10px;
		width: 100%;
		height: auto;
	}
	.goal p {
		padding: 0;
	}
	.apply {
		padding: 10px;
		width: 100%;
		height: auto;
	}
	.apply h2 {
	font-size: 1.2rem;
	}
	.apply p {
	font-size: 1.0rem;
	}
}

/* Gyoumu */
.gyoumu {
  background: #EFF0F2;
  padding: 60px 20px;
  text-align: center;
}
.gyoumu h2 {
	font-size: 3.4rem;
	font-weight: 300;
	color: #fff;
	height: 357px;
	line-height: 357px;
}
.gyoumu h2.block1 {
	background-image: url("./images/gyoumu_19.jpg")
}
.gyoumu h2.block2 {
	background-image: url("./images/gyoumu_47.jpg")
}
.gyoumu h2.block3 {
	background-image: url("./images/gyoumu_60.jpg")
}
.gyoumu h2.block4 {
	background-image: url("./images/gyoumu_64.jpg")
}
.gyoumu h3 {
	font-size: 2.2rem;
	font-weight: normal;
}
.gyoumu .grid {
	/*
  display: grid;
  grid-template-columns: repeat(2, 30%);
  gap: 0px;
	*/
  margin-top: 30px;
	display: flex;
	height: 250px;
}
.gyoumu .grid.rt {
	justify-content: flex-end;
}
.gyoumu .grid.lt {
	justify-content: flex-start;
}
.gyoumu .card {
  background: #219CEA;
  padding: 70px 50px;
  border: 1px solid #eee;
  color: #fff;
  width: 25%;
}
.gyoumu .detail {
  background: #fff;
  padding: 50px 100px;
  border: 1px solid #eee;
  color: #333;
  width: 55%;
}
.gyoumu .photo {
	/*
  background: #fff;
  padding: 50px 100px;
  border: 1px solid #eee;
  color: #333;
  width: 20%;
	*/
}
.gyoumu .descript {
  background: #EFF0F2;
  padding: 50px 20px;
  border: 1px solid #eee;
  color: #333;

}
.gyoumu h4 {
	border-left: 15px solid #175996;
	color: #175996;
    text-align: left;
	font-size: 1.4rem;
	padding-left: 20px;
	margin-bottom: 15px;
}
.sepa {
	border-top: 1px solid #eee;
	margin: 20px 0;
}
    section{padding:60px 0}
    h2{font-size:28px;margin-bottom:20px;text-align:center}
    .intro{text-align:center;max-width:800px;margin:0 auto 40px}

    .grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
    .service-card{position:relative;overflow:hidden;border-radius:10px}
    .service-card img{width:100%;height:220px;object-fit:cover}
    .service-card span{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,0.5);color:#fff;padding:10px;font-weight:700;text-align:center}

    .feature{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:40px}
    .feature:nth-child(even){flex-direction:row-reverse}
    .feature img{flex:1 1 400px;border-radius:10px}
    .feature-text{flex:1 1 400px}
    .feature-text h3{color:#0b5394;margin-top:0}

    @media(max-width:768px){
      .nav ul{flex-wrap:wrap;gap:0px;font-size:14px}
      .hero{padding:60px 20px}
      .feature{flex-direction:column!important}
    }

/* 019 */
.button019 a {
    background: #eee;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 280px;
    padding: 10px 25px;
    color: #313131;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	text-decoration: none;
}
.button019 a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 1.5rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.button019 a:hover {
  background: #6bb6ff;
  color: #FFF;
}
.button019 a:hover:after {
  right: 1.0rem;
}
.btn019 {
	color: #313131;
}