/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 27 2026 | 23:15:00 */
/* トップページ */

/* ファーストビュー */
.p-mainVisual__textLayer {
	justify-content: flex-end;
}
.p-mainVisual__textLayer figure {
	max-width: min(600px, 40%);
}
@media (max-width: 599px) {
	.p-mainVisual__textLayer figure {
		max-width: 70%;
	}
}

/* =========================
   FV 文字画像切り替え
========================= */
.fv-copy {
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translatex(-50%);
	z-index: 10;
	opacity: 0;
	pointer-events: none;
	animation: fvCopyFade 36.5s infinite;
}

/* 1枚目 */
.fv-copy-01 {
  animation-delay: 0s;
}

/* 2枚目 */
.fv-copy-02 {
  animation-delay: 12s;
}

/* 3枚目 */
.fv-copy-03 {
  animation-delay: 24s;
}

/* フェード */
@keyframes fvCopyFade {

  /* フェードイン */
  0% {
    opacity: 0;
  }

  5% {
    opacity: 1;
  }

  /* 表示 */
  28% {
    opacity: 1;
  }

  /* フェードアウト */
  33.333% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}


/* 募集職種 */
@media (min-width: 600px) {
	.top-shokushu {
		padding-top: 150px!important;
	}
}	
@media (max-width: 599px) {
	.top-shokushu {
		padding-top: 80px!important;
	}
}	
.top-shokushu h2 {
	white-space: nowrap;
}
/* 募集職種セクション 背景装飾 START */
.top-shokushu {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	background: #fff;
}
.top-shokushu > *:not(.top-shokushu__bg) {
	position: relative;
	z-index: 2;
}
.top-shokushu__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
}
.top-shokushu__line {
	position: absolute;
	top: var(--top);
	left: var(--left);
	width: var(--width);
	height: var(--height);
	background: var(--background);
	transform: rotate(var(--rotate));
	transform-origin: center;
}
/* 中央の最も太い帯 */
.top-shokushu__line.line-main {
	z-index: 1;
	opacity: 0.5;
}
/* 上下の補助帯 */
.top-shokushu__line.line-sub {
	z-index: 0;
	opacity: 0.5;
}
.top-shokushu__line.line-sub-top {
	mix-blend-mode: multiply;
}
.top-shokushu__line.line-sub-bottom {
	z-index: 2;
	opacity: 0.3;
}
@media screen and (max-width: 959px) {

	/* 中央の太い緑ライン */
	.top-shokushu__line.line-main {
		--left: -30% !important;
		--width: 175% !important;
		--height: 320px !important;
		--background: linear-gradient(
			90deg,
			rgba(31, 107, 86, 0.14) 0%,
			rgba(31, 107, 86, 0.22) 15%,
			rgba(63, 156, 59, 0.34) 35%,
			rgba(63, 156, 59, 0.42) 58%,
			rgba(126, 211, 33, 0.48) 100%
		) !important;
	}

	/* 上部の細い緑ライン */
	.top-shokushu__line.line-sub-top {
		--left: -24% !important;
		--width: 180% !important;
		--height: 165px !important;
		--background: linear-gradient(
			90deg,
			rgba(45, 145, 33, 0.16) 0%,
			rgba(45, 145, 33, 0.22) 25%,
			rgba(126, 211, 33, 0.42) 100%
		) !important;
	}

	/* 下部の黄色ライン */
	.top-shokushu__line.line-sub-bottom {
		--left: -28% !important;
		--width: 175% !important;
		--height: 190px !important;
		--background: linear-gradient(
			90deg,
			rgba(244, 217, 87, 0.43) 0%,
			rgba(244, 217, 87, 0.58) 24%,
			rgba(244, 217, 87, 0.68) 44%,
			rgba(244, 217, 87, 0.75) 68%,
			rgba(126, 211, 33, 0.80) 100%
		) !important;
	}
}
/* 募集職種セクション 背景装飾 END */
.top-shokushu .section-bg-text {
	top: -70px;
	left: -5vw;
	font-size: 100px!important;
}
@media (max-width: 599px) {
	.top-shokushu .section-bg-text {
		top: -40px;
		font-size: 50px!important;
	}
}
.top-shokushu .section-lead-text {
	font-size: 24px;
}
@media (max-width: 599px) {
	.top-shokushu .section-lead-text {
		font-size: 23px;
	}
}
.top-shokushu .btns {
	gap: 10px;
	justify-content: flex-end;
	flex-wrap: wrap;
} 
@media (max-width: 959px) {
	.top-shokushu .btns {
		justify-content: flex-start;
	} 
	.top-shokushu .btns .swell-block-button__link {
		font-size: 13px;
		padding: 10px;
	} 
}
.top-shokushu .item {
	border: 6px solid transparent;
	border-radius: 20px;
	overflow: hidden;
	
	background:
		linear-gradient(#fff, #fff) padding-box,
		linear-gradient(100deg, #2d9121 0%, #65be58 100%) border-box;
}
.top-shokushu .item .cat {
	border: 1px solid var(--color_main);
	padding: 6px 8px;
	color: var(--color_main);
	line-height: 1;
	font-size: 12px;
} 
.top-shokushu .item .yoko {
	display: flex;
	align-items: flex-end;
	flex-grow: 1;
	flex-wrap: wrap;
	margin-bottom: 20px!important;
	line-height: 1.2;
} 
.top-shokushu .item .title-area,
.top-shokushu .item .cat-area {
	flex-grow: 1;
} 
.top-shokushu .text-area .wp-block-group.is-row {
	width: fit-content;
	margin-left: auto;
}
@media (max-width: 599px) {
	.top-shokushu .item .text-area {
		padding: 10px;
	} 
}
/* 募集職種カードの高さを揃える START */
@media (min-width: 600px) {

	/* 各カラムを同じ高さまで伸ばす */
	.top-shokushu .content > .swell-block-columns__inner {
		align-items: stretch;
	}

	.top-shokushu .content .item {
		display: flex;
	}

	/* aタグをカード全体の高さにする */
	.top-shokushu .content .item > .top-shokushu__link {
		display: flex;
		width: 100%;
		height: 100%;
	}

	/* カード本体 */
	.top-shokushu .content .item .box-shadow {
		width: 100%;
		height: 100%;
	}

	/* 画像とテキストを縦並びにする */
	.top-shokushu .content .item .box-shadow
	> .wp-block-group__inner-container {
		display: flex;
		flex-direction: column;
		height: 100%;
	}

	/* 3つのテキストエリアを同じ高さにする */
	.top-shokushu .content .item .text-area {
		display: flex;
		flex: 1;
		padding: 10px 20px;
	}

	.top-shokushu .content .item .text-area
	> .wp-block-group__inner-container {
		display: flex;
		flex-direction: column;
		width: 100%;
	}

	/* MOREをテキストエリア下部に揃える */
	.top-shokushu .content .item .more {
		margin-top: auto;
	}
	
	.top-shokushu .content .item .inner-content .swell-block-columns__inner {
		justify-content: space-between;
	}
}
/* 募集職種カードの高さを揃える END */
.top-shokushu .item h3 {
	font-size: 24px;
	letter-spacing: .05em;
	white-space: nowrap;
}
@media (max-width: 599px) {
	.top-shokushu .item h3 {
		font-size: 22px;
	}
}
.top-shokushu .item .more {
	color: #fff;
	transform: translatex(10px);
	font-weight: 700;
	font-size: 14px;
	letter-spacing: .1em;
}
.top-shokushu .item > .top-shokushu__link {
	transition: .3s;
}
.top-shokushu .item > .top-shokushu__link:hover {
	opacity: .6;
}
.top-shokushu .content .swell-block-columns__inner {
	justify-content: center;
}
.top-shokushu .item > a > .wp-block-group {
	position: relative;
}
.top-shokushu .item > a > .wp-block-group::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 160px;
	height: 80px;
	background: linear-gradient(100deg, #2d9121 0%, #65be58 100%);
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	z-index: 0;
	pointer-events: none;
}
/* テキストなどを装飾より前面にする */
.top-shokushu .item .box-shadow > .wp-block-group__inner-container {
	position: relative;
	z-index: 2;
}


/* お知らせ */
@media (min-width: 600px) {
	.top-news {
		padding-top: 120px!important;
	}
}
@media (max-width: 599px) {
	.top-news {
		padding-top: 80px!important;
	}
}
.top-news .section-bg-text {
	top: -40px;
}
@media (max-width: 959px) {
	.top-news .section-bg-text {
		top: -30px;
	}
}
.top-news .title-area {
	display: flex;
	flex-direction: column;
}
.top-news .title-area .swell-block-button {
	margin-top: auto;
	margin-bottom: 20px!important;
}
@media (max-width: 959px) {
	.top-news h2 {
		margin-bottom: 0;
	}
}
.top-news .p-postList__meta {
	position: initial;
}
@media (max-width: 959px) {
	.top-news .-type-simple .p-postList__meta {
		margin: 0 0 10px;
	}
}
.top-news .p-postList__cat {
	position: absolute;
	right: 0;
	top: 0;
	background: var(--color_main);
	color: #fff;
	padding: .4em .6em;
	font-size: 13px;
}
.top-news .c-postTimes__posted {
	color: #aaa;
	font-size: 14px;
	font-family: "Montserrat", "Noto Sans JP", sans-serif;
}
.top-news .c-postTimes__posted::before,
.top-news .p-postList__cat::before {
	display: none;
}
.top-news .p-postList__cat {
	padding-left: 20px;
	padding-right: 20px;
	border-radius: 5px;
}


/* 観光地写真or動画 上部 */
.top-kanko.top h2 {
	font-size: 34px;
	line-height: 1.4;
	padding-left: 22px;
	letter-spacing: .05em;
}
@media (max-width: 599px) {
	.top-kanko.top h2 {
		font-size: 26px;
	}
}
.top-kanko.top h2::before {
	position: absolute;
	top: 6px;
	left: 0;
	width: 5px;
	height: 100%;
    background: linear-gradient(to bottom, #fff 0%, #fff 82%, #f4d957 82%, #f4d957 100%);
	content: "";
}
@media (max-width: 599px) {
	.top-kanko.top h2::before {
		height: 90%;
	}
}
@media (min-width: 700px) {
	.top-kanko.top .text {
		padding-right: max(300px, 50%);
	}
}
@media (min-width: 700px) {
	.top-kanko.top .bus-image {
		position: absolute;
		right: 20px;
		bottom: -40px;
		width: min(500px, 40%);
	}	
}
@media (max-width: 699px) {
	.top-kanko.top .bus-image {
		width: min(400px ,100%);
		margin: 0 auto;
	}	
}


/* 観光地写真or動画 下部 */
/* スライダー */
/* ===================================
   横に流れ続ける写真ギャラリー
=================================== */
.top-gallery-slider {
	--panel-width: 3000px;
	--panel-height: 600px;
	--loop-distance: -3000px;
	--animation-speed: 60s;

	position: relative;
	width: 100%;
	height: var(--panel-height);
	overflow: hidden;
	background-color: #fff;
}

.top-gallery-slider__track {
	display: flex;
	align-items: flex-start;
	width: max-content;
	height: var(--panel-height);
	margin: 0;
	padding: 0;
	animation: top-gallery-loop var(--animation-speed) linear infinite;
	will-change: transform;
	backface-visibility: hidden;
}
.top-gallery-slider__panel {
	position: relative;
	flex: 0 0 var(--panel-width);
	width: var(--panel-width);
	min-width: var(--panel-width);
	height: var(--panel-height);
	margin: 0;
	padding: 0;
}
/* 各画像の共通設定 */
.top-gallery-slider__item {
	position: absolute;
	margin: 0;
	padding: 0;
	line-height: 0;
	overflow: hidden;
	border-radius: 20px;
}
/* 元画像の縦横比を維持し、トリミングせずに表示 */
.top-gallery-slider__item img {
	display: block;
	width: 100%;
	height: auto !important;
	max-width: none !important;
	margin: 0;
	border-radius: 20px;
}
/* 1枚目 */
.top-gallery-slider .item01 {
	top: 0;
	left: 0;
	width: 547px;
}
/* 2枚目 */
.top-gallery-slider .item02 {
	top: 22px;
	left: 572px;
	width: 446px;
}
/* 3枚目：1078 × 696px → 表示サイズ 約413 × 266.6px */
.top-gallery-slider .item03 {
	top: 314px;
	left: 641px;
	width: 413px;
}
/* 4枚目 */
.top-gallery-slider .item04 {
	top: 110px;
	left: 1361px;
	width: 583px;
}
/* 5枚目 */
.top-gallery-slider .item05 {
	top: 0;
	left: 1074px;
	width: 266px;
}
/* 6枚目 */
.top-gallery-slider .item06 {
	top: 32px;
	left: 2015px;
	width: 443px;
}
/* 7枚目 */
.top-gallery-slider .item07 {
	top: 329px;
	left: 1969px;
	width: 394px;
}
/* 8枚目 */
.top-gallery-slider .item08 {
	top: 120px;
	right: 20px;
	left: auto;
	width: 492px;
}
/* ===================================
   スマートフォン
=================================== */
@media screen and (max-width: 599px) {
	/* PCサイズの約60％ */
	.top-gallery-slider {
		--panel-width: 1800px;
		--panel-height: 360px;
		--loop-distance: -1800px;
		--animation-speed: 36s;
	}
	.top-gallery-slider__item,
	.top-gallery-slider__item img {
		border-radius: 12px;
	}
	/* 1枚目 */
	.top-gallery-slider .item01 {
		top: 0;
		left: 0;
		width: 328px;
	}
	/* 2枚目 */
	.top-gallery-slider .item02 {
		top: 13px;
		left: 343px;
		width: 268px;
	}
	/* 3枚目：表示サイズ 約248 × 160.1px */
	.top-gallery-slider .item03 {
		top: 188px;
		left: 385px;
		width: 248px;
	}
	/* 4枚目 */
	.top-gallery-slider .item04 {
		top: 66px;
		left: 817px;
		width: 350px;
	}
	/* 5枚目 */
	.top-gallery-slider .item05 {
		top: 0;
		left: 644px;
		width: 160px;
	}
	/* 6枚目 */
	.top-gallery-slider .item06 {
		top: 19px;
		left: 1209px;
		width: 266px;
	}
	/* 7枚目 */
	.top-gallery-slider .item07 {
		top: 197px;
		left: 1181px;
		width: 236px;
	}
	/* 8枚目 */
	.top-gallery-slider .item08 {
		top: 72px;
		right: 12px;
		left: auto;
		width: 295px;
	}
}
/* ===================================
   スライダーの移動
=================================== */
@keyframes top-gallery-loop {
	from {
		transform: translate3d(0, 0, 0);
	}

	to {
		transform: translate3d(var(--loop-distance), 0, 0);
	}
}
/* 動きを減らす設定の場合 */
@media (prefers-reduced-motion: reduce) {
	.top-gallery-slider__track {
		animation: none;
	}
}


/* 数字で見る濃飛バス */
.c-company-data.top .swell-block-button.green_.is-style-btn_line a:hover {
	border-color: #fff;
}
.c-company-data.top .section-bg-text {
	top: -30px;
	left: 20px;
}
@media (max-width: 959px) {
	.c-company-data.top .section-bg-text {
		top: -20px;
	}
}
@media (max-width: 599px) {
	.c-company-data.top .section-bg-text {
		top: 0;
	}
}
.c-company-data.top .section-bg-text span {
	color: rgba(244, 217, 87, .3)!important;
}
.c-company-data.top .section-title >*::after {
    background: linear-gradient(to right, #fff 0%, #fff 82%, #f4d957 82%, #f4d957 100%);
}