/* CSS Document */

/* .mainScroll スクロールアイコン
-------------------------------------- */
.mainScroll {
	overflow: hidden;
	position: absolute;
	left: 50%;
	bottom: 0;
	height: 77px;
	margin-left: -20px;
	-webkit-transition: opacity 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition: opacity 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-webkit-tap-highlight-color: transparent;
	font-family: 'Crimson Text', 'Noto Serif JP', serif;
}
.mainScroll a {
	display: block;
}
.mainScroll:hover {
	text-decoration: none !important;
}
.mainScrollTxt {
	margin-bottom: 8px;
	color: #fff;
	font-size: 16px !important;
	text-align: center;
}
.mainScrollLine {
	margin-left: auto;
	margin-right: auto;
	width: 1px;
	height: 25px;
	background-color: #fff;
	-webkit-transition: background-color 0.3s ease-out;
	transition: background-color 0.3s ease-out;
	-webkit-animation-name: scroll-icon;
	animation-name: scroll-icon;
	-webkit-animation-duration: 2.5s;
	animation-duration: 2.5s;
	-webkit-animation-timing-function: cubic-bezier(0.37, 0.16, 0.12, 1);
	animation-timing-function: cubic-bezier(0.37, 0.16, 0.12, 1);
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}
.mainScroll:hoverLine {
	background-color: #d4b079;
}
@media screen and (min-width: 600px) {
	.mainScrollTxt {
		font-size: 1.4rem;
	}
	.mainScrollLine {
		height: 35px;
	}
}
@-webkit-keyframes scroll-icon {
	0% {
		height: 0%;
		top: 100%;
	}
	50% {
		height: 100%;
		top: 0;
	}
	100% {
		height: 0%;
		top: 0;
	}
}
@keyframes scroll-icon {
	0% {
		height: 0%;
		top: 100%;
	}
	50% {
		height: 100%;
		top: 0;
	}
	100% {
		height: 0%;
		top: 0;
	}
}


section{
	margin: 0 auto 20px;
	position: relative;
}

.mainvisual_area{
	background: #fff url("../img/mainvisual_bg.png") repeat-x bottom center;
	min-height: 530px;
	box-shadow: inset 0px 4px 4px 0px rgba(50, 50, 50, 0.2);
	position: relative;
}

.mainvisual_area .inner{
	max-width: 1100px;
	background: url("../img/mainvisual_img01.png?220325") no-repeat center left,url("../img/mainvisual_img02.png?220325") no-repeat center right;
	min-height: 530px;
	margin: 0 auto;
	padding: 60px 0;
}

.hd01 {
	font-size: 32px;
	font-weight: bold;
	color: #023894;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	text-align: center;
	padding: 0;
	margin-bottom: 40px;
}

	.hd01 span{
		color: #f0ff19;
		display: inline-block;
		line-height: 1.4;
		font-size: 63px;
		transform: skewY(-2deg);
	}
	.hd01 span span.ttl{
		color: #023894;
		font-size: 100px;
		display: inline-block;
		background: -webkit-linear-gradient(transparent 60%, #f0ff19 0%);
		background: -o-linear-gradient(transparent 60%, #f0ff19 0%);
		background: linear-gradient(transparent 60%, #f0ff19 0%);
		line-height: 1;
		letter-spacing: 9px;
	}
	.hd01 span .ttl span.ttl02{
		color: #023894;
		font-size: 62px;
		display: inline-block;
	}
	.hd01 span span{
		color: #023894;
		background: -webkit-linear-gradient(transparent 60%, #f0ff19 0%);
		background: -o-linear-gradient(transparent 60%, #f0ff19 0%);
		background: linear-gradient(transparent 60%, #f0ff19 0%);
	}

.more_btn{
	max-width: 420px;
	margin: 0 auto;
}

	.more_btn a{
		background: #fff;
		border-radius: 30px;
		border: 1px solid #fff;
		display: block;
		padding: 10px;
		color: #dc382c;
		font-weight: bold;
		transition: 0.5s ease;
		font-size: 18px;
	}
	.more_btn a:hover{
		background: #dc382c;
		border: 1px solid #fff;
		display: block;
		padding: 10px;
		color: #fff;
		font-weight: bold;
		text-decoration: none;
	}

.mainvisual_area .inner p{
	color: #023894;
	font-weight: bold;
	font-size: 34px;
	line-height: 1.4;
}

.sec01{
	padding: 100px 0 ;
	margin-bottom: 0;
}
	.sec01 > .inner{
		padding: 30px;
		border-radius: 20px;
		position: relative;
		background: #ffffe0;
		box-shadow: 0px 0px 0px 5px #ffffe0;
		border: dashed 2px #FFC107;
		color: #454545;
		margin-bottom: 40px;
	}

.sec01 .subttl{
	text-align: center;
	color: #dc382c;
	font-weight: bold;
	font-size: 30px;
}

.hd02{
	color: #023894;
	font-size: 24px;
	line-height: 1.5;
}
	.hd02:before{
		content: "";
		background: url("../img/hd_line03.png") no-repeat top center;
		display: inline-block;
		width: 35px;
		height: 57px;
		background-size: contain;
		padding-right: 20px;
		vertical-align: middle;
	}
	.hd02:after{
		content: "";
		background: url("../img/hd_line04.png") no-repeat top center;
		display: inline-block;
		width: 35px;
		height: 57px;
		background-size: contain;
		padding-left: 20px;
		vertical-align: middle;
	}


	.sec01 .hd02:before,
	.sec01 .hd02:after{
		display: none;
	}


.point_box {
  position: relative;
  max-width: 600px;
  width: 100%;
  background-color: #e5f7ff;
  color: #333;
  padding: 2rem;
}

.sec01 .inner .flex:nth-child(odd) .point_box{
	margin-left: 20px;
}
.sec01 .inner .flex:nth-child(even) .point_box{
	margin-right: 20px;
}

.point_box .inside {
	text-align: left;
	line-height: 1.2;
}
.kitei .point_box .inside {
	text-align: left;
	line-height: 1.2;
	margin-top: 10px;
}
.point_box::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 8px;
	left: 8px;
	z-index: -1;
	-webkit-background-size: 4px 4px;
	-moz-background-size: 4px 4px;
	background-size: 6px 6px;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, #afafaf), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, #17a2ff), color-stop(0.75, #17a2ff), color-stop(0.75, transparent), to(transparent));
	background-image: -webkit-linear-gradient(-45deg, #bababa 40%, transparent 25%, transparent 50%, #bababa 50%, #bababa 75%, transparent 75%, transparent);
	background-image: -moz-linear-gradient(-45deg, #bababa 40%, transparent 25%, transparent 50%, #bababa 50%, #bababa 75%, transparent 75%, transparent);
	background-image: -ms-linear-gradient(-45deg, #bababa 40%, transparent 25%, transparent 50%, #bababa 50%, #bababa 75%, transparent 75%, transparent);
	background-image: -o-linear-gradient(-45deg, #bababa 40%, transparent 25%, transparent 50%, #bababa 50%, #bababa 75%, transparent 75%, transparent);
	background-image: linear-gradient(-45deg, #bababa 40%, transparent 25%, transparent 50%, #bababa 50%, #bababa 75%, transparent 75%, transparent);
}

.recruit-btn{
	margin: 40px auto;
}
	.recruit-btn img{
		width: 50%;
	}
	.recruit-btn a:hover{
		opacity: 0.8;
	}

.hotken_area{
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 40px auto 80px;
}
.hotken_area .hotken-img{
	margin-right: 15px;
}
.hotken_area .lead-txt{
	text-align: left;
	font-size: 22px;
}

.hotken_area .lead-txt span{
	font-weight: bold;
	font-size: 30px;
}

.hd04{
	background: none;
	font-size: 30px;
	color: #023894;
}
	.hd04:before{
		content: "";
		background: url("../img/hd_left.png") no-repeat top center;
		display: inline-block;
		width: 85px;
		height: 136px;
		background-size: contain;
		padding-right: 20px;
		vertical-align: middle;
	}
	.hd04:after{
		content: "";
		background: url("../img/hd_right.png") no-repeat top center;
		display: inline-block;
		width: 85px;
		height: 136px;
		background-size: contain;
		padding-left: 20px;
		vertical-align: middle;
	}

.sec01 .flex{
	margin-bottom: 0;
}

.sec01 .flex .point_box::after {
	content: "";
	background: url("../img/icon_point.png") no-repeat top left;
	width: 109px;
	height: 25px;
	display: inline-block;
	position: absolute;
	top: -13px;
	left: -13px;
}

.point_box .point_ttl{
	font-size: 30px;
	text-align: center;
	font-weight: bold;
	line-height: 1;
}

	.point_box .point_ttl span{
		font-size: 20px;
		padding-left: 0;
	}

.btn-box p{
	font-size: 24px;
	font-weight: bold;
}
.btn-box .recruit-btn{
	margin: 0 auto 40px;
}

.more_btn02{
	max-width: 520px;
	margin: 40px auto 0;
}
	.more_btn02 a{
		border: 1px solid #3399ff;
		background: #3399ff;
		border-radius: 30px;
		font-size: 22px;
		display: block;
		padding: 10px;
		color: #fff;
		font-weight: bold;
		transition: 0.5s ease;
	}

	.more_btn02.large a{
		padding: 20px;
		border-radius: 50px;
	}

	.more_btn02 a:hover{
		color: #3399ff;
		border: 1px solid #3399ff;
		background: #fff;
		text-decoration: none;
	}


.countermeasures{
	padding: 145px 0;
	margin-bottom: 0;
	margin-top: -86px;
	background: url("../img/sec02_bg.png") no-repeat bottom center;
}

.countermeasures .inner{
	max-width: 950px;
	margin: 0 auto;
}

	.countermeasures .inner ul{
		align-items: flex-end;
		margin-bottom: 40px;
		justify-content: center;
	}
	.countermeasures .inner ul li{
		margin: 20px 10px;
	}


.countermeasures img{
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}


.more_btn03{
	max-width: 420px;
	margin: 0 auto;
}

	.more_btn03 a{
		border: 1px solid #3399ff;
		background: #3399ff;
		border-radius: 30px;
		font-size: 18px;
		display: block;
		padding: 10px;
		color: #fff;
		font-weight: bold;
		transition: 0.5s ease;
	}
	.more_btn03 a:hover{
		border-radius: 30px;
		color: #3399ff;
		border: 1px solid #3399ff;
		background: #fff;
		text-decoration: none;
	}

.staff{
	background: #f4f9ff;
	padding: 60px 0;
	transform: skewY(-5deg);
}

.staff .inner{
	max-width: 950px;
	margin: 0 auto 30px;
	transform: skewY(5deg);
}

.staff .inner .flex{
	align-items: flex-start;
	margin-top: 60px;
}

.staff .inner .btn-box{
	margin-top: 40px;
}

.staff img{
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

.balloon1-left {
	text-align: left;
	max-width: 770px;
	width: 100%;
	position: relative;
	display: inline-block;
	color: #333;
	font-size: 16px;
	background: #e4f8ff;
	padding: 25px;
	border-radius: 10px;
	box-shadow: 7px 11px 21px -8px rgba(0,0,0,0.2);
}

.flex:nth-of-type(1) .balloon1-left,
.flex:nth-of-type(2) .balloon1-left {
	background: #ffebf5;
	box-shadow: 7px 11px 21px -8px rgba(0,0,0,0.2);
}

.balloon1-left .ttl{
	border-bottom: 2px dotted #023894;
	font-size: 26px;
	font-weight: bold;
	margin-bottom: 20px;
}
	.balloon1-left .ttl span{
		font-size: 16px;
		font-weight: normal;
		padding-left: 10px;
	}

.balloon1-left:before {
  content: "";
  position: absolute;
  top: 33%;
  left: -30px;
  margin-top: -15px;
  border: 15px solid transparent;
  border-right: 15px solid #e4f8ff;
}
.flex:nth-of-type(1) .balloon1-left:before,
.flex:nth-of-type(2) .balloon1-left:before {
  content: "";
  position: absolute;
  top: 33%;
  left: -30px;
  margin-top: -15px;
  border: 15px solid transparent;
  border-right: 15px solid #ffebf5;
}

.balloon1-left p {
  margin: 0;
  padding: 0;
}



/*安心のうれしい声多数*/
.welfare .inner {
	max-width: 950px;
	margin: 0 auto 100px;
}

.welfare .flex {
	margin: 40px auto ;
	align-items: flex-start;
}
.welfare .flex > div {
	width: 48%;
}

.welfare_box{
	margin-bottom: 60px;
	background: #ffffe0;
	border: 4px dashed #023894;
	padding: 40px 20px 20px;
}

.welfare_box .ttl{
	width: 50%;
	margin: 0 auto 20px;
}

.welfare_box ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.welfare_box ul li{
	width: 30%;
	margin-bottom: 10px;
}
.welfare_box ul li span{
	display: block;
	font-weight: bold;
	font-size: 16px;
	margin-top: 10px;
}

/*よくある質問Q&A*/
.qa{
	background: #ffffe0;
	padding: 60px 0;
	transform: skewY(-5deg);
	margin-bottom: 0;
}

.qa .inner{
	max-width: 950px;
	margin: 0 auto 30px;
	transform: skewY(5deg);
}

.acdn-faq
{
	margin: 1.5em 0 0 ;
}

.acdn-faq dt ,
.acdn-faq dd{
	margin-bottom: 20px;
	padding: 10px ;
	font-size: 18px;
}

.acdn-faq dt:hover
{
	cursor: pointer ;
}

.acdn-faq dt{
	font-weight: 700 ;
	background: #023894;
	color:#fff;
	text-align: left;
	position: relative;
	line-height: 1.5;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.acdn-faq dt.on{
	margin-bottom: 0;
}
.acdn-faq dt:after{
	content: "\f067";
	font-family: 'FontAwesome';
}
.acdn-faq dt.on:after{
	content: "\f068";
	font-family: 'FontAwesome';
}

.acdn-faq dd{
	text-align: left;
	background: #fff;
	display: none ;
	padding: 12px 1.5em 1.5em 1.5em;
	line-height: 1.6;
}


.hd03 {
	font-size: 32px;
	font-weight: bold;
	color: #023894;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	text-align: center;
	padding: 0;
	margin-bottom: 40px;
}

	.hd03:before{
		content: "";
		background: url("../img/hd_line03.png") no-repeat top center;
		display: inline-block;
		width: 35px;
		height: 57px;
		background-size: contain;
		padding-right: 20px;
	}
	.hd03:after{
		content: "";
		background: url("../img/hd_line04.png") no-repeat top center;
		display: inline-block;
		width: 35px;
		height: 57px;
		background-size: contain;
		padding-left: 20px;
	}

	.hd03 span{
		font-weight: bold;
		line-height: 1.6;
	}

.sec04{
	margin-top: 100px;
	margin-bottom: 80px;
}

	.stickynav_inner{
		justify-content: space-between;
		background: rgba(0, 0, 0, 0.6);
		position: fixed;
		top: 225px;
		right: 0;
		z-index: 999;
		padding: 10px;

	}

	.stickynav_inner li{
		background: #39f;
		border-radius: 5px;
		writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		text-orientation: upright;
		height: 14em;
		width: 60px;
		margin-bottom: 10px;
	}
	.stickynav_inner li:last-child{
		margin-bottom: 0;
	}

	.stickynav_inner li a{
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 20px 10px;
		width: 100%;
		height: 100%;
		font-size: 17px;
		text-decoration: none;
		text-align: left;
		color: #fff;
		font-weight: bold;
	}

	.stickynav_inner li a:hover{
		opacity: 0.8;
	}

	.stickynav_inner li a:before{
		font-family: 'FontAwesome';
		content: "\f002";
		display: inline-block;
		padding-bottom: 5px;
		font-size: 16px;
	}

	.stickynav_inner li:nth-child(2){
		border-left: 0;
		background: #fa7e19;
		line-height: 1.2;
	}
	.stickynav_inner li:nth-child(2) a:before{
		font-family: 'FontAwesome';
		content: "\f10b";
		display: inline-block;
		padding-bottom: 7px;
		font-size: 32px;
		line-height: 1;
	}


.fluffy {
	animation: fluffy1 3s ease infinite;
	margin-bottom: 15px;
}

@keyframes fluffy1 {
  0% { transform:translateY(0) }
  5% { transform:translateY(0) }
  10% { transform:translateY(0) }
  20% { transform:translateY(-15px) }
  25% { transform:translateY(0) }
  30% { transform:translateY(-15px) }
  50% { transform:translateY(0) }
  100% { transform:translateY(0) }
}

@media screen and (max-width: 1075px) {

	.mainvisual_area .inner{
		background-size: 30%;
		padding: 27px;
	}

	.hd01 span span.ttl{
		font-size: 9vw;
	}

	.hd01 span .ttl span.ttl02{
		font-size: 7vw;
	}
	.hd01 span{
		font-size: 6vw;
	}
	.mainvisual_area .inner p{
		font-size: 4vw;
	}

	.sec01 .flex .point_box{
		margin: 0 20px;
		padding: 10px;
	}
}

@media screen and (max-width: 950px) {
	.mainScroll{
		display: none;
	}


	.contentsBlock{
		padding: 0 10px;
	}

	.mainvisual_area{
		min-height: 490px;
	}

	.mainvisual_area .inner{
		position: relative;
		min-height: 490px;
	}

	.more_btn{
		width: 100%;
		position: absolute;
		bottom: 16px;
		left: 50%;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateX(-50%);
	}

	.countermeasures{
		padding: 60px 10px 0;
	}
	.countermeasures .inner ul li{
		padding-right: 10px;
		margin: 0;
	}
	.countermeasures .inner ul li:last-child{
		padding-right: 0;
	}

	.staff{
		padding: 0 20px 20px;
	}

	.staff .flex

	.balloon1-left,
	.balloon1-right{
		max-width: 700px;
		width: 78%;
	}

	.balloon1-left{
		margin-left: 30px;
	}
	.balloon1-right{
		margin-right: 30px;
	}
}

@media screen and (max-width: 845px) {
	.welfare .inner{
		padding: 0 10px;
		margin-bottom: 60px;
	}

	.qa{
		padding: 50px 0 20px;
	}

	.qa .inner{
		padding: 40px 10px;
	}

	.staff .inner{
		padding: 60px 10px;
	}

	.countermeasures .inner{
		padding: 60px 0 0;
	}
}

@media screen and (max-width: 800px) {
	.hd01 span span.ttl{
		font-size: 10vw;
	}

	.hd01 span .ttl span.ttl02{
		font-size: 8vw;
	}

	.hd01 span{
		font-size: 6vw;
	}

	.mainvisual_area .inner p{
		font-size: 4vw;
	}

	.recruit-btn img{
		width: 80%;
	}
}

@media screen and (max-width: 768px) {
	/*6つの魅力簡単・早い・安心*/
	.point_box .point_ttl{
		line-height: 1.4;
		font-size: 22px;
	}

	.point_box .point_ttl span {
		font-size: 18px;
		padding-left: 0;
	}

	.sec01 .flex{
		margin-bottom: 40px;
	}

	.hd02{
		font-size: 28px;
	}

	/*横追従*/
	.stickynav_inner{
		display: flex !important;
		justify-content: space-between;
		background: rgba(0, 0, 0, 0.6);
		position: fixed;
		top: inherit;
		bottom: 0;
		width: 100%;
		z-index: 999;
		padding: 10px;
	}

	.stickynav_inner li{
		width: 49%;
		height: auto;
		background: #39f;
		border-radius: 5px;
		writing-mode: inherit;
		text-orientation: inherit;
		margin-bottom: 0;
	}

	.stickynav_inner li a{
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 10px;
		height: 100%;
		font-size: 17px;
		text-decoration: none;
		text-align: left;
		color: #fff;
		font-weight: bold;
	}

	.stickynav_inner li a:before{
		font-family: 'FontAwesome';
		content: "\f002";
		display: inline-block;
		padding-right: 5px;
		font-size: 16px;
	}

	.stickynav_inner li:nth-child(2){
		border-left: 0;
		background: #fa7e19;
		line-height: 1.2;
	}
	.stickynav_inner li:nth-child(2) a:before{
		font-family: 'FontAwesome';
		content: "\f10b";
		display: inline-block;
		padding-right: 7px;
		font-size: 32px;
		line-height: 1;
	}

	.welfare_box ul{
		justify-content: space-between;
	}

}

@media screen and (min-width:560px) and (max-width:710px) {
	.hd04{
		font-size: 3.5vw;
	}
}


@media screen and (max-width: 580px) {
	.sec01 .subttl{
		font-size: 18px;
	}

	.mainvisual_area,
	.mainvisual_area .inner{
		min-height: 420px;
	}

	.hd01::before,
	.hd01::after{
		width: 47px;
		height: 78px;
	}

	.hd02{
		font-size: 24px;
	}

	.hd02 span{
		font-size: 38px;
	}
	.sec01 .inner .flex:nth-child(even) .point_box,
	.sec01 .inner .flex:nth-child(odd) .point_box{
		margin: 0;
	}

	.sec01 > .inner{
		padding: 15px;
	}
	.sec01 > .inner .hd02{
		margin-bottom: 0;
		font-size: 16px;
		letter-spacing: -1px;
	}

	.sec01 .flex figure{
		padding: 0 0 20px;
	}

	.point_box .point_ttl{
		font-size: 15px;
	}
	.point_box .txt_r{
		font-size: 13px;
	}
		.point_box .point_ttl span{
			font-size: 14px;
			display: block;
		}

	.hotken_area .hotken-img{
		width: 30%;
	}

	.hotken_area .lead-txt{
		font-size: 16px;
	}

	.hotken_area .lead-txt span{
		font-size: 22px;
	}

	.hd04{
		font-size: 22px;
		text-align: center;
		padding: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		line-height: 1.4;
	}
	.hd04:before{
		content: "";
		background: url("../img/hd_line03.png") no-repeat top center;
		display: inline-block;
		width: 35px;
		height: 57px;
		background-size: contain;
		padding-right: 20px;
		vertical-align: middle;
	}
	.hd04:after{
		content: "";
		background: url("../img/hd_line04.png") no-repeat top center;
		display: inline-block;
		width: 35px;
		height: 57px;
		background-size: contain;
		padding-right: 20px;
		padding-left: 0;
		vertical-align: middle;
	}

	.more_btn02 a,
	.more_btn03 a{
		font-size: 15px;
	}


	/*安心のうれしい声多数*/
	.welfare .flex{
		display: block;
		margin: 20px auto;
	}

	.welfare .flex > div{
		width: 100%;
		margin-bottom: 20px;
	}

	.welfare_box{
		padding: 20px;
	}

	.welfare_box .ttl{
		width: 100%;
	}

	.welfare_box ul{
		justify-content: space-between;
	}

	.welfare_box ul li span{
		font-size: 12px;
	}

	.btn-box p{
		font-size: 18px;
	}

	/*よくある質問Q&A*/
	.qa .inner{
		padding: 0 10px;
	}

	/*派遣スタッフさんの声*/
	.staff{
		padding: 0 10px;
	}


	.staff .inner{
		padding: 40px 0 20px;
	}

	.staff .inner .flex{
		margin-top: 20px;
	}

	.staff .inner .flex figure{
		margin-bottom: 20px;
		width: 30%;
		padding-right: 15px;
	}
	.staff .inner .flex:last-child{
		display: flex;
		flex-direction: column-reverse;
		align-items: center;
		margin-top: 40px;
	}

	.balloon1-left p{
		font-size: 14px;
		line-height: 1.6;
	}

	.staff .flex .balloon1-left,
	.balloon1-right{
		width: 100%;
		margin: 0;
		padding: 10px;
	}

	.balloon1-left .ttl,
	.balloon1-right .ttl{
		font-size: 18px;
	}

	.balloon1-left .ttl span,
	.balloon1-right .ttl span{
		font-size: 14px;
	}

	.hd03{
		font-size: 24px;
	}

	.recruit-btn img{
		width: 100%;
	}
}

@media screen and (max-width: 478px) {
	.sec01_bg .bg01{
		position: absolute;
		top: 10%;
		left: 2%;
	}

	.sec01_bg .bg02{
		width: 37%;
		right: 0;
	}

	.sec01_bg .bg03{
		width: 27%;
		bottom: 51%;
		left: 6%;
	}

	.sec01_bg .bg04{
		bottom: 27%;
		left: 6%;
	}

	.mainvisual_area{
		min-height: 320px;
	}

	.mainvisual_area .inner{
		padding-top: 25px;
		background-size: 34%;
		min-height: 390px;
	}

	.mainvisual_area .inner p{
		font-size: 17px;
	}

	.hd01{
		font-size: 16px;
		margin-bottom: 20px;
	}

	.hd01 span span.ttl{
		font-size: 44px;
	}

	.hd01 span .ttl span.ttl02{
		font-size: 32px;
	}

	.hd01 span span{
		font-size: 25px;
	}

	.more_btn{
		width: 88%;
	}
		.more_btn a{
			font-size: 15px;
		}

	.sec01{
		padding: 40px 0 20px;
	}

	.sec01 > .inner{
		padding: 15px 10px;
	}

	.sec01 .subttl{
		font-size: 22px;
		letter-spacing: -1.6px;
		line-height: 1.6;
		margin-bottom: 10px;
	}

	.sec01 .subttl span{
		font-size: 22px;
	}

	.sec01 .flex .point_box::after{
		width: 54px;
		height: 12px;
		background-size: contain;
		top: -7px;
	}


	.hd02{
		font-size: 22px;
		line-height: 1.4;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 20px;
	}

	.hd02 span{
		font-size: 40px;
	}

	.sec01 .flex figure{
		width: 40%;
		margin: 0 auto;
	}

	.sec04{
		margin-top: 60px;
	}

	.countermeasures .hd02 .spStyle,
	#jobinfo .hd03 .spStyle{
		display: none;
	}

}

@media screen and (max-width: 353px) {
	.more_btn a,
	.more_btn02 a,
	.more_btn03 a{
		font-size: 13px;
	}

	.stickynav_inner li a{
		font-size: 14px;
	}
}

@media screen and (max-width: 340px) {
	header .header_right p span a{
		font-size: 20px;
	}

	header .header_right p{
		font-size: 11px;
	}

	.mainvisual_area .inner p{
		font-size: 18px;
	}

	.hd01{
		margin-bottom: 14px;
	}

	.sec01 .subttl{
		font-size: 18px;
	}

	.sec01 > .inner .hd02{
		font-size: 15px;
	}

	.point_box .point_ttl{
		font-size: 14px;
	}

	.point_box .point_ttl span{
		font-size: 13px;
	}

	.hotken_area .lead-txt{
		font-size: 14px;
	}

	.hotken_area .lead-txt span{
		font-size: 18px;
	}

	.welfare_box{
		padding: 20px 10px;
	}
		.welfare_box ul li{
			width: 31%;
		}

}
