.KV {
	background-color: #f1f1f1;
}

.kv-block h1 {
	font-size: 2em;
	font-weight: 600;
}
.kv-block h2 {
	font-size: 24px;
}

.bg--orange {
	background: rgba(254,162,81,0.1);
}
.bg--blue {
	background: rgba(50, 190, 210,0.1);
}
.type--cook {
    color: #fff;
    z-index: 0;
    background: #fea251;
    background: -webkit-gradient(linear, left top, right top, from(#fea251), color-stop(37%, #ff724b), color-stop(63%, #ff724b), to(#fea251));
    background: linear-gradient(to right, #fea251 0%, #ff724b 37%, #ff724b 63%, #fea251 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fea251',endColorstr='#fea251',GradientType=1);
    background-size: 200% 100%;
    background-position: left center;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

.type--cook:hover {
    background: #fea251;
    background: -webkit-gradient(linear, left top, right top, from(#fea251), color-stop(37%, #ff724b), color-stop(63%, #ff724b), to(#fea251));
    background: linear-gradient(to right, #fea251 0%, #ff724b 37%, #ff724b 63%, #fea251 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fea251',endColorstr='#fea251',GradientType=1);
    background-size: 200% 100%;
    background-position: left center;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

.btn--primary.type--cook, .btn--primary.type--cook:visited {
    border-color: #fa7a3a;
}

.type--service {
    color: #fff;
    z-index: 0;
    background: #32bed2;
    background: -webkit-gradient(linear, left top, right top, from(#32bed2), color-stop(37%, #007fc3), color-stop(63%, #007fc3), to(#32bed2));
    background: linear-gradient(to right, #32bed2 0%, #007fc3 37%, #007fc3 63%, #32bed2 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#32bed2',endColorstr='#32bed2',GradientType=1);
    background-size: 200% 100%;
    background-position: left center;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

.type--service:hover {
    background: #32bed2;
    background: -webkit-gradient(linear, left top, right top, from(#32bed2), color-stop(37%, #007fc3), color-stop(63%, #007fc3), to(#32bed2));
    background: linear-gradient(to right, #32bed2 0%, #007fc3 37%, #007fc3 63%, #32bed2 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#32bed2',endColorstr='#32bed2',GradientType=1);
    background-size: 200% 100%;
    background-position: left center;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

.btn--primary.type--service, .btn--primary.type--service:visited {
    border-color: #007fc3;
}

img.pls-logo {
	width: 47%;
}
img.service-logo {
	width: 70%;
	max-height: 55px;
}

.imageblock > .container, .imageblock > div[class*='col-']:not(.imageblock__content) {
    padding-top: 5.428571em;
    padding-bottom: 5.428571em;
    float: none;
    overflow: hidden;
}
@media (max-width: 767px) {
    .imageblock > .container, .imageblock > div[class*='col-']:not(.imageblock__content) {
        padding-top: 2.57142857em;
        padding-bottom: 2.57142857em;
        float: none;
        overflow: hidden;
    }
}


.pls-block p {
	text-align: left;
}

.pls-link-block {
	margin-bottom: 30px;
}


ul.pls-link li a {
	position: relative;
	display: block;
	font-weight: 600;
    color: rgb(33, 33, 33);
	padding: 5px;
	margin-bottom: 2px;
	border-radius: 5px;
}
ul.pls-link li a:after {
	font: var(--fa-font-solid);
   content: "\f0a9";
	position: absolute;
	right: 20px;
    top: 10px;
	
}
.link-cook ul.pls-link li a {
	background: rgba(254,162,81,0.1);
}
.link-service ul.pls-link li a {
	background: rgba(50, 190, 210, 0.1);
}

.bg--KV {
	background-image: url("../img/KV_bg.webp");
	background-position: right center;
	background-repeat: repeat-y;
	background-size: 100%;
}
@media (min-width: 767px) {
.main-container {
	padding-top: 71px;
}
}
.bar .logo {
    max-height: 45px;
    max-width: none;
}

.KV {
}
.bar__module {
	padding-top: 2px;
}
.bar__module .menu-horizontal a {
	color: #000 !important;
	opacity: 1.0 !important;
	font-size: 16px !important;
}
.merit-block p {
	text-align: left;
}

.merit-section h2 {
	border-top: solid #000;
	border-bottom: solid #000;
	font-size: 2em;
    font-weight: 600;
	padding: 15px 0;
}

.merit-block {
	margin-bottom: 30px;
}

.registration-block {
	padding-top: 40px;
}
.registration-block a {
	width: 100%;
}
.registration-block a:hover .free  {
	color: #fff;
}
.free {
	display: block;
	margin: 8px;
	border:solid 1px #fff;
	border-radius: 5px;
	color: #fff !important;
}
.free:hover {
	color: #fff;
}
.for-company {
	padding: 20px 0;
}
.kv-block {
	padding: 20px;
}


.merit-illust {
	padding: 0 15%;
}
.btn__job {
	font-size: 125%;
}

.merit-block h3 {
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 0.3em;
}

.circle_number {
	display: inline-block;
  width: 40px;
  height: 40px;
  padding-top: 6px;
	margin-right: 0.5em;
  background-color: #aadfec;
  border-radius: 50%;
  text-align: center;
  box-sizing: border-box;
	color: #fff;
}

@media (max-width: 767px) {
	.kv-block h1 {
    font-size: 20px;
}
	.kv-block h2 {
    font-size: 18px;
}
	.feature__body {
		padding: 1.73809524em;
	}
}


.btn .btn__text {
    font-size: 1em;
}



/* ナビゲーションのリンクスタイル */
.nav-link {
    position: relative;
    display: inline-block;
    text-decoration: none;
    transition: color 0.3s ease-in-out;
}

/* 下線のアニメーション */
.nav-link::after {
    content: "";
    position: absolute;
    right: 0; /* 初期状態を右に */
    bottom: -2px;
    width: 0;
    height: 2px;
    background-color: #ff6600; /* 下線の色 */
    transition: width 0.3s ease-in-out, right 0.3s ease-in-out;
}

/* ホバー時（右から左へラインが引かれる） */
.nav-link:hover::after {
    width: 100%; /* 右から左へ広がる */
    right: 0; /* 位置は固定 */
}

/* ホバー解除時（左へスライドして消える） */
.nav-link:not(:hover)::after {
    width: 0; /* 線を消す */
    right: 100%; /* 左端に移動しながら消える */
}
