@charset "utf-8";

/*
Copyright (C) https://ohura-office.jp
*/

/* カルーセルここから */
.swiper {
	min-width: 1280px;
	margin: 140px auto 0px;
	padding: 0px 0px 200px;
}

.swiper-wrapper {
}

.swiper-slide {
	width: 800px;
}

.swiper-slide img {
	width: 800px;
	overflow: hidden;
	border-radius: 20px;
	filter: drop-shadow(0px 4px 8px rgba(0,0,0,0.2));
}


.swiper-button-prev,
.swiper-button-next {
	width: 48px;
	padding: 40px 16px;
	position: absolute;
	top: 188px;
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--swiper-navigation-color, var(--swiper-theme-color));
	background-color: rgba(230,232,235,0.80);
}

.swiper-button-prev:after,
.swiper-button-next:after {
display: none;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 0px;
  right: auto;
  border-radius: 0px 8px 8px 0px;
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 0px;
  left: auto;
    border-radius: 8px 0px 0px 8px;
}


.swiper-pagination {
	margin: 24px auto 0px;
  position: absolute;
  text-align: center;
  z-index: 20;
  left: 50%;
	transform: translate(-50%, 0);
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  margin: 0px 4px;
  display: inline-block;
  border-radius: 50%;
  background: #000000;
  opacity: 0.2;
  transition: 0.6s;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet-active {
	opacity: 1;
	background-color: rgba(255,255,255,0.70);
	transition: 0.6s;
}


/* サービス紹介ここから */
main .service {
width: 1216px;
margin: 0px auto 0px;
padding: 40px 0px 80px;
}

main .service .introduction {
width: 800px;
margin: -160px auto 0px;
padding: 40px 40px;
background-color: #f2f2f5;
border-radius: 20px;
filter: drop-shadow(0px 0px 16px rgba(0,0,0,0.2));
}

main .service .box {
margin: 64px 0px 0px;
display: flex;
flex-flow: wrap;
}

main .service .box article {
width: 288px;
margin: 24px 8px;
padding: 0px 0px 24px;
border-radius: 20px;
overflow: hidden;
background-color: #f2efea;
}

main .service .box .h01,
main .service .box .h02 {
width: 592px;
}


main .service .introduction h2 {
margin: 0px;
font-family: 'Noto Serif JP', serif;
font-size: 360%;
font-weight: 900;
color: #004797;
}

main .service .introduction p {
margin: 24px 0px;
font-size: 180%;
line-height: 160%;
text-align:justify;
text-justify:inter-ideograph;
}

main .service .introduction p a {
padding: 0px 12px;
color: #2f73c0;
background-color: #f2f2f5;
display: inline-block;
border-radius: 50px;
font-weight: 700;
}

main .service .introduction p a:hover {
background-color: #F3E421;
display: inline-block;
text-decoration: none;
color: #343441;
}


main .service .box article a {
text-decoration: none;
color: #343441;
}

main .service .box article a:hover {
}

main .service .box article .contents-header {
padding: 0px 0px 8px;
transition: 0.8s;
}

main .service .h01 .contents-header {
background-color: #F6C677;
}

main .service .h02 .contents-header {
background-color: #8BC5F3;
}

main .service .h03 .contents-header {
background-color: #61D5DA;
}

main .service .h04 .contents-header {
background-color: #D8A976;
}

main .service .h05 .contents-header {
background-color: #cdd8dc;
}

main .service .h06 .contents-header {
background-color: #B6B9ED;
}

main .service .h07 .contents-header {
	background-color: #B9A48C;
}

main .service .box a:hover .contents-header {
transition: 0.3s;
background-color: #F3E421;
}

main .service .box article .contents-header h1 {
margin: 0px;
padding: 24px 16px 4px;
font-family: 'Noto Serif JP', serif;
font-size: 320%;
font-weight: 900;
}

main .service .box .h01 .contents-header h1,
main .service .box .h02 .contents-header h1 {
padding: 32px 40px 4px;
}

main .service .box article .contents-img {
margin: 0px 8px 0px;
overflow: hidden;
border-radius: 6px;
}

main .service .box .h01 .contents-img,
main .service .box .h02 .contents-img{
margin: 0px 16px 0px;
}

main .service .box article .contents-txt {
padding: 8px 40px 0px;
}

main .service .box article .contents-txt p {
margin: 16px 0px;
font-size: 160%;
line-height: 160%;
text-align:justify;
text-justify:inter-ideograph;
}

main .service .box article .contents-txt p strong {
	font-size: 110%;
	font-weight: 700;
	color: #ED3924;
}

main .service .box article .contents-item {
}

main .service .box article .contents-item li {
font-size: 180%;
text-align: left;
border-bottom: 1px dashed #002C4E;
}

main .service .box article .contents-item li:last-child {
border-bottom: 0px none #FFFFFF;
}

main .service .box article .contents-item li a {
padding: 12px 24px;
display: block;
}

main .service .box .h01 .contents-item li a,
main .service .box .h02 .contents-item li a {
padding: 12px 80px;
}

main .service .box article .contents-item li a:hover {
background-color: #F3E421;
}

main .service .box article .contents-item li span::before {
content: "▶ ";
}


/* 求人ここから */

.job-offer {
padding: 80px 0px;
background-color: #B3E69C;
}

.job-offer-in {
width: 1200px;
margin: 0px auto;
display: flex;
justify-content: center;
align-items: center;
gap: 0px 40px;
}


.job-offer .img {
	width: 200px;
}


.job-offer h2 {
	margin: 0px 0px 16px;
	font-size: 260%;
	font-weight: 700;
}

.job-offer p {
	font-size: 200%;
}


.job-offer a {
	margin: 40px 0px 0px;
	font-size: 180%;
	line-height: 160%;
	padding: 4px 24px;
	display: inline-block;
	text-decoration: none;
	border-radius: 3em;
	color: #FFFFFF;
	background-color: #0DBA35;
}

.job-offer a:hover {
	color: #004797;
	background-color: #F3E421;
}


/* 連携ここから */

.alliance {
padding: 80px 0px;
background-color: #0678FA;
}

.alliance-in {
width: 1200px;
margin: 0px auto;
display: flex;
justify-content: space-between;
}

.alliance .introduction {
width: 552px;
display: flex;
align-items: center;
}

.alliance .introduction h1 {
font-family: 'Noto Serif JP', serif;
font-size: 360%;
font-weight: 900;
color: #FFFFFF;
}

.alliance .introduction p {
margin: 24px 0px;
font-size: 180%;
line-height: 160%;
text-align:justify;
text-justify:inter-ideograph;
color: #FFFFFF;
}

.professional {
width: 528px;
}

.professional li {
margin: 24px 0px;
display: flex;
align-items: center;
}

.professional-img {
width: 160px;
background-color: #FFFFFF;
overflow: hidden;
border-radius: 50%;
border: 12px solid #FFFFFF;
filter: drop-shadow(0px 0px 16px rgba(0,0,0,0.2));
}

.occupation {
margin: 0px 0px 0px 24px;
}

.occupation h2 {
margin: 0px 0px 0px 16px;
font-family: 'Noto Serif JP', serif;
font-size: 240%;
font-weight: 900;
color: #FFFFFF;
text-align: left;
}

.occupation p {
margin: 8px 0px 0px;
padding: 0.5em 2em;
font-size: 160%;
line-height: 160%;
background-color: #FCE87C;
border-radius: 2em;
}


/* 求人ここから */

.job-offer {
}


/* コンテンツここまで */