#page_title{
	background:url('../images/recruit/pagetitle_green.webp') no-repeat bottom center;
}
#page_title h2 {
	font-size:32px;
}
.gallery{
	list-style:none;
	padding:0;
	display:flex;
	flex-wrap:wrap;
	gap:20px;
}
.gallery li{
	width:calc((100% - 40px) / 3);
}
.gallery li img{
	width:100%;
	height:240px;
	object-fit:cover;
	display:block;
}
form th{
	vertical-align:top;
}
.shabon {
  position: relative;
  width: 100%;
  height: 500px;
  overflow: hidden;
	list-style:none;
	padding:0;
}

.shabon li {
  position: absolute;
  width: 150px;
  height: 150px;
  opacity: 0;
  pointer-events: none;
  transform: translateY(100px); /* 初期位置：下から登場 */
}

.shabon li.floating {
  animation: floatUp 10s ease-in-out infinite alternate,
             fadeIn 1.5s ease-out forwards;
}

.shabon img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
}

/* フェードインと下から上昇アニメーション */
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ふわふわアニメーション（左右・上方向にゆれる） */
@keyframes floatUp {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(var(--x, 10px), var(--y, -20px));
  }
  100% {
    transform: translate(calc(var(--x, 10px) * -1), 0);
  }
}

.photobox{
	display:flex;
	gap:30px;
}
.photobox2{
	display:flex;
	flex-wrap:wrap;
	gap:30px;
}
.photobox2 p{
	width:calc((100% - 30px) / 2);
	font-size:90%;
}
.naze_list{
	display:flex;
	flex-wrap:wrap;
	gap:20px;
	justify-content:center;
	padding:0;
	list-style:none;
}
.naze_list li{
	border:2px solid #00a77b;
	width:calc((100% - 40px) / 3);
	box-sizing:border-box;
	text-align:center;
	border-radius:10px;
	height:80px;
	display:flex;
	align-items:center;
	justify-content:center;
}