@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&family=Roboto:wght@300;700;900&display=swap');

/*== resetCSS ========*/

html,  body,  div,  dl,  dt,  dd,  ul,  ol,  li,  h1,  h2,  h3,  h4,  h5,  h6,  pre,  form,  fieldset,  input,  textarea,  p,  blockquote,  th,  td , header , footer , article , nav {
	margin:0;
	padding:0;
	word-wrap:break-word;
	overflow-wrap:break-word;
	box-sizing:border-box;
}
table{
	border-collapse:collapse;
	border-spacing:0;
	border:0;
}
img {border:0;}
address,  caption,  cite,  code,  dfn,  em,  th,  var {
	font-style:normal;
	font-weight:normal;
}
strong,  em {
	font-weight:bold;
	font-size:14px;
}
ol,  ul {list-style:none;}
h1,  h2,  h3,  h4,  h5,  h6 {
	font-size:100%;
	font-weight:normal;
}
abbr,  acronym {border:0;}
img {vertical-align:top;}
a {
	color:#000;
	text-decoration:none;
	outline:none;
}
a:link,  a:visited {
	color:#000;
}
a:hover {
	color:#000;
}

/*== body ========*/

body {
	background:#FFF;
	color:#000;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size:13px;
	font-feature-settings: "palt";
	line-height:150%;
	text-align:left;
	margin:0;
}
@media only screen and (min-width: 751px){ /* for PC */
  html,body{
    min-width: 1280px;
		font-size: 16px;
  }
}
@media (max-width: 750px) { /* forSP */
  html,body{
		min-width: 320px;
		font-size: 4.2vw;
  }
}

/*== all-wrap ========*/
.all-wrap{
	display: block;
}
@media only screen and (min-width: 751px){ /* for PC */
	.all-wrap{
		margin-top: 80px;
	}
}
@media (max-width: 750px) { /* forSP */
	.all-wrap{
		margin-top: 16vw;
	}
}

/*== header ========*/
header{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: 100%;
	height: 80px;
	background: #FFF;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
}
header #siteLogo{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	width: calc(100% - 840px);
	height: 100%;
	padding-left: 40px;
	border-top: #4fbe00 solid 4px;
}
header #siteLogo img{
	display: block;
	width: 260px;
	max-width: 100%;
	margin-bottom: 5px;
}
header #navWrap::before{
	content: "";
	width: 110px;
	height: 100%;
	position: absolute;
	left: -64px;
	top: 0;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22110px%22%20height%3D%2280px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(79%2C%20190%2C%200)%22%20d%3D%22M8.594%2C3.999%20L8.594%2C3.999%20C16.158%2C3.999%2022.914%2C8.725%2025.511%2C15.828%20L44.617%2C68.323%20C47.169%2C75.333%2053.832%2C79.999%2061.292%2C79.999%20L109.589%2C79.999%20L109.589%2C0.0%20L0.0%2C0.0%20L0.0%2C3.999%20L8.594%2C3.999%20Z%22%2F%3E%3C%2Fsvg%3E');
	z-index: 10;
}
header #navWrap{
	display: block;
	width: calc(910px - 180px);
	height: 100%;
	background: #4fbe00;
	position: relative;
}
header #navWrap nav{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 15;
}
header #navWrap nav ul#mainNav{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	height: 100%;
	gap: 3px;
	padding-top: 2px;
	margin-left: 4px;
	margin-right: 12px;
}
header #navWrap nav ul li{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	height: 100%;
}
header #navWrap nav ul#mainNav li a{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	color: #FFF;
	padding-left: 10px; 
	padding-right: 15px; 
	padding-bottom: 2px;
	font-size: 0.9375rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.08em;
	box-sizing: border-box;
}
header #navWrap nav ul#mainNav li a svg{
	height: auto;
}
header #navWrap nav ul#mainNav li a svg{
	width: 12px;
	margin-top: 1px;
	margin-right: 8px;
}
header #navWrap nav ul#mainNav li.company a svg{
	width: 15px;
	margin-right: 7px;
}
header #navWrap nav ul#mainNav li.recruit a svg{
	width: 15px;
	margin-right: 7px;
}
header #navWrap nav ul#mainNav li.contact a svg{
	width: 19px;
	margin-top: 2px;
	margin-right: 6px;
}
header #navWrap nav ul#mainNav li a svg path{
	fill: #FFF;
}
header #subNav{
	display: inline-flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	height: 100%;
	gap: 26px;
	padding-top: 2px;
}
header #subNav li.search{
	display: block;
	width: 21px;
	height: 21px;
	cursor: pointer;
}
header #subNav li.fb a{
	display: block;
	width: 25px;
	height: 25px;
	background: #1877f2;
	border-radius: 50%;
}
header #subNav li.fb a img{
	width: 25px;
	height: 25px;
	border-radius: 50%;
}
header #groupLogo img{
	width: 95px;
	z-index: 15;
}
header #recruitNav{
	display: inline-flex;
	flex-flow: column wrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin-left: auto;
	margin-right: 19px;
}
header #recruitNav li a{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	width: 147px;
	height: 34px;
	font-size: 0.875rem;
	color: #FFF;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.05em;
	position: relative;
}
header #recruitNav li:nth-child(1){
	margin-bottom: 4px;
	margin-left: -14px;
}
header #recruitNav li a::before{
	content: "";
	display: block;
	width: inherit;
	height: inherit;
	border-radius: 6px;
	position: absolute;
	top: 0;
	left: 0;
	transform: skewX(20deg);
	z-index: 10;
}
header #recruitNav li:nth-child(1) a::before{
	background: #ff807d;
	border-radius: 6px 12px 6px 6px;
}
header #recruitNav li:nth-child(2) a::before{
	background: #feac4d;
}
header #recruitNav li a span{
	position: relative;
	padding-left: 0.5em;
	z-index: 15;
}
header #groupLogo{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	width: 110px;
	height: 100%;
	background: #FFF;
	border-bottom: #4fbe00 solid 4px;
	position: relative;
}
header #groupLogo::before{
	content: "";
	display: block;
	width: 56px;
	height: 76px;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2256px%22%20height%3D%2276px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(255%2C%20255%2C%20255)%22%20d%3D%22M52.694%2C75.999%20C45.130%2C75.999%2038.374%2C71.273%2035.777%2C64.170%20L16.671%2C11.675%20C14.120%2C4.666%207.458%2C0.1%200.0%2C0.0%20L0.0%2C0.0%20L56.0%2C0.0%20L56.0%2C75.999%20L52.694%2C75.999%20Z%22%2F%3E%3C%2Fsvg%3E');
	position: absolute;
	top: 0;
	left: -48px;
	z-index: 10;
}
header #groupLogo a{
	display: block;
	z-index: 15;
	margin-top: 10px;
}
@media (min-width: 751px) { /* forPC */
	header{
		min-width: 1280px;
	}
	header #siteLogo a:hover{
		opacity: 0.65;
		transition:all 0.3s ease;
	}
	header #navWrap nav ul#mainNav li a{
		transition:all 0.3s ease;
	}
	header #navWrap nav ul#mainNav li a:hover{
		color: #222;
		transition:all 0.3s ease;
	}
	header #navWrap nav ul#mainNav li a svg path{
		transition:all 0.3s ease;
	}
	header #navWrap nav ul#mainNav li a:hover svg path{
		fill: #222;
		transition:all 0.3s ease;
	}
	header #subNav li.fb a:hover{
		box-shadow: 0 4px 6px rgba(0,0,0,0.2);
		transition:all 0.2s ease;
	}
	header #subNav li.search svg path{
		transition:all 0.2s ease;
	}
	header #subNav li.search svg:hover path{
		fill: #222;
		transition:all 0.2s ease;
	}
	header #recruitNav li:nth-child(1) a:hover::before{
		background: #fe5454;
		transition:all 0.3s ease;
	}
	header #recruitNav li:nth-child(2) a:hover::before{
		background: #ffcc00;
		transition:all 0.3s ease;
	}
	header #groupLogo a:hover{
		opacity: 0.65;
		transition:all 0.3s ease;
	}
	header #spNavKey,
	#spNavWrap,
	#spnavBottom{
		display: none;
	}
}
@media (max-width: 750px) { /* forSP */
	header{
		height: 17vw;
		flex-flow: row nowrap;
		min-width: auto;
		box-sizing: border-box;
	}
	header #siteLogo{
		width: 75vw;
		padding-left: 5vw;
		border-top: #4fbe00 solid 1.3vw;
	}
	header #siteLogo img{
		width: 62vw;
		margin-bottom: 0;
	}
	header #navWrap,
	header #groupLogo{
		display: none;
	}
	header #spNavKey{
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
		align-items: center;
		color: #FFF;
		font-size: 0.8125rem;
		font-weight: 700;
		font-family: 'Roboto', sans-serif;
		letter-spacing: 0.05em;
		width: 25vw;
		height: 17vw;
		padding-left: 7vw;
		cursor: pointer;
		background-repeat: no-repeat;
		background-size: 100% 100%;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22185px%22%20height%3D%22124px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(79%2C%20190%2C%200)%22%20d%3D%22M185.0%2C123.999%20L81.999%2C123.999%20C70.436%2C123.999%2060.113%2C117.85%2056.157%2C106.219%20L26.543%2C26.852%20C22.518%2C15.842%2011.724%2C8.999%200.0%2C8.999%20L0.0%2C8.999%20L0.0%2C0.0%20L185.0%2C0.0%20L185.0%2C123.999%20Z%22%2F%3E%3C%2Fsvg%3E');
	}
	#spNavWrap{
		display: none;
		width: 100%;
		background: #FFF;
		padding: 5vw 5vw;
		position: fixed;
		top: 17vw;
		left: 0;
		z-index: 15;
		box-sizing: border-box;
		box-shadow: 0 4px 6px rgba(0,0,0,0.15);
	}
	#spNavWrap ul.top{
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
		align-items: center;
		border-bottom: #CCC solid 1px;
		gap: 0 4%;
		margin-bottom: 8.5vw;
	}
	#spNavWrap ul.top li{
		font-weight: 700;
		width: 30%;
		text-align: center;
	}
	#spNavWrap ul.top li a{
		display: block;
		padding: 22vw 0 5.5vw 0;
		box-sizing: border-box;
	}
	#spNavWrap ul.top li.service a{
		background: url(/common/images/nav_icon1_sp.png) no-repeat center top 4.5vw / 10vw auto;
	}
	#spNavWrap ul.top li.company a{
		background: url(/common/images/nav_icon2_sp.png) no-repeat center top 4.8vw / 12vw auto;
	}
	#spNavWrap ul.top li.recruit a{
		background: url(/common/images/nav_icon3_sp.png) no-repeat center top 5vw / 12vw auto;
	}
	#spNavWrap ul.miniNav{
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
		align-items: center;
		font-size: 0.75rem;
		letter-spacing: 0.15em;
		line-height: 100%;
		margin-bottom: 3vw;
	}
	#spNavWrap ul.miniNav li a{
		display: block;
		padding: 0 0.5em;
	}
	#spNavWrap ul.miniNav li:not(:first-child) a{
		border-left: #000 solid 1px;
	}
	#spNavWrap .fb{
		display: block;
		text-align: center;
	}
	#spNavWrap .fb a{
		display: block;
		width: 13vw;
		height: 13vw;
		border-radius: 50%;
		background: #1877f2;
		margin: 10vw auto;
	}
	#spNavWrap .fb a img{
		width: 100%;
	}
	#spNavWrap .groupLogoSp{
		display: block;
		text-align: center;
		margin-top: 9vw;
		margin-bottom: 9vw;
	}
	#spNavWrap .groupLogoSp img{
		width: 40vw;
	}
	#spNavWrap .copyright{
		display: block;
		color: #666666;
		width: 100%;
		font-size: 0.75rem;
		max-width: 1176px;
		margin: 0 auto;
		letter-spacing: 0.12em;
		font-family: 'Roboto', sans-serif;
	}
	#spnavBottom{
		display: block;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 15;
	}
	#spnavBottom ul{
		display: flex;
		flex-flow: row nowrap;
		justify-content: center;
		align-items: center;
	}
	#spnavBottom li{
		height: 13vw;
	}
	#spnavBottom li:nth-child(1){
		display: block;
		width: 41vw;
	}
	#spnavBottom li:nth-child(1) a{
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
		align-items: center;
		height: inherit;
		text-align: center;
		padding: 2vw 5vw 2vw 2vw;
		background: #ff807d;
		color: #FFF;
		font-weight: 700;
		font-size: 0.9375rem;
		letter-spacing: 0.1em;
		position: relative;
		box-sizing: border-box;
	}
	#spnavBottom li:nth-child(2){
		display: block;
		width: 41vw;
	}
	#spnavBottom li:nth-child(2) a{
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
		align-items: center;
		height: inherit;
		text-align: center;
		padding: 2vw;
		background: #feac4e;
		color: #FFF;
		font-weight: 700;
		font-size: 0.9375rem;
		letter-spacing: 0.1em;
		position: relative;
		box-sizing: border-box;
	}
	#spnavBottom li:nth-child(2) a::before{
		content: "";
		width: 3vw;
		height: 13vw;
		background: #feac4e;
		position: absolute;
		top: 0;
		left: -3vw;
		z-index: 16;
		clip-path: polygon(0 0, calc(100% + 1vw) 0, 100% 100%, 100% 100%);
	}
	#spnavBottom li:nth-child(2) a::after{
		content: "";
		width: 3vw;
		height: 13vw;
		background: #feac4e;
		position: absolute;
		top: 0;
		right: -3vw;
		z-index: 16;
		clip-path: polygon(0 0, 0 0, 100% 100%, 0 100%);
	}
	#spnavBottom li:nth-child(3){
		display: flex;
		flex-flow: column wrap;
		justify-content: center;
		align-items: center;
		width: 18vw;
		height: 13vw;
		color: #FFF;
		padding: 1.2vw 2vw 1.2vw 5vw;
		font-weight: 700;
		font-size: 0.75rem;
		background: #262424;
		line-height: 100%;
		position: relative;
		cursor: pointer;
	}
	#spnavBottom li:nth-child(3) i{
		display: block;
		width: 4vw;
		height: 4vw;
		margin-bottom: 1vw;
		background: url(/common/images/icon_search.svg) no-repeat center center / contain;
	}
}

/*== footer ========*/
footer{
	display: block;
	background: #202c2c;
	position: relative;
}
footer #pageTop{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	opacity: 0;
	width: 60px;
	height: 60px;
	background: rgba(0,0,0,0.8);
	border-radius: 10px;
	position: fixed;
	bottom: 40px;
	right: 40px;
	cursor: pointer;
}
footer #pageTop img{
	display: block;
	width: 15px;
}
footer #copyArea{
	display: block;
	width: 100%;
	max-width: 1176px;
	color: #cccccc;
	font-size: 0.75rem;
	line-height: 180%;
	padding: 65px 0;
	margin: 0 auto;
	letter-spacing: 0.08em;
}
footer #copyArea p{
	line-height: inherit;
}
footer #linkArea{
	display: block;
	width: 100%;
	background: #f4f4f4;
	padding: 35px 0 27px 0;
	font-size: 0.75rem;
}
footer #linkArea ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 14px;
}
footer #linkArea ul li{
	display: block;
	line-height: 100%;
	border-right: #666 solid 1px;
	padding: 0 10px 2px 10px;
}
footer #linkArea ul li:first-child{
	padding-left: 0;
}
footer #linkArea ul li:last-child{
	padding-right: 0;
	border-right: none;
}
footer #linkArea ul li a{
	display: block;
	color: #666666;
	letter-spacing: 0.1em;
}
footer #linkArea ul li.service a{
	background: url(/nav_icon1.png) no-repeat left  center / 12px auto;
}
footer #linkArea ul li.company a{
	background: url(/nav_icon2.png) no-repeat left  center / 15px auto;
}
footer #linkArea ul li.recruit a{
	background: url(/nav_icon3.png) no-repeat left  center / 15px auto;
}
footer #linkArea ul li.contact a{
	background: url(/nav_icon4.png) no-repeat left  center / 19px auto;
}
footer #linkArea small{
	display: block;
	color: #666666;
	width: 100%;
	font-size: 0.75rem;
	max-width: 1176px;
	margin: 0 auto;
	letter-spacing: 0.12em;
	font-family: 'Roboto', sans-serif;
}

@media (min-width: 751px) { /* forPC */
	footer #linkArea ul li a:hover{
		text-decoration: underline;
	}
	footer #pageTop{
		transition:all 0.3s ease;
	}
	footer #pageTop:hover{
		background: rgba(0,0,0,1);
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	footer #pageTop{
		width: 12vw;
		height: 12vw;
		bottom: 16vw;
		right: 4vw;
	}
	footer #copyArea{
		line-height: 180%;
		padding: 10vw 5vw 15vw 5vw;
	}
	footer #linkArea{
		padding: 10vw 5vw 20vw 5vw;
	}
	footer #linkArea ul{
		gap: 3vw 0;
		margin-bottom: 0;
	}
	footer #linkArea ul li:nth-child(3){
		padding-left: 0;
	}
	footer #linkArea small{
		display: none;
	}
}

/*== search modal ========*/
#searchModal{
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
#searchModal .modalBg{
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.8);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
#searchModal .modalCloseKey{
	position: fixed;
	top: 30px;
	right: 30px;
	color: rgba(255,255,255,0.8);
	font-size: 60px;
	z-index: 105;
	cursor: pointer;
}
#searchModal .modalCont{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100px;
	position: fixed;
	top: calc(50% - 50px);
	left: 0;
	z-index: 105;
}
#searchModal .modalCont strong{
	display: block;
	width: 100%;
	color: #FFF;
	font-weight: normal;
	font-size: 1.125rem;
	text-align: center;
	margin-bottom: 20px;
}
#searchModal .modalCont #___gcse_0{
	display: block;
	width: 100%;
	max-width: 640px;
	margin: 0 auto;
}
#searchModal .modalCont table.gsc-search-box td.gsc-input{
	padding-right: 0;
}
#searchModal .modalCont #___gcse_0 .gsc-input-box{
	height: 50px;
	font-size: 1.6rem;
	padding: 8px 8px 8px 10px;
	border-radius: 10px 0 0 10px;
	border: none;
	box-sizing: border-box;
}
#searchModal .modalCont #___gcse_0 .gsc-search-button button{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	margin-left: 0;
	height: 50px;
	padding: 6px 15px;
	background: #222;
	border: none;
	border-radius: 0 10px 10px 0;
	cursor: pointer;
}
#searchModal .modalCont #___gcse_0 .gsc-search-button-v2 svg{
	fill: #049b32;
	width: 22px;
	height: 22px;
}
#searchModal .modalCont #___gcse_0 #gsc-i-id1{
	background: none !important;
}
@media (min-width: 751px) { /* forPC */
}
@media (max-width: 750px) { /* forSP */
	#searchModal .modalCont #___gcse_0{
		max-width: 90vw;
	}
}

/*== main ========*/
main{
	display: block;
	margin: 0 auto 100px auto;
	width: 100%;
}
@media (min-width: 751px) { /* forPC */
}
@media (max-width: 750px) { /* forSP */
	main{
		margin-bottom: 30vw;
	}
}

/*== TOPページ ========*/
/* main */
.all-wrap.top main{
	max-width: 1176px;
}
/* 共通項目 */
.all-wrap.top .rotateTitle{
	display: block;
	width: 68px;
	margin-right: 32px;
	position: relative;
}
.all-wrap.top .rotateTitle .rotate{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	height: 68px;
	transform:rotate(90deg);
	transform-origin: left bottom;
	position: absolute;
	top: -68px;

	left: 0;
}
.all-wrap.top .rotateTitle .rotate h2{
	display: block;
	text-align: center;
	font-size: 2.25rem;
	font-weight: 900;
	font-family: 'Roboto', sans-serif;
	color: #FFF;
	letter-spacing: 0.05em;
	padding-top: 3px;
}
.all-wrap.top .rotateTitle .rotate small{
	display: block;
	font-size: 0.9375rem;
	font-weight: 700;
	padding-left: 10px;
	letter-spacing: 0.05em;
}
.all-wrap.top .moreBtn{
	display: block;
	width: 100%;
	text-align: right;
	font-size: 0.9375rem;
}
.all-wrap.top .moreBtn a{
	display: inline-block;
	padding-right: 20px;
	position: relative;
	letter-spacing: 0.1em;
}
.all-wrap.top .moreBtn a::after{
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	background: url(/common/images/arrow_green.png) no-repeat center center /12px auto;
	position: absolute;
	top: 8px;
	right: 0;
}
/* mainvisual */
section#mainVisual{
	margin-bottom: 60px;
}
section#mainVisual .slider{
	display: block;
	width: 100%;
}
section#mainVisual .slider .slide-arrow{
	display: block;
	width: 52px;
	height: 52px;
	position: absolute;
	top: 50%;
	margin-top: -50px;
	z-index: 5;
	cursor: pointer;
}
section#mainVisual .slider .slide-arrow.slick-next{
	background: url(/common/images/arrow_next.png) no-repeat rgba(0,0,0,0.8) center center;
	right: 0;
}
section#mainVisual .slider .slide-arrow.slick-prev{
	background: url(/common/images/arrow_prev.png) no-repeat rgba(0,0,0,0.8) center center;
	left: 0;
}
section#mainVisual .slider .slideParts{
	display: block;
	width: 100%;
	height: 600px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
section#mainVisual .slider .slideParts a{
	display: block;
	width: 100%;
	height: inherit;
}
section#mainVisual .slider .slick-dots{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin-top: 30px;
}
section#mainVisual .slider .slick-dots li{
	display: block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #CCC;
	cursor: pointer;
}
section#mainVisual .slider .slick-dots li.slick-active{
	background: #4fbe00;
}
section#mainVisual .slider .slick-dots li button{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	display: none;
	font-size: 0;
}

/* 重要なお知らせ */
section#top_important{
	margin-bottom: 50px;
}
section#top_important .importantList li{
	display: block;
	margin-bottom: 5px;
}
section#top_important .importantList li a{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	background: url(/common/images/arrow_red.png) no-repeat #fff2f2 right 23px center / 14px auto;
	color: #ff0000;
	border-radius: 10px;
	font-size: 0.9375rem;
	padding: 20px 20px 20px 20px;
}
section#top_important .importantList li a i{
	display: block;
	font-style: normal;
	color: #FFF;
	background: #e42626;
	border-radius: 4px;
	padding: 3px 14px;
	margin-right: 50px;
	letter-spacing: 0.08em;
}
section#top_important .importantList li a span{
	display: block;
	width: calc(100% - 190px);
	letter-spacing: 0.05em;
}

/* service */
section#top_service{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin-bottom: 50px;
}
section#top_service .rotateTitle{
	height: 520px;
	margin-top: 8px;
}
section#top_service .rotateTitle .rotate{
	width: 520px;
	background: url(/common/images/top/title_service.svg) no-repeat left center;
}
section#top_service .rotateTitle .rotate h2{
	width: 245px;
}
section#top_service .flexList{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: calc(100% - 100px);
	gap: 22px;
}
section#top_service .flexList li{
	display: block;
	width: 252px;
	height: 252px;
}
section#top_service .flexList li a{
	display: block;
	width: inherit;
	height: inherit;
	border: #333333 solid 4px;
	border-radius: 7px;
	box-sizing: border-box;
	overflow: hidden;
}
section#top_service .flexList li a img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}
section#top_service .moreBtn{
	margin-top: 30px;
}

/* company */
section#top_company{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin-bottom: 50px;
}
section#top_company .rotateTitle{
	height: 400px;
}
section#top_company .rotateTitle .rotate{
	width: 400px;
	background: url(/common/images/top/title_company.svg) no-repeat left center;
}
section#top_company .rotateTitle .rotate h2{
	width: 290px;
}
section#top_company .visualNav{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: calc(100% - 100px);
	height: 400px;
}
section#top_company .visualNav .visual{
	display: block;
	width: 700px;
	height: inherit;
	border-radius: 15px 0 0 15px;
	background: url(/common/images/top/img_company.jpg) no-repeat left center / cover;
}
section#top_company .visualNav .bluebg{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
	align-items: center;
	width: calc(100% - 720px);
	height: inherit;
	border-radius: 0 15px 15px 0;
	background: #0080cc;
	position: relative;
}
section#top_company .visualNav .bluebg a{
	display: flex;
	flex-flow: column wrap;
	justify-content: flex-start;
	align-items: flex-start;
	color: #FFF;
	width: 350px;
	height: 240px;
	background: #000000;
	font-weight: 900;
	font-size: 1.75rem;
	line-height: 148%;
	border-radius: 15px 0 0 15px;
	padding: 40px 50px 0 50px;
	margin-right: -20px;
	position: relative;
	box-sizing: border-box;
}
section#top_company .visualNav .bluebg a::after{
	content: "";
	width: 16px;
	height: 16px;
	border: 16px solid transparent;
	border-right: 16px solid #333333;	
	box-sizing: border-box;
	position: absolute;
	right: 6px;
	bottom: -15px;
	transform:rotate(45deg);
	z-index: -1;
}
section#top_company .visualNav .bluebg a span{
	display: block;
	width: 100%;
	border-bottom: #FFF solid 1px;
	padding-bottom: 20px;
	letter-spacing: 0.08em;
}
section#top_company .visualNav .bluebg a i{
	display: block;
	width: 100%;
	height: 16px;
	position: relative;
	margin-top: 17px;
}
section#top_company .visualNav .bluebg a i::before{
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	background: url(/common/images/arrow_green16.png) no-repeat center center / 15px auto;
	position: absolute;
	top: 0;
	right: 0;
}

/* recruit */
section#top_recruit{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin-bottom: 50px;
}
section#top_recruit .rotateTitle{
	height: 400px;
}
section#top_recruit .rotateTitle .rotate{
	width: 400px;
	background: url(/common/images/top/title_recruit.svg) no-repeat left center;
}
section#top_recruit .rotateTitle .rotate h2{
	width: 270px;
}
section#top_recruit .visualNav{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: calc(100% - 100px);
	height: 400px;
}
section#top_recruit .visualNav .visual{
	display: block;
	width: 700px;
	height: inherit;
	border-radius: 15px 0 0 15px;
	background: url(/common/images/top/img_recruit.jpg) no-repeat left center / cover;
}
section#top_recruit .visualNav .bluebg{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
	align-items: center;
	width: calc(100% - 720px);
	height: inherit;
	border-radius: 0 15px 15px 0;
	background: #4fbe00;
	position: relative;
}
section#top_recruit .visualNav .bluebg a{
	display: flex;
	flex-flow: column wrap;
	justify-content: flex-start;
	align-items: flex-start;
	color: #FFF;
	width: 350px;
	height: 240px;
	background: #000000;
	font-weight: 900;
	font-size: 1.75rem;
	line-height: 148%;
	border-radius: 15px 0 0 15px;
	padding: 40px 50px 0 50px;
	margin-right: -20px;
	position: relative;
	box-sizing: border-box;
}
section#top_recruit .visualNav .bluebg a::after{
	content: "";
	width: 16px;
	height: 16px;
	border: 16px solid transparent;
	border-right: 16px solid #333333;	
	box-sizing: border-box;
	position: absolute;
	right: 6px;
	bottom: -15px;
	transform:rotate(45deg);
	z-index: -1;
}
section#top_recruit .visualNav .bluebg a span{
	display: block;
	width: 100%;
	border-bottom: #FFF solid 1px;
	padding-bottom: 20px;
	letter-spacing: 0.08em;
}
section#top_recruit .visualNav .bluebg a i{
	display: block;
	width: 100%;
	height: 16px;
	position: relative;
	margin-top: 17px;
}
section#top_recruit .visualNav .bluebg a i::before{
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background: url(/common/images/arrow_green16.png) no-repeat center center / 16px auto;
	position: absolute;
	top: 0;
	right: 0;
}

/* news */
section#top_news{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
section#top_news .rotateTitle{
	height: 390px;
}
section#top_news .rotateTitle .rotate{
	width: 390px;
	background: url(/common/images/top/title_news.svg) no-repeat left center;
}
section#top_news .rotateTitle .rotate h2{
	width: 220px;
}
section#top_news .newsList{
	display: block;
	width: calc(100% - 100px);
}
section#top_news .newsList li{
	display: block;
	margin-bottom: 5px;
}
section#top_news .newsList li a{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	background: url(/common/images/arrow_gray.png) no-repeat #FFF right 23px center / 14px auto;
	border-radius: 10px;
	font-size: 0.9375rem;
	padding: 20px 40px 20px 20px;
}
section#top_news .newsList li a i{
	display: block;
	width: 8em;
	border-radius: 4px;
	text-align: center;
	color: #FFF;
	font-style: normal;
	background: #fbbd2c;
	font-size: inherit; 
	margin-right: 20px;
	line-height: 100%;
	padding: 8px 5px;
	position: relative;
}
section#top_news .newsList li a i.cat_CS{
	background: #fbbd2c;
}
section#top_news .newsList li a i.cat_BUSINESS{
	background: #cd3680;
}
section#top_news .newsList li a i.cat_recruit{
	background: #4fbe00;
}
section#top_news .newsList li a i.cat_dev{
	background: #fbbd2c;
}
section#top_news .newsList li a i.cat_COMPANY{
	background: #0080cc;
}
section#top_news .newsList li a i.cat_others{
	background: #fbbd2c;
}
section#top_news .newsList li:nth-child(-n+3) a i::before{
	content: "NEW";
	display: block;
	width: 40px;
	height: 22px;
	text-align: center;
	line-height: 100%;
	font-size: 0.6875rem;
	color: #FFF;
	padding: 2px 0 0 0;
	position: absolute;
	left: -10px;
	top: -13px;
	background: url(/common/images/icon_new.png) no-repeat left top / 40px auto;
	box-sizing: border-box;
}
section#top_news .newsList li a time{
	margin-right: 20px;
	line-height: 180%;
	margin-top: 1px;
	letter-spacing: 0.1em;
}
section#top_news .newsList li a strong{
	display: block;
	width: calc(100% - 8em - 140px);
	font-size: inherit;
	font-weight: normal;
	line-height: 180%;
	margin-top: 1px;
	letter-spacing: 0.08em;
}
section#top_news .moreBtn{
	margin-top: 22px;
}
@media (min-width: 751px) { /* forPC */
	.all-wrap.top .moreBtn a:hover{
		text-decoration: underline;
	}
	.all-wrap.top .moreBtn a::after{
		transition:all 0.3s ease;
	}
	.all-wrap.top .moreBtn a:hover::after{
		transform:translateX(4px);
		transition:all 0.3s ease;
	}
	section#mainVisual .slider .slide-arrow{
		transition:all 0.3s ease;
	}
	section#mainVisual .slider .slide-arrow:hover{
		opacity: 0.65;
		transition:all 0.3s ease;
	}
	section#top_important .importantList li a{
		transition:all 0.3s ease;
	}
	section#top_important .importantList li a:hover{
		background-color: #fedcdc;
		box-shadow: 0 1px 8px rgba(0,0,0,0.15);
		transition:all 0.3s ease;
	}
	section#top_service .flexList li a img{
		transition:all 0.3s ease;
	}
	section#top_service .flexList li a:hover img{
		transform: scale(1.1);
		transform-origin: center;
		transition:all 0.3s ease;
	}
	section#top_company .visualNav .bluebg a i::before{
		transition:all 0.3s ease;
	}
	section#top_company .visualNav .bluebg a:hover i::before{
		transform:translateX(4px);
		transition:all 0.3s ease;
	}
	section#top_company .visualNav .bluebg a{
		transition:all 0.3s ease;
	}
	section#top_company .visualNav .bluebg a:hover{
		color: #009944;
		transition:all 0.3s ease;
	}
	section#top_recruit .visualNav .bluebg a i::before{
		transition:all 0.3s ease;
	}
	section#top_recruit .visualNav .bluebg a:hover i::before{
		transform:translateX(4px);
		transition:all 0.3s ease;
	}
	section#top_recruit .visualNav .bluebg a{
		transition:all 0.3s ease;
	}
	section#top_recruit .visualNav .bluebg a:hover{
		color: #009944;
		transition:all 0.3s ease;
	}
	section#top_news .newsList li a{
		transition:all 0.3s ease;
	}
	section#top_news .newsList li a:hover{
		box-shadow: 0 0 10px rgba(0,0,0,0.1);
		border-radius: 0;
		color: #009944;
		background-color: #f7f7f7;
		transition:all 0.3s ease;
	}
	section#top_news .newsList li a i{
		transition:all 0.3s ease;
	}
	section#top_news .newsList li a:hover i{
		color: #009944;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	/* 共通項目 */
	.all-wrap.top .pcOnly{
		display: none;
	}
	.all-wrap.top .rotateTitle{
		width: 100%;
		margin-right: 0;
	}
	.all-wrap.top .rotateTitle .rotate{
		height: 16vw;
		transform: none;
		position: relative;
		top: auto;
		left: auto;
		margin-bottom: 6vw;
	}
	.all-wrap.top .rotateTitle .rotate h2{
		font-size: 1.875rem;
		padding-top: 0;
		padding-left: 9vw;
		text-align: left;
	}
	.all-wrap.top .rotateTitle .rotate small{
		font-size: 0.75rem;
		padding-left: 3.5vw;
	}

	/* mainvisual */
	section#mainVisual{
		margin-bottom: 8vw;
	}
	section#mainVisual .slider .slide-arrow{
		display: none !important;
	}
	section#mainVisual .slider .slideParts{
		height: 51vw;
	}
	section#mainVisual .slider .slideParts a{
		height: 51vw;
	}
	section#mainVisual .slider .slick-dots{
		gap: 5vw;
		margin-top: 8vw;
	}
	section#mainVisual .slider .slick-dots li{
		width: 3vw;
		height: 3vw;
	}

	/* 重要なお知らせ */
	section#top_important{
		padding: 0 5vw 5vw 5vw;
		margin-bottom: 10vw;
	}
	section#top_important .importantList li a{
		background-position: right 7vw center;
		font-size: 0.9375rem;
		padding: 5vw;
	}
	section#top_important .importantList li a i{
		margin-right: 0;
		margin-bottom: 3vw;
	}
	section#top_important .importantList li a span{
		width: calc(100% - 8vw);
		line-height: 180%;
	}

	/* service */
	section#top_service{
		margin-bottom: 14vw;
		padding: 0 5vw 5vw 5vw;
	}
	section#top_service .rotateTitle{
		height: auto;
	}
	section#top_service .rotateTitle .rotate{
		width: 100%;
		background: url(/common/images/top/title_service_sp.png) no-repeat left center / 100% auto;
	}
	section#top_service .rotateTitle .rotate h2{
		width: 60vw;
	}
	section#top_service .flexList{
		width: 100%;
		gap: 5vw 6%;
	}
	section#top_service .flexList li{
		width: 47%;
		height: auto;
	}
	section#top_service .flexList li a{
		width: 100%;
	}
	section#top_service .moreBtn{
		margin-top: 6vw;
	}

	/* company */
	section#top_company{
		display: block;
		padding: 0 5vw 5vw 5vw;
		margin-bottom: 10vw;
	}
	section#top_company .rotateTitle{
		height: auto;
	}
	section#top_company .rotateTitle .rotate{
		width: 100%;
		background: url(/common/images/top/title_company_sp.png) no-repeat left center / 100% auto;
	}
	section#top_company .rotateTitle .rotate h2{
		width: 60vw;
		letter-spacing: 0;
	}
	section#top_company .visualNav{
		width: 100%;
		height: auto;
	}
	section#top_company .visualNav .visual{
		width: 100%;
		height: 55vw;
		border-radius: 15px 15px 0 0;
		background-image: url(/common/images/top/img_company_sp.jpg);
	}
	section#top_company .visualNav .bluebg{
		width: 100%;
		height: 23vw;
		border-radius: 0;
		background: none;
	}
	section#top_company .visualNav .bluebg a{
		flex-flow: row wrap;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		height: inherit;
		font-size: 0.9375rem;
		font-weight: 700;
		line-height: 160%;
		border-radius: 0 0 10px 10px;
		padding: 3vw 5vw 3vw 4vw;
		margin-right: 0;
	}
	section#top_company .visualNav .bluebg a::after{
		content: none;
	}
	section#top_company .visualNav .bluebg a span{
		width: calc(100% - 8vw);
		border-bottom: none;
		padding-bottom: 0;
		letter-spacing: 0.2em;
	}
	section#top_company .visualNav .bluebg a i{
		width: 3vw;
		height: 3vw;
		margin-top: 0;
	}
	section#top_company .visualNav .bluebg a i::before{
		width: inherit;
		height: inherit;
		background-size: contain;
	}

	/* recruit */
	section#top_recruit{
		display: block;
		padding: 0 5vw 5vw 5vw;
		margin-bottom: 10vw;
	}
	section#top_recruit .rotateTitle{
		height: auto;
	}
	section#top_recruit .rotateTitle .rotate{
		width: 100%;
		background: url(/common/images/top/title_recruit_sp.png) no-repeat left center / 100% auto;
	}
	section#top_recruit .rotateTitle .rotate h2{
		width: 60vw;
	}
	section#top_recruit .visualNav{
		width: 100%;
		height: auto;
	}
	section#top_recruit .visualNav .visual{
		width: 100%;
		height: 55vw;
		border-radius: 15px 15px 0 0;
		background-image: url(/common/images/top/img_recruit_sp.jpg);
	}
	section#top_recruit .visualNav .bluebg{
		width: 100%;
		height: 23vw;
		border-radius: 0;
		background: none;
	}
	section#top_recruit .visualNav .bluebg a{
		flex-flow: row wrap;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		height: inherit;
		font-size: 0.9375rem;
		font-weight: 700;
		line-height: 160%;
		border-radius: 0 0 10px 10px;
		padding: 3vw 5vw 3vw 4vw;
		margin-right: 0;
	}
	section#top_recruit .visualNav .bluebg a::after{
		content: none;
	}
	section#top_recruit .visualNav .bluebg a span{
		width: calc(100% - 8vw);
		border-bottom: none;
		padding-bottom: 0;
		letter-spacing: 0.2em;
	}
	section#top_recruit .visualNav .bluebg a i{
		width: 3vw;
		height: 3vw;
		margin-top: 0;
	}
	section#top_recruit .visualNav .bluebg a i::before{
		width: inherit;
		height: inherit;
		background-size: contain;
	}

	/* news */
	section#top_news{
		display: block;
		padding: 0 5vw 5vw 5vw;
	}
	section#top_news .rotateTitle{
		height: auto;
	}
	section#top_news .rotateTitle .rotate{
		width: 100%;
		background: url(/common/images/top/title_news_sp.png) no-repeat left center / 100% auto;
	}
	section#top_news .rotateTitle .rotate h2{
		width: 60vw;
	}
	section#top_news .newsList{
		width: 100%;
	}
	section#top_news .newsList li a{
		background: #FFF;
		padding: 5vw;
	}

	section#top_news .newsList li a i{
		width: 9em;
	}
	section#top_news .newsList li:nth-child(-n+3) a i::before{
		padding: 2px 0 0 0;
		background-position: center center;
	}
	section#top_news .newsList li a strong{
		width: 100%;
		margin-top: 3vw;
		padding-right: 12vw;
		background: url(/common/images/arrow_gray.png) no-repeat right center / 4vw auto;
	}
	section#top_news .moreBtn{
		margin-top: 5vw;
	}
}


/*== 下層ページ共通項目  ========*/
/* メインビジュアル */
#sub_Mainvisual{
	display: block;
	width: 100%;
	height: 264px;
	background-position:  center top 98px;
	background-color: #eff7e6;
	background-repeat: no-repeat;
	background-image:  url(/common/images/line_submain.svg);
	padding: 18px 0 80px 0;
	margin-bottom: 100px;
	letter-spacing: 0.08em;
	box-sizing: border-box;
	position: relative;
}
.all-wrap.news #sub_Mainvisual{
	background-image:  url(/common/images/news/line_submain.svg);
}
.all-wrap.news.importantNews #sub_Mainvisual{
	background-image:  url(/common/images/important/line_submain.svg);
}
.all-wrap.service #sub_Mainvisual{
	background-image:  url(/common/images/service/line_submain.svg);
}
.all-wrap.recruit #sub_Mainvisual{
	background-image:  url(/common/images/recruit/line_submain.svg);
}
.all-wrap.recruit-new #sub_Mainvisual{
	background-image:  url(/common/images/recruit-new/line_submain.svg);
}
.all-wrap.recruit-career #sub_Mainvisual{
	background-image:  url(/common/images/recruit-career/line_submain.svg);
}
.all-wrap.recruit-qa #sub_Mainvisual{
	background-image:  url(/common/images/recruit-qa/line_submain.svg);
}
.all-wrap.appeal #sub_Mainvisual{
	background-image:  url(/common/images/appeal/line_submain.svg);
}
.all-wrap.company #sub_Mainvisual{
	background-image:  url(/common/images/company/line_submain.svg);
}
.all-wrap.privacy #sub_Mainvisual{
	background-image:  url(/common/images/privacy/line_submain.svg);
}
.all-wrap.privacy #sub_Mainvisual.privacypolicy{
	background-image:  url(/common/images/privacy/line_submain2.svg);
}
.all-wrap.contact #sub_Mainvisual{
	background-image:  url(/common/images/contact/line_submain.svg);
}
#sub_Mainvisual::before,
#sub_Mainvisual::after{
	content: "";
	display: block;
	width: calc((100% - 1176px) / 2);
	height: 4px;
	background: #4fbe00;
	position: absolute;
}
#sub_Mainvisual::before{
	top: 98px;
	left: 0;
}
#sub_Mainvisual::after{
	top: 201px;
	right: 0;
}
#sub_Mainvisual .pankuzu{
	display: block;
	width: 100%;
	max-width: 1176px;
	padding: 8px 22px;
	font-size: 0.8125rem;
	color: #009d37;
	margin: 0 auto 65px auto;
	background:rgba(255,255,255,0.2);
	border-radius: 30px;
}
#sub_Mainvisual .pankuzu a{
	color: inherit;
	text-decoration: none;
}
#sub_Mainvisual .pankuzu a.home{
	padding-left: 18px;
	background: url(/common/images/icon_home.png) no-repeat center left / 11px auto;
}
#sub_Mainvisual .pankuzu a::after{
	content: "/";
	display: inline-block;
	margin-left: 5px;
	margin-right: 7px;
}
#sub_Mainvisual h1{
	display: block;
	text-align: center;
	font-size: 2.25rem;
	font-weight: 700;
	line-height: 100%;
}
#sub_Mainvisual small{
	display: block;
	text-align: center;
	font-variant-caps: all-small-caps;
	font-family: 'Roboto', sans-serif;
	font-size: 0.9375rem;
	margin-top: 2px;
	font-weight: bold;
}
/* pager*/
.pager{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	gap: 5px;
}
.pager a{
	display: block;
	color: #4fbe00;
	background: #FFF;
	text-align: center;
	font-weight: bold;
	width: 1.5em;
	height: 1.5em;
	font-size: 1.1875rem;
	padding: 5px;
	border-radius: 10px;
}
.pager a.number.crr{
	color: #FFF;
	background: #4fbe00;
	cursor: default;
	pointer-events: none;
}
.pager a.prevLink,
.pager a.nextLink{
	width: 2em;
}
.pager a.prevLink{
	background: url(/common/images/arrow_prev_pn.png) no-repeat #FFF center center / 11px auto;
}
.pager a.nextLink{
	background: url(/common/images/arrow_next_pn.png) no-repeat #FFF center center / 11px auto;
}
/* 見出し */
.bigTitle{
	display: block;
	width: 100%;
	max-width: 1176px;
	min-height: 96px;
	margin: 0 auto 10px auto;
	padding-left: 56px;
	position: relative;
}
.bigTitle::before{
	content: "";
	display: block;
	width: 50px;
	height: 96px;
	clip-path: polygon(0 0, 15px 0, 100% 100%, calc(100% - 15px) 100%);
	background: #4fbe00;
	position: absolute;
	top: 0;
	left: 0;
}
.bigTitle small{
	display: block;
	font-weight: bold;
	font-size: 1.875rem;
	font-variant-caps: all-small-caps;
	font-family: 'Roboto', sans-serif;
	margin-top: 0.2em;
	padding-left: 0.1em;
}
.bigTitle h2{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 1.2em;
	letter-spacing: 0.03em;
}
@media (min-width: 751px) { /* forPC */
	.pager a{
		transition:all 0.3s ease;
	}
	.pager a:hover{
		background-color: #d4efc1;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#sub_Mainvisual{
		height: 48.5vw;
		background-position: center top 19vw;
		background-size: 100vw auto;
		background-image: url(/common/images/line_submain_sp.svg);
		padding: 5vw 3vw 0 3vw;
		margin-bottom: 16vw;
	}
	.all-wrap.news #sub_Mainvisual{
		background-image: url(/common/images/news/line_submain_sp.svg);
	}
	.all-wrap.news.importantNews #sub_Mainvisual{
		background-image: url(/common/images/important/line_submain_sp.svg);
	}
	.all-wrap.service #sub_Mainvisual{
		background-image: url(/common/images/service/line_submain_sp.svg);
	}
	.all-wrap.recruit #sub_Mainvisual{
		background-image: url(/common/images/recruit/line_submain_sp.svg);
	}
	.all-wrap.recruit-new #sub_Mainvisual{
		background-image: url(/common/images/recruit-new/line_submain_sp.svg);
	}
	.all-wrap.recruit-career #sub_Mainvisual{
		background-image: url(/common/images/recruit-career/line_submain_sp.svg);
	}
	.all-wrap.recruit-qa #sub_Mainvisual{
		background-image: url(/common/images/recruit-qa/line_submain_sp.svg);
	}
	.all-wrap.appeal #sub_Mainvisual{
		background-image: url(/common/images/appeal/line_submain_sp.svg);
	}
	.all-wrap.company #sub_Mainvisual{
		background-image: url(/common/images/company/line_submain_sp.svg);
	}
	.all-wrap.privacy #sub_Mainvisual{
		background-image: url(/common/images/privacy/line_submain_sp.svg);
	}
	.all-wrap.privacy #sub_Mainvisual.privacypolicy{
		background-image: url(/common/images/privacy/line_submain_sp2.svg);
	}
	.all-wrap.contact #sub_Mainvisual{
		background-image: url(/common/images/contact/line_submain_sp.svg);
	}
	#sub_Mainvisual::before,
	#sub_Mainvisual::after{
		content: none;
	}
	#sub_Mainvisual .pankuzu{
		padding: 1vw 5vw;
		font-size: 0.75rem;
		margin: 0 auto 11vw auto;
	}
	#sub_Mainvisual h1{
		font-size: 1.25rem;
		padding-left: 2vw;
	}
	#sub_Mainvisual small{
		font-size: 0.875rem;
		padding-left: 2vw;
		letter-spacing: 0;
	}
	.pager a{
		width: 2.5em;
		height: 2.5em;
		padding: 0.5em 0;
		box-sizing: border-box;
	}
	.bigTitle{
		padding-left: 11.5vw;
	}
	.bigTitle::before{
		width: 9vw;
		height: 18vw;
		clip-path: polygon(0 0, 2.5vw 0, 100% 100%, calc(100% - 2.5vw) 100%);
	}
	.bigTitle small{
		font-size: 0.9375rem;
		letter-spacing: 0.05rem;
		padding-top: 0.1em;
		padding-left: 0;
	}
	.bigTitle h2{
		font-size: 1.875rem;
		line-height: 1.1em;
	}
}

/*== ニュース一覧 /news/index.html ========*/
section#news_list_wrap{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 80px auto;
}
section#news_list_wrap .feedArea{
  margin-bottom: 10px;
  text-align: right;
}
section#news_list_wrap .feedArea a{
  display: inline-block;
  background-image: url("../images/icon_rss.svg");
  background-color: #feac4d;
  background-repeat: no-repeat;
  background-size: 12px auto;
  background-position: 15px 50%;
  padding: 8px 15px 8px 35px;
  color: #ffffff;
  border-radius: 4px;
  transition: all 0.3s ease;
}
section#news_list_wrap #news_list li{
	display: block;
	margin-bottom: 5px;
}
section#news_list_wrap #news_list li a{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	background: url(/common/images/arrow_gray.png) no-repeat #FFF right 23px center / 14px auto;
	border-radius: 10px;
	font-size: 0.9375rem;
	padding: 20px 40px 20px 20px;
}
section#news_list_wrap #news_list li a i{
	display: block;
	width: 8.5em;
	border-radius: 4px;
	text-align: center;
	color: #FFF;
	font-style: normal;
	background: #fbbd2c;
	font-size: inherit; 
	margin-right: 20px;
	line-height: 100%;
	padding: 8px 5px;
	position: relative;
}
section#news_list_wrap #news_list li a i.cat_CS{
	background: #fbbd2c;
}
section#news_list_wrap #news_list li a i.cat_BUSINESS{
	background: #cd3680;
}
section#news_list_wrap #news_list li a i.cat_recruit{
	background: #4fbe00;
}
section#news_list_wrap #news_list li a i.cat_dev{
	background: #fbbd2c;
}
section#news_list_wrap #news_list li a i.cat_COMPANY{
	background: #0080cc;
}
section#news_list_wrap #news_list li a i.cat_others{
	background: #fbbd2c;
}
section#news_list_wrap #news_list li.newIcon a i::before{
	content: "NEW";
	display: block;
	width: 40px;
	height: 22px;
	text-align: center;
	line-height: 100%;
	font-size: 0.6875rem;
	color: #FFF;
	padding: 2px 0 0 0;
	position: absolute;
	left: -10px;
	top: -13px;
	background: url(/common/images/icon_new.png) no-repeat left top / 40px auto;
	box-sizing: border-box;
}
section#news_list_wrap #news_list li a time{
	margin-right: 20px;
	line-height: 180%;
	margin-top: 1px;
	letter-spacing: 0.1em;
}
section#news_list_wrap #news_list li a strong{
	display: block;
	width: calc(100% - 8.5em - 140px);
	font-size: inherit;
	font-weight: normal;
	line-height: 180%;
	margin-top: 1px;
	letter-spacing: 0.08em;
}
@media (min-width: 751px) { /* forPC */
  section#news_list_wrap .feedArea a:hover{
    background-color: #ffcc00;
  }
	section#news_list_wrap #news_list li a{
		transition:all 0.3s ease;
	}
	section#news_list_wrap #news_list li a:hover{
		box-shadow: 0 0 10px rgba(0,0,0,0.1);
		border-radius: 0;
		background-color: #f7f7f7;
		color: #009944;
		transition:all 0.3s ease;
	}
	section#news_list_wrap #news_list li a i{
		transition:all 0.3s ease;
	}
	section#news_list_wrap #news_list li a:hover i{
		color: #009944;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	section#news_list_wrap{
		display: block;
	}
	section#news_list_wrap #news_list{
		width: 100%;
	}
  section#news_list_wrap .feedArea{
    padding-left: 5.5vw;
    padding-right: 5.5vw;
    margin-bottom: 2vw;
  }
  section#news_list_wrap .feedArea a {
    padding: 5px 15px 5px 35px;
  }
	section#news_list_wrap #news_list li{
		padding-left: 5.5vw;
		padding-right: 5.5vw;
	}
	section#news_list_wrap #news_list li a{
		background: #FFF;
		padding: 5vw;
	}
	section#news_list_wrap #news_list li a i{
		width: 9em;
	}
	section#news_list_wrap #news_list li.newIcon a i::before{
		padding: 2px 0 0 0;
		background-position: center center;
	}
	section#news_list_wrap #news_list li a strong{
		width: 100%;
		margin-top: 3vw;
		padding-right: 12vw;
		background: url(/common/images/arrow_gray.png) no-repeat right center / 4vw auto;
	}
}

/*== ニュース詳細 ========*/
h1#entry_title{
	display: block;
	width: 100%;
	max-width: 1274px;
	font-weight: bold;
	font-size: 2.25rem;
	line-height: 2.875rem;
	padding: 26px 50px;
	background: #f5f5f5;
	margin: 0 auto;
}
section#entry_header{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	max-width: 1176px;
	margin: 60px auto 0 auto;
	padding-bottom: 40px;
	border-bottom: #cccccc solid 2px;
	box-sizing: border-box;
	position: relative;
}
section#entry_header::after{
	content: "";
	width: 160px;
	height: 2px;
	background: #4fbe00;
	position: absolute;
	left: 0;
	bottom: -2px;
}
section#entry_header i{
	display: block;
	width: 8.5em;
	border-radius: 4px;
	text-align: center;
	color: #FFF;
	font-style: normal;
	background: #fbbd2c;
	font-size: inherit; 
	margin-left: 10px;
	margin-right: 20px;
	line-height: 100%;
	padding: 8px 5px;
	position: relative;
}
section#entry_header i.cat_CS{
	background: #fbbd2c;
}
section#entry_header i.cat_BUSINESS{
	background: #cd3680;
}
section#entry_header i.cat_recruit{
	background: #4fbe00;
}
section#entry_header i.cat_dev{
	background: #fbbd2c;
}
section#entry_header i.cat_COMPANY{
	background: #0080cc;
}
section#entry_header i.cat_others{
	background: #fbbd2c;
}
section#entry_header time{
	line-height: 180%;
	margin-top: 1px;
	letter-spacing: 0.1em;
}
article#entry_body{
	display: block;
	width: 100%;
	max-width: 1274px;
	margin: 20px auto 0 auto;
}
article#entry_body.nonTag{
	max-width: 1176px;
}
article#entry_body h1{
	display: block;
	width: 100%;
	max-width: 1274px;
	font-weight: bold;
	font-size: 2.25rem;
	line-height: 2.875rem;
	padding: 26px 50px;
	background: #f5f5f5;
	margin: 80px auto 50px auto;
}
article#entry_body :is(h2,h3,h4,h5,h6,p,ul){
	display: block;
	width: 100%;
	max-width: 1176px;
	margin-left: auto;
	margin-right: auto;
}
article#entry_body h2{
	font-weight: bold;
	font-size: 2.5rem;
	line-height: 130%;
	margin-top: 80px;
	margin-bottom: 40px;
	padding-left: 40px;
	position: relative;
}
article#entry_body h2::before{
	content: "";
	display: block;
	width: 30px;
	height: 50px;
	clip-path: polygon(0 0, 15px 0, 100% 100%, calc(100% - 15px) 100%);
	background: #4fbe00;
	position: absolute;
	top: 0;
	left: 0;
}
article#entry_body h3{
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 130%;
	margin-top: 35px;
	margin-bottom: 35px;
}
article#entry_body h4,
article#entry_body h5,
article#entry_body h6{
	font-weight: bold;
	font-size: 1.25rem;
	line-height: 130%;
	margin-top: 40px;
	margin-bottom: 40px;
}
article#entry_body p{
	font-size: 0.9375rem;
	line-height: 180%;
	margin-top: 40px;
	margin-bottom: 40px;
}
article#entry_body p a[target="_blank"]{
	display: inline-block;
	padding-left: 25px;
	position: relative;
}
article#entry_body p a[target="_blank"]::before{
	content: "";
	display: inline-block;
	width: 17px;
	height: 17px;
	background: url(/common/images/icon_target.svg) no-repeat center center / contain;
	position: absolute;
	top: 0.3em;
	left: 0;
}
article#entry_body ul{
	display: block;
	margin: 30px auto;
	max-width: 1176px;
}
article#entry_body ul li{
	padding-left: 30px;
	margin-bottom: 25px;
	line-height: 180%;
	position: relative;
}
article#entry_body ul li:last-child{
	margin-bottom: 0;
}
article#entry_body ul li::before{
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #4fbe00;
	position: absolute;
	top: 0.5em;
	left: 0;
}
article#entry_body figure.mt-figure{
	display: block !important;
	text-align: center;
	max-width: 1176px;
	margin: 60px auto;
}
article#entry_body figure.mt-figure-center figcaption{
	text-align: center;
}
article#entry_body figure figcaption{
	display: inline-block;
	color: #666;
	margin-top: 20px;
	font-size: 0.75rem;
	letter-spacing: 0.05em;
}
article#entry_body .mt-be-columns{
	max-width: 1176px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
	gap: 0 50px;
}
article#entry_body .mt-be-column{
	display: block;
	flex: 1;
}
@media (min-width: 751px) { /* forPC */
	article#entry_body .mt-be-column :first-child{
		margin-top: 0 !important;
	}
}
@media (max-width: 750px) { /* forSP */
	h1#entry_title{
		max-width: 90vw;
		font-size: 1.25rem;
		padding: 3.5vw 5vw;
		line-height: 130%;
	}
	section#entry_header{
		max-width: 90vw;
		margin-top: 10vw;
	}
	section#entry_header::after{
		width: 30vw;
	}
	section#entry_header i{
		margin-left: 0;
	}
	article#entry_body{
		max-width: 90vw;
	}
	article#entry_body.nonTag{
		max-width: 90vw;
	}
	article#entry_body h1{
		max-width: 90vw;
		font-size: 1.25rem;
		padding: 3.5vw 5vw;
		line-height: 130%;
		margin: 15vw auto 10vw auto;
	}
	article#entry_body :is(h2,h3,h4,h5,h6,p,ul){
		max-width: 90vw;
		margin-top: 8vw;
		margin-bottom: 5vw;
	}
	article#entry_body h2{
		font-size: 1.875rem;
		margin-top: 10vw;
		margin-bottom: 8vw;
		padding-left: 4vw;
	}
	article#entry_body h2::before{
		width: 28px;
		height: 45px;
		clip-path: polygon(0 0, 12px 0, 100% 100%, calc(100% - 12px) 100%);
		left: -5vw;
	}
	article#entry_body h4,
	article#entry_body h5,
	article#entry_body h6{
		font-size: 1.125rem;
	}
	article#entry_body p{
		margin-top: 5vw;
		margin-bottom: 5vw;
	}
	article#entry_body img{
		max-width: 100%;
		width: auto;
		height: auto;
	}
	article#entry_body figure.mt-figure{
		margin: 5vw auto 8vw auto;
	}
	article#entry_body figure.mt-figure-center figcaption{
		text-align: left;
	}
	article#entry_body figure figcaption{
		margin-top: 2vw;
		text-align: left;
	}
	article#entry_body .mt-be-columns{
		flex-flow: column wrap;
		margin-bottom: 5vw;
		gap: 0;
	}
	article#entry_body .mt-be-column{
		width: 100%;
		flex: auto;
	}
}

/*== サービス一覧 /service/index.html ========*/
/* 一覧 */
#service_list{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 63px;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 80px auto;
}
#service_list .parts{
	display: block;
	width: calc((100% - 126px) / 3);
}
#service_list .parts a figure{
	display: block;
	width: 350px;
	height: 350px;
	margin: 0 0 30px 0;
	border: #333333 solid 4px;
	overflow: hidden;
	border-radius: 10px;
	box-sizing: border-box;
}
#service_list .parts a figure img{
	display: block;
	width: 350px;
	height: 350px;
	object-fit: cover;
	box-sizing: border-box;
}
#service_list .parts .textWrap{
	display: block;
	height: calc(100% - 390px);
	padding-bottom: 40px;
	border-bottom: #4fbe00 solid 2px;
	position: relative;
}
#service_list .parts .textWrap .iconWrap{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 9px;
	margin-top: 28px;
	margin-bottom: 9px;
}
#service_list .parts .textWrap .iconWrap span{
	display: inline-block;
	color: #FFF;
	font-size: 0.9375rem;
	line-height: 0.9375rem;
	letter-spacing: 0.05em;
	text-align: center;
	border: #979797 solid 1px;
	padding: 7px 16px;
	border-radius: 5px;
}
#service_list .parts .textWrap .iconWrap span.cat_ios{
	background: #e61673;
	order: 1;
}
#service_list .parts .textWrap .iconWrap span.cat_android{
	background: #47af9a;
	order: 2;
}
#service_list .parts .textWrap .iconWrap span.cat_pc{
	background: #204698;
	order: 3;
}
#service_list .parts .textWrap h3{
	display: block;
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 150%;
	margin-bottom: 16px;
}
#service_list .parts .textWrap .text{
	display: block;
	font-size: 0.875rem;
	line-height: 1.625rem;
}
#service_list .parts .textWrap a{
	display: block;
	width: 40px;
	height: 40px;
	margin-left: auto;
	background: url(/common/images/arrow_black.png) no-repeat right 3px bottom 10px;
	position: absolute;
	right: 0;
	bottom: 0;
	box-sizing: border-box;
}
@media (min-width: 751px) { /* forPC */
	#service_list .parts a figure img{
		transition:all 0.3s ease;
	}
	#service_list .parts a:hover figure img{
		transform: scale(1.08);
		transform-origin: center center;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#service_list{
		display: block;
		padding: 0 5vw;
	}
	#service_list .parts{
		width: 100%;
		margin-bottom: 5.3vw;
	}
	#service_list .parts{
		display: grid;
		grid-template-columns: 42.6vw 4vw 1fr;
		border-bottom:  none;
	}
	#service_list .parts a.fig{
		grid-column: 1/2;
		grid-row: 1/4;
		width: 42.6vw;
		height: 42.6vw;
	}
	#service_list .parts a.fig figure{
		width: inherit;
		height: inherit;
		border-radius: 15px;
		margin: 0;
	}
	#service_list .parts a figure img{
		width: 100%;
		height: 100%;
	}
	#service_list .parts .textWrap{
		grid-column: 3/4;
		display: block;
		width: 100%;
		min-height: 42.6vw;
		padding-bottom: 25px;
		border-bottom: #4fbe00 solid 2px;
		box-sizing: border-box;
	}
	#service_list .parts .textWrap .iconWrap{
		gap: 4px;
		margin-top: 0;
		margin-bottom: 8px;
	}
	#service_list .parts .textWrap .iconWrap span{
		font-size: 0.75rem;
		line-height: 0.75rem;
		padding: 4px 10px;
		border: none;
	}
	#service_list .parts .textWrap h3{
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		font-size: 1rem;
		line-height: 130%;
		margin-bottom: 8px;
	}
	#service_list .parts .textWrap .text{
		font-size: 0.75rem;
		line-height: 160%;
	}
	#service_list .parts .textWrap .text p{
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
	}
}

/*== 採用情報 /recruit/index.html ========*/
#recruit_header{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
}
#recruit_header .coverImg{
	max-width: 100%;
	margin-bottom: 80px;
}
#recruit_movie .bigTitle{
	margin-bottom: 20px;
}
#recruit_movie ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: stretch;
	gap: 45px 40px;
	max-width: 1176px;
	margin: 0 auto 80px auto;
}
#recruit_movie ul li{
	width: calc((100% - 40px) / 2);
	height: 284px;
	border-radius: 15px;
	overflow: hidden;
}
#recruit_movie ul li img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	cursor: pointer;
}
#recruit_movie_modal{
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 50;
}
#recruit_movie_modal .modalBg{
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,1);
	position: fixed;
	top: 0;
	left: 0;
}
#recruit_movie_modal .modalClose{
	display: block;
	width: 100%;
	color: #FFF;
	text-align: right;
	padding: .5em 1em;
	box-sizing: border-box;
	font-size: 1.25rem;
	cursor: pointer;
	position: fixed;
	top: 0;
	left: 0;
}
#recruit_movie_modal .modalCont{
	display: none;
	width: 768px;
	height: 432px;
	position: fixed;
	top: calc(50% - 216px);
	left: calc(50% - 384px);
}
#recruit_about .bigTitle{
	margin-bottom: 40px;
}
#recruit_about ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 45px 40px;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 80px auto;
}
#recruit_about ul li{
	display: block;
	width: calc((100% - 40px) / 2);
}
#recruit_about ul li .img{
	display: block;
	width: 100%;
	height: 284px;
	border-radius: 16px;
	margin-bottom: 20px;
	overflow: hidden;
}
#recruit_about ul li .img img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#recruit_about ul li strong{
	display: block;
	font-size: 1.5rem;
	font-weight: bold;
	padding-left: 28px;
	margin-bottom: 15px;
	position: relative;
}
#recruit_about ul li strong svg{
	width: 16px;
	height: 16px;
	position: absolute;
	top: 0.25em;
	left: 0;
}
#recruit_about ul li strong svg path{
	fill: #4cbe06;
}
#recruit_about ul li span.caption{
	display: block;
	font-size: 0.9375rem;
	letter-spacing: 0.05em;
}
#recruit_entry{
	display: block;
	background: #eff7e6;
	padding: 60px 0 80px 0;
}
#recruit_entry .bigTitle{
	max-width: 1176px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
}
#recruit_entry .read{
	display: block;
	max-width: 1176px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 48px;
	line-height: 180%;
	letter-spacing: 0.05em;
}
#recruit_entry ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	max-width: 1176px;
	margin-left: auto;
	margin-right: auto;
	gap: 0 40px;
}
#recruit_entry ul li{
	display: block;
	width: calc((100% - 40px) / 2);
}
#recruit_entry ul li a{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	height: 147px;
	font-size: 1.5625rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	border-radius: 13px;
	border: #4cbe06 solid 3px;
	padding-right: 65px;
	background: url(/common/images/arrow_green.png) no-repeat #FFF right 42px center / 16px auto;
}
#recruit_entry ul li a[target="_blank"]{
	background: url(/common/images/icon_target.svg) no-repeat #FFF right 38px center / 20px auto;
}
#recruit_entry ul li a i{
	display: inline-block;
}
#recruit_entry ul li:nth-child(1) a i svg{
	display: block;
	width: 58px;
	height: 47px;
	margin-left: 42px;
	margin-right: 27px;
}
#recruit_entry ul li:nth-child(2) a i svg{
	display: block;
	width: 47px;
	height: 53px;
	margin-left: 50px;
	margin-right: 33px;
}
#recruit_entry ul li:nth-child(2) a i svg .cls-1{
	fill: #4cbe06;
	fill-rule: evenodd;
}
@media (min-width: 751px) { /* forPC */
	#recruit_movie ul li:nth-child(1){
		margin-left: 10px;
		margin-right: 10px;
	}
	#recruit_movie ul li img{
		transition:all 0.3s ease;
	}
	#recruit_movie ul li img:hover{
		transform: scale(1.1);
		transition:all 0.3s ease;
	}
	#recruit_about ul li a .img img{
		transition:all 0.3s ease;
	}
	#recruit_about ul li a:hover .img img{
		transform: scale(1.1);
		transition:all 0.3s ease;
	}
	#recruit_about ul li a strong{
		transition:all 0.3s ease;
	}
	#recruit_about ul li a:hover strong{
		color: #009944;
		transition:all 0.3s ease;
	}
	#recruit_about ul li a strong svg path{
		transition:all 0.3s ease;
	}
	#recruit_about ul li a:hover strong svg path{
		fill: #000;
		transition:all 0.3s ease;
	}
	#recruit_entry ul li a{
		transition:all 0.3s ease;
	}
	#recruit_entry ul li a:hover{
		color: #009944;
		transition:all 0.3s ease;
	}
	#recruit_entry ul li a svg path{
		transition:all 0.3s ease;
	}
	#recruit_entry ul li a:hover svg path{
		fill: #000;
		transition:all 0.3s ease;
	}
	#recruit_entry ul li:nth-child(2) a:hover i svg .cls-1{
		transition:all 0.3s ease;
	}
	#recruit_entry ul li:nth-child(2) a:hover i svg .cls-1{
		fill: #000;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#recruit_header .coverImg{
		margin-bottom: 12vw;
	}
	#recruit_movie ul{
		padding-left: 5vw;
		padding-right: 5vw;
		margin-bottom: 10vw;
	}
	#recruit_movie ul li{
		width: 100%;
		height: 46vw;
	}
	#recruit_movie_modal .modalCont{
		width: 90vw;
		height: 46vw;
		top: calc(50% - 23vw);
		left: 5vw;
	}
	#recruit_movie_modal .modalCont iframe{
		width: 100%;
		height: 46vw;
	}
	#recruit_about ul{
		margin: 0 auto 24vw auto;
		padding-left: 5vw;
		padding-right: 5vw;
	}
	#recruit_about ul li{
		width: 100%;
	}
	#recruit_about ul li .img{
		height: 46vw;
	}
	#recruit_about ul li strong{
		font-size: 1.25rem;
		background-position: left top 0.2em;
		background-size: 20px auto;
		margin-bottom: 13px;
	}
	#recruit_entry{
		padding-top: 10vw;
		padding-bottom: 10vw;
	}
	#recruit_entry .bigTitle{
		margin-bottom: 3vw;
	}
	#recruit_entry .read{
		padding-left: 5vw;
		padding-right: 5vw;
		font-size: 0.9375rem;
		margin-bottom: 6vw;
	}
	#recruit_entry ul{
		padding-left: 5vw;
		padding-right: 5vw;
		gap: 5vw 0;
	}
	#recruit_entry ul li{
		width: 100%;
	}
	#recruit_entry ul li a{
		height: 18vw;
		font-size: 1rem;
		padding-right: 10vw;
		background-position: right 5vw center ;
		background-size: 5vw auto;
	}
	#recruit_entry ul li a[target="_blank"]{
		background-position: right 5vw center ;
		background-size: 5vw auto;
	}
	#recruit_entry ul li:nth-child(1) a i svg{
		width: 9vw;
		margin-left: 6vw;
		margin-right: 5vw;
	}
	#recruit_entry ul li:nth-child(2) a i svg{
		width: 7vw;
		margin-left: 7vw;
		margin-right: 6vw;
	}
}

/*== 採用情報 新卒募集職種紹介 /recruit/new/index.html ========*/
#recruit_new_tab{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 110px auto;
}
#recruit_new_tab time.yearCaption{
	display: block;
	text-align: left;
	margin-bottom: 20px;
	color: #787878;
	letter-spacing: 0.05em;
	font-size: 0.8125rem;
}
#recruit_new_tab ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 25px 0;
}
#recruit_new_tab ul li{
	display: block;
	width: calc(100% / 5);
	padding: 15px;
	text-align: center;
	font-weight: bold;
	font-size: 0.9375rem;
	letter-spacing: 0.1em;
	color: #009d37;
	line-height: 100%;
	border-right: #cccccc solid 1px;
	box-sizing: border-box;
	cursor: pointer;
}
#recruit_new_tab ul li.crr{
	color: #FFF;
	background: #009d37;
}
#recruit_new_cont{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
}
#recruit_new_cont > section.parts{
	display: none;
}
#recruit_new_cont > section.parts.crr{
	display: block;
}
#recruit_new_cont > section.parts h2{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.1em;
	padding-left: 55px;
	position: relative;
	margin-bottom: 38px;
}
#recruit_new_cont > section.parts h2::before{
	content: "";
	display: block;
	width: 30px;
	height: 50px;
	background: #4fbe00;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: 0;
	left: 10px;
}
#recruit_new_cont > section.parts hr{
	display: block;
	border: none;
	height: 2px;
	background: #cccccc;
	position: relative;
	margin-bottom: 25px;
}
#recruit_new_cont > section.parts hr::after{
	content: "";
	display: block;
	width: 160px;
	height: 2px;
	background: #4fbe00;
	position: absolute;
	left: 0;
	bottom: 0;
}
#recruit_new_cont > section.parts h3{
	display: block;
	font-weight: bold;
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	line-height: 180%;
	margin-bottom: 40px;
}
#recruit_new_cont > section.parts .read{
	display: block;
	font-size: 0.9375rem;
	line-height: 180%;
}
#recruit_new_cont > section.parts section{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 25px;
	margin-top: 60px;
}
#recruit_new_cont > section.parts section h4{
	display: block;
	width: 100%;
	font-weight: bold;
	font-size: 1.25rem;
	line-height: 130%;
	order: 1;
}
#recruit_new_cont > section.parts section .img{
	display: block;
}
#recruit_new_cont > section.parts section .mainText{
	display: block;
	font-size: 0.9375rem;
	line-height: 180%;
}
#recruit_new_cont > section.parts section .mainText p:nth-child(n+2){
	margin-top: 1em;
}
#recruit_new_cont > section.parts section .img img{
	display: block;
	max-width: 100%;
	margin: 0 auto;
}
#recruit_new_cont > section.parts section.imgLeft .img{
	order: 2;
}
#recruit_new_cont > section.parts section.imgLeft .mainText{
	order: 3;
}
#recruit_new_cont > section.parts section.imgRight .img{
	order: 3;
}
#recruit_new_cont > section.parts section.imgRight .mainText{
	order: 2;
}
#recruit_new_cont > section.parts section.type_text{
	display: block;
}
#recruit_new_cont > section.parts section.type_text h4{
	margin-bottom: 20px;
}
#recruit_new_cont > section.parts section.type_text .mainText{
	width: 100%;
}
#recruit_new_cont > section.parts section.type_img{
	display: block;
	width: 100%;
}
#recruit_new_cont > section.parts section.type_img h4{
	margin-bottom: 20px;
}
#recruit_new_cont > section.parts section.type_img .img{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
}
#recruit_new_mynav{
	display: block;
	width: 100%;
	background: #eff7e6;
	padding: 60px 0 80px;
	margin-top: 60px;
}
#recruit_new_mynav h2{
	display: block;
	max-width: 1176px;
	margin: 0 auto 50px auto;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.1em;
	padding-left: 55px;
	position: relative;
}
#recruit_new_mynav h2::before{
	content: "";
	display: block;
	width: 30px;
	height: 50px;
	background: #4fbe00;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: 0;
	left: 10px;
}
#recruit_new_mynav .flexBox{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
	gap: 0 50px;
}
#recruit_new_mynav .flexBox a{
	display: block;
	width: 100%;
	max-width: 460px;
	min-height: 70px;
	border-radius: 10px;
	border: #FFF solid 3px;
	box-sizing: border-box;
	background: #FFF;
}
#recruit_new_mynav .flexBox a img{
	max-width: 100%;
	border-radius: 10px;
}
#recruit_new_mynav .flexBox p{
	width: calc(100% - 510px);
}
#recruit_new_mynav .nomalBox {
  width: 100%;
	max-width: 1176px;
	margin: 0 auto;
}
#recruit_new_mynav .nomalBox p{
  margin-bottom: 20px;
}
#recruit_new_mynav .nomalBox .banner a {
  transition: all 0.3s ease;
}
#recruit_new_mynav .nomalBox .banner a:hover {
  opacity: 0.7;
}
#recruit_new_cont ul{
	display: block;
	margin: 10px auto;
	max-width: 1176px;
}
#recruit_new_cont ul li{
	padding-left: 22px;
	margin-bottom: 6px;
	line-height: 180%;
	position: relative;
}
#recruit_new_cont ul li:last-child{
	margin-bottom: 0;
}
#recruit_new_cont ul li::before{
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #4fbe00;
	position: absolute;
	top: 0.5em;
	left: 0;
}
@media (min-width: 751px) { /* forPC */
	#recruit_new_tab ul li:nth-child(5n+1){
		border-left: #cccccc solid 1px;
	}
	#recruit_new_tab ul li{
		transition:all 0.3s ease;
	}
	#recruit_new_tab ul li:hover{
		color: #FFF;
		background: #009d37;
		transition:all 0.3s ease;
	}
	#recruit_new_mynav .flexBox a{
		transition:all 0.3s ease;
	}
	#recruit_new_mynav .flexBox a:hover{
		border-color: #4fbe00;
		transition:all 0.3s ease;
	}
	#recruit_new_cont > section.parts section.p10 .img{
		flex: 1;
	}
	#recruit_new_cont > section.parts section.p10 .mainText{
		flex: 9;
	}
	#recruit_new_cont > section.parts section.p15 .img{
		flex: 3;
	}
	#recruit_new_cont > section.parts section.p15 .mainText{
		flex: 17;
	}
	#recruit_new_cont > section.parts section.p20 .img{
		flex: 2;
	}
	#recruit_new_cont > section.parts section.p20 .mainText{
		flex: 8;
	}
	#recruit_new_cont > section.parts section.p25 .img{
		flex: 1;
	}
	#recruit_new_cont > section.parts section.p25 .mainText{
		flex: 3;
	}
	#recruit_new_cont > section.parts section.p30 .img{
		flex: 3;
	}
	#recruit_new_cont > section.parts section.p30 .mainText{
		flex: 7;
	}
	#recruit_new_cont > section.parts section.p35 .img{
		flex: 7;
	}
	#recruit_new_cont > section.parts section.p35 .mainText{
		flex: 13;
	}
	#recruit_new_cont > section.parts section.p40 .img{
		flex: 4;
	}
	#recruit_new_cont > section.parts section.p40 .mainText{
		flex: 6;
	}
	#recruit_new_cont > section.parts section.p45 .img{
		flex: 9;
	}
	#recruit_new_cont > section.parts section.p45 .mainText{
		flex: 11;
	}
	#recruit_new_cont > section.parts section.p50 .img{
		flex: 1;
	}
	#recruit_new_cont > section.parts section.p50 .mainText{
		flex: 1;
	}
	#recruit_new_cont > section.parts section.p55 .img{
		flex: 11;
	}
	#recruit_new_cont > section.parts section.p55 .mainText{
		flex: 9;
	}
	#recruit_new_cont > section.parts section.p60 .img{
		flex: 6;
	}
	#recruit_new_cont > section.parts section.p60 .mainText{
		flex: 4;
	}
	#recruit_new_cont > section.parts section.p65 .img{
		flex: 13;
	}
	#recruit_new_cont > section.parts section.p65 .mainText{
		flex: 7;
	}
	#recruit_new_cont > section.parts section.p70 .img{
		flex: 7;
	}
	#recruit_new_cont > section.parts section.p70 .mainText{
		flex: 3;
	}
	#recruit_new_cont > section.parts section.p75 .img{
		flex: 3;
	}
	#recruit_new_cont > section.parts section.p75 .mainText{
		flex: 1;
	}
	#recruit_new_cont > section.parts section.p80 .img{
		flex: 8;
	}
	#recruit_new_cont > section.parts section.p80 .mainText{
		flex: 2;
	}
	#recruit_new_cont > section.parts section.p85 .img{
		flex: 17;
	}
	#recruit_new_cont > section.parts section.p85 .mainText{
		flex: 3;
	}
	#recruit_new_cont > section.parts section.p90 .img{
		flex: 9;
	}
	#recruit_new_cont > section.parts section.p90 .mainText{
		flex: 1;
	}
	#recruit_new_cont > section.parts section.p95 .img{
		flex: 19;
	}
	#recruit_new_cont > section.parts section.p95 .mainText{
		flex: 1;
	}
}
@media (max-width: 750px) { /* forSP */
	#recruit_new_tab{
		padding-left: 5vw;
		padding-right: 5vw;
		margin-bottom: 12vw;
	}
	#recruit_new_tab ul{
		gap: 3vw 0;
	}
	#recruit_new_tab ul li{
		width: calc(100% / 2);
		padding: 4vw;
		font-size: 0.75rem;
	}
	#recruit_new_tab ul li:nth-child(2n+1){
		border-left: #cccccc solid 1px;
	}
	#recruit_new_cont{
		padding-left: 5vw;
		padding-right: 5vw;
	}
	#recruit_new_cont > section.parts h2{
		font-size: 1.875rem;
		padding-left: 36px;
	}
	#recruit_new_cont > section.parts h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#recruit_new_cont > section.parts hr::after{
		width: 20vw;
	}
	#recruit_new_cont > section.parts h3{
		font-size: 1.25rem;
		line-height: 160%
	}
	#recruit_new_cont > section.parts section.imgRight .img,
	#recruit_new_cont > section.parts section.imgLeft .img{
		order: 2;
		width: 100%;
		text-align: center;
	}
	#recruit_new_cont > section.parts section.imgRight .mainText,
	#recruit_new_cont > section.parts section.imgLeft .mainText{
		order: 3;
	}
	#recruit_new_cont > section.parts section.p10 .img,
	#recruit_new_cont > section.parts section.p15 .img,
	#recruit_new_cont > section.parts section.p20 .img,
	#recruit_new_cont > section.parts section.p25 .img,
	#recruit_new_cont > section.parts section.p30 .img,
	#recruit_new_cont > section.parts section.p35 .img,
	#recruit_new_cont > section.parts section.p40 .img,
	#recruit_new_cont > section.parts section.p45 .img,
	#recruit_new_cont > section.parts section.p50 .img,
	#recruit_new_cont > section.parts section.p55 .img,
	#recruit_new_cont > section.parts section.p60 .img,
	#recruit_new_cont > section.parts section.p65 .img,
	#recruit_new_cont > section.parts section.p70 .img,
	#recruit_new_cont > section.parts section.p75 .img,
	#recruit_new_cont > section.parts section.p80 .img,
	#recruit_new_cont > section.parts section.p85 .img,
	#recruit_new_cont > section.parts section.p90 .img,
	#recruit_new_cont > section.parts section.p95 .img{
		width: 100%;
		max-width: 100vw;
		margin-left: auto;
		margin-right: auto;
	}
	#recruit_new_mynav{
		padding: 15vw 5vw;
	}
	#recruit_new_mynav h2{
		font-size: 1.875rem;
		padding-left: 36px;
		margin-bottom: 7vw;
	}
	#recruit_new_mynav h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#recruit_new_mynav .flexBox p{
		width: 100%;
		line-height: 200%;
		margin-bottom: 8vw;
	}
	#recruit_new_mynav .flexBox a{
		padding-top: 6vw;
		padding-bottom: 6vw;
		min-height: auto;
	}
	#recruit_new_mynav .flexBox a img{
		display: block;
	}
}

/*== 採用情報 キャリア採用募集要項 /recruit/career/index.html ========*/
#recruit_career_tab{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 110px auto;
}
#recruit_career_tab h2{
	display: block;
	max-width: 1176px;
	margin: 0 auto 50px auto;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.1em;
	padding-left: 55px;
	position: relative;
}
#recruit_career_tab h2::before{
	content: "";
	display: block;
	width: 30px;
	height: 50px;
	background: #4fbe00;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: 0;
	left: 10px;
}
#recruit_career_tab ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 25px 0;
}
#recruit_career_tab ul li{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	min-height: 3em;
	width: calc(100% / 5);
	padding: 5px 15px;
	text-align: center;
	font-weight: bold;
	font-size: 0.9375rem;
	letter-spacing: 0.1em;
	color: #009d37;
	line-height: 100%;
	border-right: #cccccc solid 1px;
	box-sizing: border-box;
	cursor: pointer;
}
#recruit_career_tab ul li.crr{
	color: #FFF;
	background: #009d37;
}
#recruit_career_cont{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
}
#recruit_career_cont > section.parts{
	display: none;
}
#recruit_career_cont > section.parts.crr{
	display: block;
}
#recruit_career_cont > section.parts h2{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.1em;
	padding-left: 55px;
	position: relative;
	margin-bottom: 38px;
}
#recruit_career_cont > section.parts h2::before{
	content: "";
	display: block;
	width: 30px;
	height: 50px;
	background: #4fbe00;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: 0;
	left: 10px;
}
#recruit_career_cont > section.parts hr{
	display: block;
	border: none;
	height: 2px;
	background: #cccccc;
	position: relative;
	margin-bottom: 25px;
}
#recruit_career_cont > section.parts hr::after{
	content: "";
	display: block;
	width: 160px;
	height: 2px;
	background: #4fbe00;
	position: absolute;
	left: 0;
	bottom: 0;
}
#recruit_career_cont > section.parts h3{
	display: block;
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 180%;
	margin-top: 40px;
	margin-bottom: 30px;
}
#recruit_career_cont > section.parts h4{
	display: block;
	font-weight: bold;
	font-size: 1.25rem;
	line-height: 150%;
	margin-top: 20px;
	margin-bottom: 10px;
}
#recruit_career_cont > section.parts section.blockTag{
	display: block;
	align-items: stretch;
	margin-bottom: 80px;
}
#recruit_career_cont section.blockTag > .mt-be-columns{
	border-top: #CCC solid 1px;
	margin-top: 30px;
}
#recruit_career_cont section.blockTag > .mt-be-columns + .mt-be-columns{
	margin-top: 0;
	border-top: none;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(1){
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	background: #f2fcec;
	font-size: 1.25rem;
	font-weight: bold;
	padding: 20px;
	width: 200px;
	border-bottom: #CCC solid 1px;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2){
	padding: 20px 40px;
	width: calc(100% - 200px);
	box-sizing: border-box;
	border-bottom: #CCC solid 1px;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) > :first-child{
	margin-top: 0;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) > :last-child{
	margin-bottom: 0;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table{
	border: none !important;
	border-color: transparent !important;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table td:nth-child(1){
	font-weight: bold;
	color: #231916;
	width: 10em !important;
	padding-right: 1em;
	font-size: 0.9375rem;
	vertical-align: top;
	text-align: left;
	padding-bottom: 5px;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table td:nth-child(2){
	width: calc(100% - 10em) !important;
	vertical-align: top;
	text-align: left;
	font-size: 0.9375rem;
	padding-bottom: 5px;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table td > :first-child{
	margin-top: 0;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table td > :last-child{
	margin-bottom: 0;
}
#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table td p{
	margin-bottom: 5px;
}
#recruit_career_cont ul{
	display: block;
	margin: 10px auto;
	max-width: 1176px;
}
#recruit_career_cont ul li{
	padding-left: 28px;
	margin-bottom: 10px;
	font-size: 0.9375rem;
	line-height: 180%;
	position: relative;
}
#recruit_career_cont ul li:last-child{
	margin-bottom: 0;
}
#recruit_career_cont ul li::before{
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #4fbe00;
	position: absolute;
	top: 0.5em;
	left: 0;
}
#recruit_career_entry{
	display: block;
	width: 100%;
	background: #eff7e6;
	padding: 60px 0 80px;
	margin-top: 60px;
}
#recruit_career_entry h2{
	display: block;
	max-width: 1176px;
	margin: 0 auto 50px auto;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.1em;
	padding-left: 55px;
	position: relative;
}
#recruit_career_entry h2::before{
	content: "";
	display: block;
	width: 30px;
	height: 50px;
	background: #4fbe00;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: 0;
	left: 10px;
}
#recruit_career_entry .flexBox{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
	gap: 0 50px;
}
#recruit_career_entry .flexBox a{
	display: block;
	width: 100%;
	max-width: 460px;
	min-height: 70px;
	font-size: 1.25rem;
	font-weight: bold;
	border-radius: 10px;
	background: url(/common/images/arrow_black.png) no-repeat #FFF right 20px center;
	padding: 18px 40px 18px 28px;
	border: #4cbe06 solid 3px;
	box-sizing: border-box;
}
#recruit_career_entry .flexBox p{
	width: calc(100% - 510px);
}
@media (min-width: 751px) { /* forPC */
	#recruit_career_tab ul li:nth-child(5n+1){
		border-left: #cccccc solid 1px;
	}
	#recruit_career_tab ul li{
		transition:all 0.3s ease;
	}
	#recruit_career_tab ul li:hover{
		color: #FFF;
		background: #009d37;
		transition:all 0.3s ease;
	}
	#recruit_career_entry .flexBox a{
		transition:all 0.3s ease;
	}
	#recruit_career_entry .flexBox a:hover{
		color: #009944;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#recruit_career_tab{
		padding-left: 5vw;
		padding-right: 5vw;
		margin-bottom: 12vw;
	}
	#recruit_career_tab h2{
		font-size: 1.875rem;
		padding-left: 36px;
		margin-bottom: 7vw;
	}
	#recruit_career_tab h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#recruit_career_tab ul{
		gap: 3vw 0;
	}
	#recruit_career_tab ul li{
		width: calc(100% / 2);
		padding: 4vw 2vw;
		font-size: 0.75rem;
	}
	#recruit_career_tab ul li:nth-child(2n+1){
		border-left: #cccccc solid 1px;
	}
	#recruit_career_cont{
		padding-left: 5vw;
		padding-right: 5vw;
	}
	#recruit_career_cont > section.parts h2{
		font-size: 1.875rem;
		padding-left: 36px;
	}
	#recruit_career_cont > section.parts h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#recruit_career_cont > section.parts hr::after{
		width: 20vw;
	}
	#recruit_career_cont > section.parts h3{
		font-size: 1.25rem;
		line-height: 160%
	}
	#recruit_career_cont > section.parts h4{
		font-size: 1.125rem;
		margin-bottom: 20px;
	}
	#recruit_career_cont section.blockTag > .mt-be-columns{
		flex-flow: column wrap;
		justify-content: flex-start;
		align-items: flex-start;
	}
	#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(1){
		width: 100%;
		padding: 4vw;
		font-size: 1.125rem;
		border-bottom: none;
	}
	#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2){
		padding: 5vw 3vw;
		width: 100%;
	}
	#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table,
	#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table tbody,
	#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table tr,
	#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table td,
	#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table th{
		display: block;
	}
	#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table td:nth-child(1){
		width: 100% !important;
	}
	#recruit_career_cont section.blockTag > .mt-be-columns > .mt-be-column:nth-child(2) table td:nth-child(2){
		width: 100% !important;
		padding-bottom: 15px;
	}
	#recruit_career_entry{
		padding: 15vw 5vw;
	}
	#recruit_career_entry h2{
		font-size: 1.875rem;
		padding-left: 36px;
		margin-bottom: 7vw;
	}
	#recruit_career_entry h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#recruit_career_entry .flexBox p{
		width: 100%;
		line-height: 200%;
		margin-bottom: 8vw;
	}
	#recruit_career_entry .flexBox a{
		padding-top: 10vw;
		padding-bottom: 10vw;
		font-size: 1rem;
		min-height: auto;
	}
}

/*== 採用情報 よくあるご質問 /recruit/qa/index.html ========*/
#recruit_qa_cont{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 110px auto;
}
#recruit_qa_cont h2{
	display: block;
	max-width: 1176px;
	margin: 0 auto 50px auto;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.1em;
	padding-left: 55px;
	position: relative;
}
#recruit_qa_cont h2::before{
	content: "";
	display: block;
	width: 30px;
	height: 50px;
	background: #4fbe00;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: 0;
	left: 10px;
}
#recruit_qa_cont .parts{
	margin-bottom: 5px;
}
#recruit_qa_cont .q_pats{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	background: url(/common/images/recruit-qa/icon_open.png) no-repeat #eff7e6 right 20px center / 20px auto;
	padding: 20px 50px 20px 20px;
	border-radius: 10px;
	cursor: pointer;
}
#recruit_qa_cont .q_pats.crr{
	background: url(/common/images/recruit-qa/icon_close.png) no-repeat #eff7e6 right 20px center / 20px auto;
}
#recruit_qa_cont .q_pats i{
	display: block;
	width: 60px;
	color: #FFF;
	font-size: 0.9375rem;
	font-weight: bold;
	font-style: normal;
	line-height: 100%;
	padding: 8px;
	margin-right: 16px;
	text-align: center;
	background: #4fbe00;
	border-radius: 4px;
}
#recruit_qa_cont .q_pats span{
	font-size: 0.9375rem;
	font-weight: bold;
	color: #000;
}
#recruit_qa_cont .a_pats{
	display: none;
}
#recruit_qa_cont .a_pats div{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 20px 20px 40px 20px;
	border-radius: 10px;
	cursor: pointer;
}
#recruit_qa_cont .a_pats i{
	display: block;
	width: 60px;
	color: #FFF;
	font-size: 0.9375rem;
	font-weight: bold;
	font-style: normal;
	line-height: 100%;
	padding: 8px;
	margin-right: 16px;
	text-align: center;
	background: #ff9626;
	border-radius: 4px;
}
#recruit_qa_cont .a_pats p{
	font-size: 0.9375rem;
	color: #000;
	padding-top: 0.2em;
	width: calc(100% - 100px);
}
@media (min-width: 751px) { /* forPC */
	#recruit_qa_cont .q_pats{
		transition:all 0.3s ease;
	}
	#recruit_qa_cont .q_pats:hover{
		box-shadow: 0 4px 10px rgba(0,0,0,0.2);
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#recruit_qa_cont{
		padding-left: 5vw;
		padding-right: 5vw;
	}
	#recruit_qa_cont h2{
		font-size: 1.875rem;
		padding-left: 36px;
	}
	#recruit_qa_cont h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#recruit_qa_cont .q_pats{
		display: block;
		margin-bottom: 3vw;
	}
	#recruit_qa_cont .q_pats i{
		width: 50px;
		margin-bottom: 2vw;
	}
	#recruit_qa_cont .q_pats span{
		letter-spacing: 0.05em;
	}
	#recruit_qa_cont .a_pats div{
		padding-top: 2vw;
		display: block;
	}
	#recruit_qa_cont .a_pats i{
		width: 50px;
		margin-bottom: 2vw;
	}
	#recruit_qa_cont .a_pats p{
		padding-top: 0;
		width: 100%;
		line-height: 180%;
	}
}


/*== トップメッセージ /message.html ========*/
#msgWrap{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 110px auto;
	box-sizing: border-box;
}
#msgWrap .topVisual img{
	display: block;
	width: 100%;
	margin-bottom: 50px;
}
#msgWrap .msgCont h2{
	display: block;
	margin: 0 auto 40px auto;
	font-size: 2.25rem;
	font-weight: bold;
	line-height: 150%;
	position: relative;
}
#msgWrap .msgCont p{
	margin: 30px auto;
	font-size: 0.9375rem;
	letter-spacing: 0.15em;
	line-height: 180%;
}
#msgWrap .name{
	display: block;
	width: 100%;
	max-width: 272px;
	margin-left: auto;
}
#msgWrap .name p{
	display: block;
	margin-bottom: 30px;
}
#msgWrap .name img{
	max-width: 100%;
}
@media (min-width: 751px) { /* forPC */
}
@media (max-width: 750px) { /* forSP */
	#msgWrap .msgCont{
		padding-left: 5vw;
		padding-right: 5vw;
	}
	#msgWrap .msgCont h2{
		font-size: 1.125rem;
	}
	#msgWrap .name{
		margin-right: 5vw;
		max-width: 200px;
	}
	#msgWrap .name p{
		font-size: 0.875rem;
		margin-bottom: 15px;
	}
}

/*== サミーネットワークスの魅力 appeal.html ========*/
/* 職場環境 */
#appeal_environment{
	display: block;
	margin-bottom: 376px;
}
#appeal_environment .bigTitle{
	margin-bottom: 125px;
}
#appeal_environment .bigTitle h2{
	font-size: 3.5rem;
	line-height: 1em;
}
#appeal_environment .sec1{
	display: block;
	width: 100%;
	margin-bottom: 111px;
}
#appeal_environment .sec1 .gridBox{
	display: grid;
	grid-template-columns: calc((100% - 1176px)/2) 478px 698px calc((100% - 1176px)/2) ;
	position: relative;
}
#appeal_environment .sec1 .gridBox::before{
	content: "";
	display: block;
	width: calc((100% - 1176px) / 2 + 748px);
	height: 726px;
	clip-path: polygon(0 0,100% 0, 100% 100%, 264px 100%);
	background: #4fbe00;
	position: absolute;
	right: 0;
	top: -98px;
	z-index: -1;
}
#appeal_environment .sec1 .gridBox .text{
	grid-row: 1/2;
	grid-column: 2/3;
	padding-top: 83px;
}
#appeal_environment .sec1 .gridBox .text h3{
	display: block;
	font-size: 3.75rem;
	font-weight: bold;
	line-height: 4.375rem;
	margin-bottom: 45px;
	letter-spacing: 0.06em;
}
#appeal_environment .sec1 .gridBox .text .read{
	display: block;
	font-size: 1.75rem;
	line-height: 130%;
	letter-spacing: 0.03em;
}
#appeal_environment .sec1 .gridBox img.img1{
	display: block;
	grid-row: 1/2;
	grid-column: 3/5;
	width: 100%;
	height: 530px;
	object-fit: cover;
	box-shadow: 20px 20px 30px rgba(0,0,0,0.16);
}
#appeal_environment .sec1 .bottomImg{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 23px;
	width: 100%;
	max-width: 1176px;
	margin: -81px auto 0 auto;
	z-index: 2;
	position: relative;
}
#appeal_environment .sec1 .bottomImg img{
	box-shadow: 20px 20px 30px rgba(0,0,0,0.16);
}
#appeal_environment .sec2{
	margin-bottom: 142px;
}
#appeal_environment .sec2 .gridBox{
	display: grid;
	grid-template-columns: calc((100% - 1176px)/2) 698px 102px 376px calc((100% - 1176px)/2) ;
	position: relative;
}
#appeal_environment .sec2 .gridBox::before{
	content: "";
	display: block;
	width: calc((100% - 1176px) / 2 + 598px);
	height: 726px;
	clip-path: polygon(0 0,calc(100% - 265px) 0, 100% 100%, 0 100%);
	background: #a6d756;
	position: absolute;
	left: 0;
	top: -92px;
	z-index: -1;
}
#appeal_environment .sec2 .gridBox img.img4{
	display: block;
	grid-column: 1/3;
	width: 100%;
	height: inherit;
	object-fit: cover;
	box-shadow: 20px 20px 30px rgba(0,0,0,0.16);
}
#appeal_environment .sec2 .gridBox .text{
	grid-row: 1/2;
	grid-column: 4/5;
	padding-top: 83px;
}
#appeal_environment .sec2 .gridBox .text h3{
	display: block;
	font-size: 2.4375rem;
	font-weight: bold;
	line-height: 3rem;
	margin-bottom: 45px;
	letter-spacing: 0.06em;
}
#appeal_environment .sec2 .gridBox .text .read{
	display: block;
	font-size: 1.75rem;
	line-height: 130%;
	letter-spacing: 0.03em;
}
#appeal_environment .sec2 .bottomImg{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
	align-items: flex-start;
	gap: 23px;
	width: 100%;
	max-width: 1176px;
	margin: -81px auto 0 auto;
	z-index: 2;
	position: relative;
}
#appeal_environment .sec2 .bottomImg img{
	box-shadow: 20px 20px 30px rgba(0,0,0,0.16);
	max-width: 100%;
}
#appeal_environment .sec2 .bottomImg.min img:nth-child(1){
	width: 213px;
}
#appeal_environment .sec2 .bottomImg.min img:nth-child(2){
	width: 332px;
}
#appeal_environment .sec3{
	display: grid;
	height: 507px;
	grid-template-columns: calc((100% - 1176px)/2) 516px 660px calc((100% - 1176px)/2) ;
	margin-bottom: 70px;
	position: relative;
}
#appeal_environment .sec3::before{
	content: "";
	display: block;
	width: calc((100% - 1176px) / 2 + 747px);
	height: 726px;
	clip-path: polygon(0 0,100% 0, 100% 100%, 264px 100%);
	background: #4fbe00;
	position: absolute;
	right: 0;
	top: -112px;
	z-index: -1;
}
#appeal_environment .sec3 .text{
	display: block;
	grid-column: 2/3;
	width: 100%;
	height: inherit;
	padding-top: 103px;
	padding-left: 13px;
}
#appeal_environment .sec3 .text h3{
	display: block;
	font-size: 3.75rem;
	font-weight: bold;
	line-height: 4rem;
	margin-bottom: 36px;
	letter-spacing: 0.03em;
}
#appeal_environment .sec3 .text .read{
	display: block;
	font-size: 1.75rem;
	line-height: 130%;
	letter-spacing: 0.03em;
}
#appeal_environment .sec3 img.img5{
	display: block;
	grid-column: 3/5;
	width: 100%;
	height: inherit;
	object-fit: cover;
	box-shadow: 20px 20px 30px rgba(0,0,0,0.16);
}
#appeal_environment .sec4{
	display: block;
	width: 100%;
	height: 462px;
	position: relative;
}
#appeal_environment .sec4::before{
	content: "";
	display: block;
	width: calc((100% - 1176px) / 2 + 598px);
	height: 580px;
	clip-path: polygon(0 0,calc(100% - 185px) 0, 100% 100%, 0 100%);
	background: #a6d756;
	position: absolute;
	left: 0;
	top: -70px;
	z-index: -1;
}
#appeal_environment .sec4 img.img6{
	position: absolute;
	top: 0;
	left: calc(50% - 98px);
	box-shadow: 20px 20px 30px rgba(0,0,0,0.16);
}
#appeal_environment .sec4 img.img7{
	position: absolute;
	top: 98px;
	left: calc(50% - 474px);
	box-shadow: 20px 20px 30px rgba(0,0,0,0.16);
}
#appeal_environment .sec4 h3{
	display: block;
	position: absolute;
	left: calc(50% + 200px);
	bottom: 14px;
	font-size: 1.75rem;
	font-weight: bold;
	letter-spacing: 0.05em;
}

/* 教育制度 */
#appeal_education{
	position: relative;
	margin-bottom: 120px;
}
#appeal_education::before{
	content: "";
	display: block;
	width: calc(50% + 285px);
	height: calc( 100% + 102px);
	background: #eff7e6;
	border-radius: 0 32px 32px 0;
	position: absolute;
	top: -155px;
	left: 0;
	z-index: -1;
}
#appeal_education .bigTitle{
	margin-bottom: 55px;
}
#appeal_education .bigTitle h2{
	font-size: 3.5rem;
	line-height: 1em;
}
#appeal_education .nomalFlex{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 75px auto;
}
#appeal_education .nomalFlex.flex4{
	margin-bottom: 0;
}
#appeal_education .nomalFlex .text{
	display: block;
	width: calc(100% - 576px);
	box-sizing: border-box;
}
#appeal_education .nomalFlex.flex1 .text{
	padding-bottom: 55px;
}
#appeal_education .nomalFlex.flex3 .text{
	padding-bottom: 0;
}
#appeal_education .nomalFlex.flex4 .text{
	padding-bottom: 25px;
	padding-left: 30px;
}
#appeal_education .nomalFlex  .text:nth-child(2){
	padding-left: 105px;
}
#appeal_education .nomalFlex .text h3{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 120%;
}
#appeal_education .nomalFlex .text .read{
	display: block;
	font-weight: bold;
	font-size: 1.5rem;
	margin-top: 35px;
	line-height: 150%;
}
#appeal_education .nomalFlex p.img{
	margin: 0 auto;
}
#appeal_education .collegeFlex{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin: 0 auto 185px auto;
	width: 100%;
	max-width: 1176px;
}
#appeal_education .collegeFlex h3{
	display: block;
	width: 100%;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 120%;
}
#appeal_education .collegeFlex .read{
	display: block;
	width: 100%;
	font-weight: bold;
	font-size: 1.5rem;
	margin-top: 15px;
	margin-bottom: 40px;
	line-height: 150%;
}
#appeal_education .collegeFlex ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	width: calc(100% - 300px);
	gap: 14px 12px;
}
#appeal_education .collegeFlex ul li{
	display: block;
	width: calc((100% - 36px) / 4);
	background: #FFF;
	border: #4fbe00 solid 1px;
	text-align: center;
	padding: 13px 10px;
	font-size: 1.125rem;
	border-radius: 4px;
	box-sizing: border-box;
}

/* その他 */
#appeal_other .bigTitle{
	margin-bottom: 68px;
}
#appeal_other .bigTitle h2{
	font-size: 3.5rem;
	line-height: 1em;
}
#appeal_other .otherSection{
	display: block;
	padding-top: 40px;
	padding-bottom: 50px;
}
#appeal_other .otherSection.working{
	background: url(/common/images/appeal/other_bg1.jpg) no-repeat center center / cover;
}
#appeal_other .otherSection.child{
	background: url(/common/images/appeal/other_bg2.jpg) no-repeat center center / cover;
}
#appeal_other .otherSection.welfare{
	background: url(/common/images/appeal/other_bg3.jpg) no-repeat center center / cover;
}
#appeal_other .otherSection .titleFrame{
	display: grid;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 22px auto;
	grid-template-columns: calc(100% - 376px) 376px;
	grid-template-rows: 82px 56px;
}
#appeal_other .otherSection .titleFrame h3{
	grid-row: 1/2;
	grid-column: 1/2;
	font-weight: bold;
	font-size: 2rem;
	line-height: 100%;
	padding-top: 30px;
	padding-left: 35px;
}
#appeal_other .otherSection .titleFrame small{
	grid-row: 2/3;
	grid-column: 1/2;
	padding-left: 35px;
	margin-left: 11px;
}
#appeal_other .otherSection .titleFrame small span{
	display: inline-block;
	background: #FFF;
	font-size: 1rem;
	font-weight: bold;
	font-family: 'Roboto', sans-serif;
	line-height: 100%;
	padding: 7px 27px;
	letter-spacing: 0.05em;
	position: relative;
}
#appeal_other .otherSection .titleFrame small span::before{
	content: "";
	display: block;
	width: 12px;
	height: 100%;
	background: #FFF;
	clip-path: polygon(0 0 , 100% 0 , 100% 100% , 11px 100%);
	position: absolute;
	top: 0;
	left: -11px;
}
#appeal_other .otherSection .titleFrame small span::after{
	content: "";
	display: block;
	width: 12px;
	height: 100%;
	background: #FFF;
	clip-path: polygon(0 0 , 1px 0 , 100% 100% , 0 100%);
	position: absolute;
	top: 0;
	right: -11px;
}
#appeal_other .otherSection .titleFrame img{
	display: block;
	grid-row: 1/3;
	grid-column: 2/3;
	width: 100%;
	max-width: 376px;
}
#appeal_other .otherSection .bottomBox{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	max-width: 1176px;
	background: rgba(255,255,255,0.9);
	border-radius: 8px;
	padding: 40px 35px 40px 40px;
	margin: 0 auto;
	box-sizing: border-box;
}
#appeal_other .otherSection .bottomBox .parts{
	flex-basis: 32%;
}
#appeal_other .otherSection .bottomBox .parts h4{
	font-weight: bold;
	font-size: 1.25rem;
	padding-left: 22px;
	padding-top: 2px;
	padding-bottom: 5px;
	margin-bottom: 10px;
	position: relative;
}
#appeal_other .otherSection .bottomBox .parts h4::before{
	content: "";
	display: block;
	width: 17px;
	height: 30px;
	background: #4fbe00;
	clip-path: polygon(0 0 , 6px 0, 100% 100% , calc(100% - 6px) 100%);
	position: absolute;
	top: 0;
	left: 0;
}
#appeal_other .otherSection .bottomBox .parts ul{
	padding-top: 3px;
}
#appeal_other .otherSection .bottomBox .parts p,
#appeal_other .otherSection .bottomBox .parts li{
	font-size: 1rem;
	letter-spacing: 0.1em;
}
#appeal_other .otherSection .bottomBox .parts p span,
#appeal_other .otherSection .bottomBox .parts li span{
	background: linear-gradient(transparent 0%, transparent 56%, #ffef00 57%, #ffef00 0%);
}
#appeal_other .otherSection .bottomBox .parts li{
	padding-left: 22px;
	position: relative;
}
#appeal_other .otherSection .bottomBox .parts li:not(:last-child){
	margin-bottom: 8px;
}
#appeal_other .otherSection .bottomBox .parts li::before{
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	border: #4fbe00 solid 1px;
	position: absolute;
	top: 6px;
	left: 0;
}
#appeal_other .etc{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 30px 2%;
	width: 100%;
	max-width: 1176px;
	margin: 50px auto 0 auto;
	padding: 40px 25px;
	border-top: #CCC solid 1px;
	border-bottom: #CCC solid 1px;
	box-sizing: border-box;
}
#appeal_other .etc h4{
	display: block;
	flex-basis: 32%;
	font-weight: bold;
	font-size: 1.25rem;
	padding-left: 22px;
	padding-top: 1px;
	padding-bottom: 4px;
	letter-spacing: 0.05em;
	position: relative;
}
#appeal_other .etc h4::before{
	content: "";
	display: block;
	width: 17px;
	height: 30px;
	background: #4fbe00;
	clip-path: polygon(0 0 , 6px 0, 100% 100% , calc(100% - 6px) 100%);
	position: absolute;
	top: 0;
	left: 0;
}
@media (min-width: 751px) { /* forPC */
}
@media (max-width: 750px) { /* forSP */
	/* 職場環境 */
	#appeal_environment{
		margin-bottom: 47vw;
	}
	#appeal_environment .bigTitle{
		margin-bottom: 5vw;
		min-height: 18vw;
	}
	#appeal_environment .sec1{
		padding: 7vw 0 0 5vw;
		margin-bottom: 22vw;
		box-sizing: border-box;
	}
	#appeal_environment .sec1 .gridBox{
		display: flex;
		flex-flow: column wrap;
		justify-content: flex-start;
		align-items: flex-start;
		grid-template-columns: none;
	}
	#appeal_environment .sec1 .gridBox::before{
		width: 50vw;
		height: 140vw;
		clip-path: polygon(0 0,100% 0, 100% 100%, 100% 100%);
		top: -7vw;
	}
	#appeal_environment .sec1 .gridBox .text{
		padding-top: 5vw;
	}
	#appeal_environment .sec1 .gridBox .text h3{
		font-size: 2.5rem;
		line-height: 3.125rem;
		margin-bottom: 5vw;
	}
	#appeal_environment .sec1 .gridBox .text .read{
		font-size: 1.125rem;
		line-height: 150%;
		margin-bottom: 9vw;
	}
	#appeal_environment .sec1 .gridBox img.img1{
		width: 100%;
		height: 55vw;
	}
	#appeal_environment .sec1 .bottomImg{
		justify-content: space-between;
		gap: 0;
		margin: 4vw auto 0 auto;
	}
	#appeal_environment .sec1 .bottomImg img:nth-child(1){
		max-width: 55.2vw;
	}
	#appeal_environment .sec1 .bottomImg img:nth-child(2){
		max-width: 35.4vw;
	}
	#appeal_environment .sec2{
		margin-bottom: 14.5vw;
	}
	#appeal_environment .sec2 .gridBox{
		display: flex;
		flex-flow: row wrap;
		justify-content: flex-start;
		align-content: flex-start;
		height: auto;
		padding-right: 5vw;
	}
	#appeal_environment .sec2 .gridBox::before{
		width: 50vw;
		height: 180.5vw;
		clip-path: polygon(0 0, 0 0, 100% 100%, 0 100%);
		top: 0;
	}
	#appeal_environment .sec2 .gridBox img.img4{
		height: 60.5vw;
		order: 2;
	}
	#appeal_environment .sec2 .gridBox .text{
		text-align: right;
		order: 1;
		width: 100%;
		height: auto;
		padding-top: 0;
	}
	#appeal_environment .sec2 .gridBox .text h3{
		font-size: 1.875rem;
		line-height: 2.375rem;
		margin-bottom: 5.3vw;
	}
	#appeal_environment .sec2 .gridBox .text .read{
		font-size: 1.125rem;
		line-height: 1.75rem;
		margin-bottom: 8.5vw;
	}
	#appeal_environment .sec2 .bottomImg{
		justify-content: space-between;
		padding-right: 5vw;
		gap: 0;
		margin: 4vw auto 0 auto;
	}
	#appeal_environment .sec2 .bottomImg img:nth-child(1){
		max-width: 35.4vw;
	}
	#appeal_environment .sec2 .bottomImg img:nth-child(2){
		max-width: 55.2vw;
	}
	#appeal_environment .sec3{
		display: block;
		height: auto;
		padding-left: 5vw;
		margin-bottom: 26vw;
		box-sizing: border-box;
	}
	#appeal_environment .sec3::before{
		width: 50vw;
		height: 140vw;
		clip-path: polygon(0 0,100% 0, 100% 100%, 100% 100%);
		top: 0;
	}
	#appeal_environment .sec3 .text{
		display: block;
		height: auto;
		padding-top: 15vw;
		padding-left: 0;
	}
	#appeal_environment .sec3 .text h3{
		font-size: 2.5rem;
		line-height: 3rem;
		margin-bottom: 5vw;
	}
	#appeal_environment .sec3 .text .read{
		font-size: 1.125rem;
		line-height: 150%;
		margin-bottom: 9vw;
	}
	#appeal_environment .sec3 img.img5{
		height: 60.5vw;
	}
	#appeal_environment .sec4{
		display: flex;
		flex-flow: column wrap;
		justify-content: flex-start;
		align-items: flex-start;
		height: auto;
		padding-left: 5vw;
		padding-right: 5vw;
		box-sizing: border-box;
	}
	#appeal_environment .sec4::before{
		width: 46vw;
		height: 129vw;
		clip-path: polygon(0 0,0 0, 100% 100%, 0 100%);
		top: 20vw;
	}
	#appeal_environment .sec4 img.img6,
	#appeal_environment .sec4 img.img7{
		display: block;
		width: 100%;
		position: relative;
		top: auto;
		left: auto;
	}
	#appeal_environment .sec4 img.img6{
		order: 2;
		margin-bottom: 4vw;
	}
	#appeal_environment .sec4 img.img7{
		order: 1;
		margin-bottom: 9vw;
	}
	#appeal_environment .sec4 h3{
		display: block;
		position: relative;
		left: auto;
		bottom: auto;
		font-size: 1.25rem;
		width: 100%;
		text-align: center;
		margin-top: 5vw;
		order: 3;
	}

	/* 教育制度 */
	#appeal_education{
		position: relative;
		margin-bottom: 22vw;
	}
	#appeal_education::before{
		width: 68.5vw;
		height: 100%;
		top: -15.8vw;
	}
	#appeal_education .bigTitle{
		margin-bottom: 14vw;
	}
	#appeal_education .nomalFlex{
		display: flex;
		flex-flow: column wrap;
		justify-content: flex-start;
		align-items: flex-start;
		margin: 0 auto 21vw auto;
		padding-left: 5vw;
		box-sizing: border-box;
	}
	#appeal_education .nomalFlex .text{
		width: 100%;
	}
	#appeal_education .nomalFlex  .text:nth-child(2){
		padding-left: 0;
	}
	#appeal_education .nomalFlex .text h3{
		font-size: 1.875rem;
		line-height: 2.625rem;
	}
	#appeal_education .nomalFlex .text .read{
		font-weight: normal;
		font-size: 1.1875rem;
		margin-top: 4.5vw;
	}
	#appeal_education .nomalFlex p.img{
		max-width: 100%;
	}
	#appeal_education .nomalFlex p.img img{
		max-width: 100%;
	}
	#appeal_education .nomalFlex.flex1 .text{
		padding-bottom: 8vw;
	}
	#appeal_education .nomalFlex.flex1 p.img{
		margin: 0;
	}
	#appeal_education .nomalFlex.flex1 p.img img{
		max-width: 90vw;
	}
	#appeal_education .nomalFlex.flex3{
		margin-bottom: 16vw;
	}
	#appeal_education .nomalFlex.flex3 .text{
		padding-bottom: 8vw;
		order: 1;
	}
	#appeal_education .nomalFlex.flex3 p.img{
		order: 2;
	}
	#appeal_education .nomalFlex.flex3 p.img img{
		width: 100%;
		height: 60vw;
		object-fit: cover;
		object-position: left bottom;
	}
	#appeal_education .nomalFlex.flex4 .text{
		padding-bottom: 8vw;
		padding-left: 0;
	}
	#appeal_education .nomalFlex.flex4 p.img img{
		width: 100%;
		height: 61vw;
		object-fit: cover;
	}
	#appeal_education .collegeFlex{
		display: block;
		margin: 0 auto 16vw auto;
		padding-left: 5vw;
		padding-right: 5vw;
		box-sizing: border-box;
	}
	#appeal_education .collegeFlex h3{
		font-size: 1.875rem;
		line-height: 2.625rem;
	}
	#appeal_education .collegeFlex .read{
		font-weight: normal;
		font-size: 1.1875rem;
		margin-top: 4.5vw;
		margin-bottom: 7vw;
	}
	#appeal_education .collegeFlex p.img{
		display: block;
		width: 100%;
		text-align: center;
		background: #FFF;
		padding-top: 5vw;
		padding-bottom: 5vw;
		margin-bottom: 5vw;
	}
	#appeal_education .collegeFlex p.img img{
		max-width: 50vw;
	}
	#appeal_education .collegeFlex ul{
		width: 100%;
		gap: 2vw;
	}
	#appeal_education .collegeFlex ul li{
		width: calc((100% - 2vw) / 2);
		padding: 2.5vw;
		font-size: 1rem;
	}

	/* その他 */
	#appeal_other{
		overflow: hidden;
	}
	#appeal_other .bigTitle{
		margin-bottom: 11vw;
	}
	#appeal_other .otherSection{
		padding: 10vw 0 14vw 0;
	}
	#appeal_other .otherSection.working{
		background-position: center top;
	}
	#appeal_other .otherSection .titleFrame{
		display: block;
		margin: 0 auto 10vw auto;
	}
	#appeal_other .otherSection .titleFrame h3{
		width: 90vw;
		margin-left: auto;
		margin-right: auto;
		min-height: 18vw;
		font-size: 2rem;
		padding-top: 5vw;
		padding-left: 0;
	}
	#appeal_other .otherSection .titleFrame small{
		width: 90vw;
		margin-left: 5vw;
		padding-left: 3vw;
	}
	#appeal_other .otherSection .titleFrame small span{
		font-size: 0.875rem;
		line-height: 1.375rem;
		padding: 3px 0.5em;
	}
	#appeal_other .otherSection .titleFrame img{
		display: block;
		margin-top: 10vw;
		width: 100%;
		max-width: none;
	}
	#appeal_other .otherSection .bottomBox{
		display: block;
		padding: 8vw 6vw;
		max-width: 90vw;
	}
	#appeal_other .otherSection .bottomBox .parts{
		flex-basis: auto;
	}
	#appeal_other .otherSection .bottomBox .parts:not(:last-child){
		margin-bottom: 8vw;
	}
	#appeal_other .otherSection .bottomBox .parts h4{
		font-size: 1.125rem;
		padding-top: 0;
		padding-bottom: 7px;
		margin-bottom: 3vw;
	}
	#appeal_other .otherSection .bottomBox .parts ul{
		padding-top: 0;
	}
	#appeal_other .etc{
		display: block;
		max-width: 90vw;
		margin: 10vw auto 0 auto;
		padding: 10vw 6vw;
	}
	#appeal_other .etc h4{
		font-size: 1.125rem;
	}
	#appeal_other .etc h4:not(:last-child){
		margin-bottom: 7vw;
	}
}

/*== 会社概要 company.html ========*/
#company_head_msg{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
}
#company_head_msg .flexbox{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 45px 60px;
	margin-bottom: 80px;
}
#company_head_msg .flexbox .topImg{
	display: block;
	width: 763px;
	max-width: 65%;
	border-radius: 15px;
	overflow: hidden;
}
#company_head_msg .flexbox .topImg img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 15px;
}
#company_head_msg .flexbox .text{
	display: block;
	width: calc(100% - 823px);
}
#company_head_msg .flexbox .text p.title{
	display: block;
	padding-left: 36px;
	font-size: 1.75rem;
	font-weight: bold;
	letter-spacing: 0.15em;
	margin-bottom: 25px;
	position: relative;
}
#company_head_msg .flexbox .text p.title svg{
	width: 21px;
	height: 21px;
	position: absolute;
	top: 0.15em;
	left: 0;
}
#company_head_msg .flexbox .text p.title svg path{
	fill: #4cbe06;
}
#company_head_msg .flexbox .text p:not(.title){
	font-size: 0.9375rem;
	line-height: 180%;
	letter-spacing: 0.1em;
}
#company_ankerTab{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin-bottom: 86px;
}
#company_ankerTab a{
	display: block;
	width: 340px;
	border: #0080cc solid 3px;
	border-radius: 10px;
	font-weight: bold;
	font-size: 1.1875rem;
	letter-spacing: 0.1em;
	padding: 18px 40px;
	text-align: center;
	background: url(/common/images/arow_down_blue.png) no-repeat right 20px center / 16px auto;
	box-sizing: border-box;
}
#company_summary{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 106px auto;
}
#company_summary > h2{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.05em;
	padding-left: 43px;
	position: relative;
	margin-bottom: 56px;
}
#company_summary > h2::before{
	content: "";
	display: block;
	width: 32px;
	height: 50px;
	background: #0080cc;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: -2px;
	left: 0;
}
#company_summary > ul{
	display: block;
	width: 100%;
}
#company_summary > ul li:first-child{
	border-top: #CCC solid 1px;
}
#company_summary > ul li{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	width: 100%;
	border-bottom: #CCC solid 1px;
	font-size: 0.9375rem;
	line-height: 180%;
}
#company_summary > ul li .title{
	display: block;
	width: 200px;
	padding: 18px 20px;
	background: #f2faff;
	font-weight: bold;
}
#company_summary > ul li .content{
	color: #231916;
	padding: 18px 40px;
	width: calc(100% - 200px);
}
#company_summary > ul li .content strong{
	font-size: inherit;
}
#company_summary > ul li .content a[href$=".pdf"]{
	display: block;
	padding-left: 26px;
	margin-top: 5px;
	background: url(/common/images/icon_pdf.png) no-repeat left top 2px  / 18px auto;
}
#company_access{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
	line-height: 180%;
}
#company_access > h2{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.05em;
	padding-left: 43px;
	position: relative;
	margin-bottom: 48px;
}
#company_access > h2::before{
	content: "";
	display: block;
	width: 32px;
	height: 50px;
	background: #0080cc;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: -2px;
	left: 0;
}
#company_access hr{
	display: block;
	border: none;
	height: 2px;
	background: #cccccc;
	position: relative;
	margin-bottom: 25px;
}
#company_access hr::before{
	content: "";
	display: block;
	width: 160px;
	height: 2px;
	background: #0080cc;
	position: absolute;
	left: 0;
	bottom: 0;
}
#company_access h3{
	display: block;
	width: 100%;
	font-weight: bold;
	font-size: 1.5rem;
	margin-bottom: 25px;
	position: relative;
}
#company_access ul{
	display: block;
	margin: 30px auto;
	max-width: 1176px;
}
#company_access ul li{
	padding-left: 30px;
	margin-bottom: 3px;
	line-height: 180%;
	position: relative;
}
#company_access ul li:last-child{
	margin-bottom: 0;
}
#company_access ul li::before{
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #0080cc;
	position: absolute;
	top: 0.5em;
	left: 0;
}
#company_access img.mapImg{
	max-width: 100%;
	border-radius: 10px;
	margin-bottom: 30px;
}
#company_access .access-text-area{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#company_access .mapBtn{
	display: block;
	font-size: 0.875rem;
	font-weight: bold;
	border-radius: 10px;
	border: #0080cc solid 2px;
	padding: 6px 40px 6px 25px;
	background:url(/common/images/icon_target.png) no-repeat right 10px center / 18px auto;
}
#company_governanceBnr{
	display: block;
	text-align: center;
}
#company_governanceBnr a{
	display: inline-block;
	margin: 80px auto 0 auto;
}
#company_governanceBnr a img{
	object-fit: contain;
	width: 100%;
	max-width: 800px;
}
@media (min-width: 751px) { /* forPC */
	#company_head_msg .flexbox .topImg img{
		transition:all 0.3s ease;
	}
	#company_head_msg .flexbox .topImg:hover img{
		transform: scale(1.05);
		transition:all 0.3s ease;
	}
	#company_head_msg .flexbox a:not(.topImg){
		transition:all 0.3s ease;
	}
	#company_head_msg .flexbox a:not(.topImg):hover{
		color: #009944;
		transition:all 0.3s ease;
	}
	#company_head_msg .flexbox a:not(.topImg) svg path{
		transition:all 0.3s ease;
	}
	#company_head_msg .flexbox a:not(.topImg):hover svg path{
		fill: #000;
		transition:all 0.3s ease;
	}
	#company_ankerTab a{
		transition:all 0.3s ease;
	}
	#company_ankerTab a:hover{
		color: #0080cc;
		border-color: #000;
		transition:all 0.3s ease;
	}
	#company_summary > ul li .content a{
		transition:all 0.3s ease;
	}
	#company_summary > ul li .content a:hover{
		color: #0080cc;
		transition:all 0.3s ease;
	}
	#company_access .access-text-area p.leftText{
		max-width: calc(100% - 200px);
	}
	#company_access .mapBtn{
		transition:all 0.3s ease;
	}
	#company_access .mapBtn:hover{
		color: #0080cc;
		border-color: #000;
		transition:all 0.3s ease;
	}
	#company_governanceBnr a img{
		transition:all 0.3s ease;
	}
	#company_governanceBnr a:hover img{
		transform: scale(1.05);
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#company_head_msg .flexbox{
		display: block;
		padding-left: 5vw;
		padding-right: 5vw;
		margin-bottom: 20vw;
	}
	#company_head_msg .flexbox .topImg{
		width: 100%;
		max-width: 100%;
		margin-bottom: 6vw;
	}
	#company_head_msg .flexbox .topImg img{
		display: block;
		object-fit: contain;
		width: 100%;
	}
	#company_head_msg .flexbox .text{
		width: 100%;
	}
	#company_head_msg .flexbox .text p.title{
		font-size: 1.25rem;
		background-position: left top 0.15em;
		margin-bottom: 4vw;
	}
	#company_summary > h2{
		font-size: 1.875rem;
		padding-left: 36px;
	}
	#company_summary > h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#company_ankerTab{
		padding: 0 5vw;
		margin-bottom: 10vw;
		gap: 4vw;
	}
	#company_ankerTab a{
		width: calc((100% - 4vw) / 2);
		font-size: 1rem;
		padding: 24px 40px 24px 20px;
		text-align: left;
	}
	#company_summary{
		padding: 0 5vw;
		margin: 0 auto 30vw auto;
	}
	#company_summary > h2{
		font-size: 1.75rem;
		padding-left: 38px;
		margin-bottom: 8vw;
	}
	#company_summary > h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	company_summary > ul li{
		font-size: 1rem;
	}
	#company_summary > ul li .title{
		width: 100%;
		padding: 10px 20px;
	}
	#company_summary > ul li .content{
		padding: 16px 20px;
		width: 100%;
	}
	#company_summary > ul li .content a[href$=".pdf"]{
		background-position: left top 5px;
	}
	#company_access{
		padding: 0 5vw;
	}
	#company_access > h2{
		font-size: 1.75rem;
		padding-left: 38px;
		margin-bottom: 8vw;
	}
	#company_access > h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#company_access hr::before{
		width: 20vw;
	}
	#company_access h3{
		font-size: 1.125rem;
	}
	#company_access .mapBtn{
		width: 100%;
		text-align: center;
		padding: 10px 40px 10px 25px;
		margin-top: 20px;
	}
	#company_governanceBnr{
		padding: 0 5vw;
	}
	#company_governanceBnr a{
		margin: 40px auto 0 auto;
	}
}

/*== 個人情報保護方針・個人情報の取り扱いについて  ========*/
#privacy_coverImg img{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 80px auto;
}
#privacy_contWrap{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 80px auto;
}
#privacy_contWrap .topName{
	text-align: right;
	font-weight: bold;
	font-size: 0.9375rem;
	margin-bottom: 30px;
}
#privacy_contWrap p{
	font-size: 1rem;
	line-height: 180%;
	margin-top: 30px;
	margin-bottom: 20px;
}
#privacy_contWrap h2{
	margin-top: 35px;
	font-weight: bold;
	font-size: 1.5625rem;
	letter-spacing: 0.08em;
}
#privacy_contWrap h3{
	font-weight: bold;
	font-size: 1.0625rem;
	letter-spacing: 0.08em;
	padding: 5px 3px 5px 10px;
	border-left: #4fbe00 solid 1px;
	margin-top: 30px;
	margin-bottom: 25px;
}
#privacy_contWrap td h3{
	border-left: none;
	padding: 0;
	font-size: 1.25rem;
	margin-top: 30px;
	margin-bottom: 0;
}
#privacy_contWrap td h3:first-child{
	margin-top: 0;
}
#privacy_contWrap h4{
	display: block;
	border-top: #CCC solid 1px;
	background: #f2fcec;
	padding: 15px 20px;
	font-size: 1rem;
	margin-top: 50px;
	margin-bottom: 20px;
	font-weight: bold;
}
#privacy_contWrap h4 small{
	font-size: 0.75rem;
	font-weight: normal;
	margin-left: 1em;
}
#privacy_contWrap h5{
	display: block;
	font-weight: bold;
	font-size: 1rem;
	margin-top: 20px;
	margin-bottom: 15px;
}
#privacy_contWrap hr{
	display: block;
	margin-top: 80px;
	margin-bottom: 20px;
	border: none;
	height: 2px;
	background: #cccccc;
	position: relative;
}
#privacy_contWrap hr::after{
	content: "";
	display: block;
	width: 160px;
	height: 2px;
	background: #4fbe00;
	position: absolute;
	left: 0;
	bottom: 0;
}
#privacy_contWrap .border2{
	display: block;
	background: #cccccc;
	width: 100%;
	height: 1px;
}
#privacy_contWrap .ind{
	padding-left: 20px;
	padding-right: 20px;
}
#privacy_contWrap ul{
	display: block;
	margin: 10px auto;
	max-width: 1176px;
}
#privacy_contWrap ul li{
	padding-left: 28px;
	margin-bottom: 10px;
	font-size: 0.9375rem;
	line-height: 180%;
	position: relative;
}
#privacy_contWrap ul li:last-child{
	margin-bottom: 0;
}
#privacy_contWrap ul li::before{
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #4fbe00;
	position: absolute;
	top: 0.5em;
	left: 0;
}
#privacy_contWrap table.type01{
	margin-top: 40px;
	width: 100%;
}
#privacy_contWrap table.type01 th,
#privacy_contWrap table.type01 td{
	border-top: #CCC solid 1px;
	text-align: left;
	vertical-align: middle;
	box-sizing: border-box;
}
#privacy_contWrap table.type01 th{
	background: #f2fcec;
	font-size: 1rem;
	font-weight: bold;
	width: 200px;
	padding: 20px;
}
#privacy_contWrap table.type01.thVtop th{
	vertical-align: top;
}
#privacy_contWrap table.type01 td{
	font-size: 0.9375rem;
	padding: 20px 20px 20px 40px;
}
#privacy_contWrap.policy table.type01 td{
	padding: 15px 20px;
	line-height: 180%;
}
#privacy_contWrap.policy table.type01 td{
	font-size: 1rem;
}
#privacy_contWrap table.type01 td p{
	margin-top: 10px;
}
#privacy_contWrap table.type01 td small{
	display: block;
	font-size: 0.75rem;
	margin-top: 5px;
}
#privacy_contWrap table.type02{
	font-size: 0.9375rem;
	margin-top: 40px;
	width: 100%;
}
#privacy_contWrap table.type02 th,
#privacy_contWrap table.type02 td{
	border-top: #CCC solid 1px;
	text-align: left;
	vertical-align: middle;
	box-sizing: border-box;
}
#privacy_contWrap table.type02 th{
	background: #f2fcec;
	font-weight: bold;
	width: 50px;
	padding: 20px;
	vertical-align: top;
}
#privacy_contWrap table.type02 td{
	padding: 15px 20px;
	line-height: 180%;
}
#privacy_contWrap table.type02 td p{
	margin-top: 10px;
}
#privacy_contWrap table.type02 td small{
	display: block;
	font-size: 0.75rem;
	margin-top: 5px;
}
#privacy_contWrap table.type02 tr:last-child th,
#privacy_contWrap table.type02 tr:last-child td{
	border-bottom: #CCC solid 1px;
}
#privacy_contWrap table.date{
	margin-top: 60px;
	margin-left: auto;
	font-size: 0.9375rem;
}
#privacy_contWrap table.date th{
	font-weight: bold;
	padding-right: 1em;
	vertical-align: top;
	text-align: left;
}
#privacy_contWrap a{
	text-decoration: underline;
}
@media (min-width: 751px) { /* forPC */
	#privacy_contWrap .sp{
		display: none;
	}
	#privacy_contWrap table.type01 tr:last-child th,
	#privacy_contWrap table.type01 tr:last-child td{
		border-bottom: #CCC solid 1px;
	}
	#privacy_contWrap table.type01.w300 th{
		width: 300px;
	}
	#privacy_contWrap table.type01.w380 th{
		width: 380px;
	}
	#privacy_contWrap a:hover{
		text-decoration: none;
	}
}
@media (max-width: 750px) { /* forSP */
	#privacy_coverImg img{
		margin-bottom: 10vw;
	}
	#privacy_contWrap{
		padding-left: 5vw;
		padding-right: 5vw;
		margin-bottom: 12vw;
		box-sizing: border-box;
	}
	#privacy_contWrap p{
		line-height: 200%;
		margin-top: 6vw;
	}
	#privacy_contWrap hr{
		margin-top: 15vw;
	}
	#privacy_contWrap h2{
		line-height: 150%;
		letter-spacing: 0.05em;
		font-size: 1.3125rem;
	}
	#privacy_contWrap h3{
		font-size: 1.125rem;
	}
	#privacy_contWrap h4 small{
		display: block;
		margin-top: 2vw;
		margin-left: 0;
		line-height: 180%;
	}
	#privacy_contWrap table.type01,
	#privacy_contWrap table.type01 tbody,
	#privacy_contWrap table.type01 tr,
	#privacy_contWrap table.type01 th,
	#privacy_contWrap table.type01 td{
		display: block;
		width: 100%;
	}
	#privacy_contWrap table{
		margin-top: 6vw;
	}
	#privacy_contWrap table.type01 th{
		padding: 3vw 5vw;
	}
	#privacy_contWrap table.type01 td{
		border-top: none;
		padding: 3vw 5vw 6vw 5vw;
	}
	#privacy_contWrap table.type01:last-child td{
		border-bottom: #CCC solid 1px;
	}
	#privacy_contWrap table.type01 td p{
		margin-top: 2vw;
	}
	#privacy_contWrap table.type02 th{
		padding: 3vw 5vw;
	}
	#privacy_contWrap table.type02 td{
		padding: 3vw 5vw 6vw 5vw;
	}
	#privacy_contWrap table.type02:last-child td{
		border-bottom: #CCC solid 1px;
	}
	#privacy_contWrap table.type02 td p{
		margin-top: 2vw;
	}
	#privacy_contWrap table.type02 td small{
		line-height: 150%;
	}
	#privacy_contWrap table.date th{
		padding-right: 2em;
	}
}

/*== お問い合わせ contact.html  ========*/
#contact_icon_tab{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 50px auto;
}
#contact_icon_tab h2{
	display: block;
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 60px;
}
#contact_icon_tab ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-content: stretch;
	gap: 28px 24px;
}
#contact_icon_tab li{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	color: #666666;
	font-weight: bold;
	padding: 13px;
	width: calc((100% - 72px) / 4);
	border: #FFF solid 1px;
	box-shadow: 0 0 0 1px #CCC inset;
	border-radius: 20px;
	cursor: pointer;
	box-sizing: border-box;
}
#contact_icon_tab li.crr{
	box-shadow: 0 0 0 4px #4fbe00 inset;
	color: #009d37;
	background: #f5fdf0;
	cursor: default;
}
#contact_icon_tab .icon{
	display: block;
	width: 80px;
	height: 80px;
	position: relative;
}
#contact_icon_tab li.crr .icon::before{
	content: "";
	display: block;
	width: 80px;
	height: 80px;
	background: rgba(79,190,0,0.45);
	border-radius: 9px;
	position: absolute;
	top: -3px;
	left: -3px;
	z-index: 2;
}
#contact_icon_tab li.crr .icon::after{
	content: "";
	display: block;
	width: 35px;
	height: 30px;
	background: url(/common/images/icon_check2.png) no-repeat center center / 35px auto;
	position: absolute;
	top: calc(50% - 16px);
	left: calc(50% - 16px);
	z-index: 2;
}
#contact_icon_tab li .icon{
	display: block;
	width: 80px;
	height: 80px;
	max-width: 100%;
	border: #333 solid 3px;
	border-radius: 10px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	box-sizing: border-box;
}
#contact_icon_tab li span{
	display: block;
	width: calc(100% - 100px);
	margin-left: 10px;
}
#contact_contents{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 80px auto;
	position: relative;
}
#contact_contents .tabCont{
	display: none;
	border: #4fbe00 solid 3px;
	border-radius: 20px;
	box-sizing: border-box;
}
#contact_contents .tabCont.crr{
	display: block;
}
#contact_contents .tabCont h2{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	background: #f5fdf0;
	font-weight: bold;
	padding: 24px 27px;
	border-radius: 20px 20px 0 0;
}
#contact_contents .tabCont h2 img{
	display: block;
	width: 80px;
	height: 80px;
	border: #333 solid 3px;
	border-radius: 10px;
	box-sizing: border-box;
}
#contact_contents .tabCont h2 span{
	margin-left: 30px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 150%;
}
#contact_contents .tabCont .inner{
	display: block;
	padding: 0 25px 40px 25px;
}
#contact_contents .tabCont .inner .service{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	background: #e8fbef;
	border-radius: 8px;
	margin: 40px auto 60px auto;
}
#contact_contents .tabCont .inner .service strong{
	display: block;
	background: url(/common/images/icon_check.png) no-repeat #009d37 left 12px center / 16px auto;
	color: #FFF;
	font-weight: bold;
	font-size: 0.9375rem;
	border-radius: 10px 0 0 10px;
	padding: 12px 25px 12px 35px;
}
#contact_contents .tabCont .inner .service p{
	font-weight: bold;
	font-size: 0.9375rem;
	margin-left: 20px;
}
#contact_contents .tabCont .inner .mailBtn{
	display: block;
	width: 576px;
	max-width: 100%;
	border-radius: 10px;
	border: #009d37 solid 2px;
	padding: 30px 80px;
	text-align: center;
	font-size: 1.5rem;
	font-weight: bold;
	margin: 40px auto;
	background: url(/common/images/icon_mail.png) no-repeat #FFF left 32px center / 40px auto;
	box-sizing: border-box;
}
#contact_contents .tabCont .inner hr{
	display: block;
	border: none;
	width: 100%;
	height: 1px;
	margin-top: 60px;
	margin-bottom: 30px;
	background: #CCC;
}
#contact_contents .tabCont .inner .caption{
	display: block;
	text-align: center;
	font-size: 0.75rem;
	margin: 30px auto;
}
#contact_contents .tabCont .inner .tel{
	display: block;
	border-radius: 10px;
	padding: 20px 40px;
	background: #e8fbef;
	font-size: 0.9375rem;
}
#contact_contents .tabCont .inner .tel h3{
	display: block;
	font-weight: bold;
	font-size: 1.125rem;
	margin-bottom: 15px;
	padding-left: 20px;
	position: relative;
}
#contact_contents .tabCont .inner .tel h3::before{
	content: "";
	display: block;
	width: 15px;
	height: 27px;
	background: #4fbe00;
	clip-path: polygon(0 0 , 7px 0, 100% 100% , calc(100% - 7px) 100%);
	position: absolute;
	top: 0;
	left: 0;
}
#contact_contents .tabCont#target_etc .read{
	display: block;
	margin-top: 30px;
	margin-bottom: 10px;
	font-size: 0.9375rem;
}
#contact_contents .tabCont#target_etc .caution{
	color: #ff0000;
	font-size: 0.9375rem;
	margin-top: 10px;
	margin-bottom: 30px;
}
#contact_contents .tabCont#target_etc .agreeBox{
	display: block;
	border-top: #CCC solid 1px;
	border-bottom: #CCC solid 1px;
	padding: 20px 0;
	margin-bottom: 30px;
}
#contact_contents .tabCont#target_etc .agreeBox label{
	display: block;
	font-weight: bold;
}
#contact_contents .tabCont#target_etc .agreeBox label input{
	border: #CCC solid 1px;
	width: 
		20px;
	height: 20px;
	margin-right: 1em;
}
#contact_contents .tabCont#target_etc .agreeBox label small{
	color: #ff0000;
	font-size: 0.9375rem;
}
#contact_contents .tabCont#target_etc span.err{
	display: block;
	color: #ff0000;
	font-size: 0.9375rem;
	margin-top: 10px;
	margin-bottom: 10px;
}
#contact_contents .tabCont#target_etc table{
	width: 870px;
	margin: 10px auto 20px auto;
	font-size: 0.9375rem;
}
#contact_contents .tabCont#target_etc table th{
	text-align: left;
	font-weight: bold;
	vertical-align: top;
	padding: 25px 15px 15px 0;
}
#contact_contents .tabCont#target_etc table th span{
	color: #ff0000;
}
#contact_contents .tabCont#target_etc td{
	vertical-align: middle;
	padding: 15px 0	 15px 15px;
}
#contact_contents .tabCont#target_etc table td span.err{
	display: block;
	color: #ff0000;
}
#contact_contents .tabCont#target_etc td input[type="text"],
#contact_contents .tabCont#target_etc td textarea,
#contact_contents .tabCont#target_etc td select{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	border: #979797 solid 1px;
	border-radius: 4px;
	display: block;
	padding: 10px 16px;
	font-family: inherit;
	box-sizing: border-box;
	line-height: 150%;
	box-shadow: none;
	background: #FFF;
}
#contact_contents .tabCont#target_etc td input[type="text"]{
	width: 100%;
	max-width: 670px;
}
#contact_contents .tabCont#target_etc td select{
	width: 280px;
	background: url(/common/images/icon_down.png) no-repeat #FFF right 15px center;
	cursor: pointer;
}
#contact_contents .tabCont#target_etc td textarea{
	width: 100%;
	max-width: 670px;
	height: 12em;
}
#contact_contents .tabCont#target_etc .footBtn{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	gap: 24px;
	border-top: #CCC solid 1px;
	padding-top: 40px;
}
#contact_contents .tabCont#target_etc button{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	font-size: 0.875rem;
	font-weight: bold;
	font-family: inherit;
	border-radius: 10px;
	line-height: 100%;
	padding: 15px 40px;
	cursor: pointer;
}
#contact_contents .tabCont#target_etc button.negaBtn{
	width: 170px;
	border: #cccccc solid 2px;
	background: #f4f4f4;
}
#contact_contents .tabCont#target_etc button.posBtn{
	width: 300px;
	border: #4fbe00 solid 2px;
	background: url(/common/images/arrow_black.png) no-repeat #FFF right 10px center;
}
#contact_contents .tabCont .complete h4{
	text-align: center;
	font-weight: bold;
	font-size: 1.375rem;
	margin: 40px auto 20px auto;
}
#contact_contents .tabCont .complete .finishTxt{
	display: block;
	text-align: center;
	font-size: 1rem;
	line-height: 180%;
	border-bottom: #CCC solid 1px;
	padding-bottom: 40px;
	margin: 40px auto;
}
#contact_contents .tabCont .complete .completeBtn{
	display: block;
	width: 290px;
	border: #4fbe00 solid 2px;
	background: url(/common/images/arrow_black.png) no-repeat #FFF right 10px center;
	font-size: 0.875rem;
	font-weight: bold;
	font-family: inherit;
	border-radius: 10px;
	line-height: 100%;
	padding: 15px 40px;
	cursor: pointer;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
@media (min-width: 751px) { /* forPC */
	#contact_icon_tab h2 br.sp{
		display: none;
	}
	#contact_icon_tab li{
		transition:all 0.3s ease;
	}
	#contact_icon_tab li:not(.crr):hover{
		box-shadow: 0 0 0 4px #4fbe00 inset , 0 1px 8px rgba(0,0,0,0.15);
		color: #009d37;
		transition:all 0.3s ease;
	}
	#contact_contents .tabCont .inner .mailBtn{
		transition:all 0.3s ease;
	}
	#contact_contents .tabCont .inner .mailBtn:hover{
		color: #009d37;
		transition:all 0.3s ease;
	}
	#contact_contents .tabCont#target_etc button{
		transition:all 0.3s ease;
	}
	#contact_contents .tabCont#target_etc button.negaBtn:hover{
		background: #FFF;
		color: #009d37;
		transition:all 0.3s ease;
	}
	#contact_contents .tabCont#target_etc button.posBtn:hover{
		color: #009d37;
		transition:all 0.3s ease;
	}
	#contact_contents .tabCont .complete .completeBtn{
		transition:all 0.3s ease;
	}
	#contact_contents .tabCont .complete .completeBtn:hover{
		color: #009d37;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#contact_icon_tab{
		margin: 0 auto 5vw auto;
		padding-left: 5vw;
		padding-right: 5vw;
		box-sizing: border-box;
	}
	#contact_icon_tab h2{
		font-size: 1.125rem;
		margin-bottom: 10vw;
	}
	#contact_icon_tab ul{
		gap: 3vw;
	}
	#contact_icon_tab li{
		display: block;
		padding: 3vw 2vw 6vw 2vw;
		width: calc((100% - 6vw) / 3);
	}
	#contact_icon_tab li .icon{
		width: 18vw;
		height: 18vw;
		margin-left: auto;
		margin-right: auto;
	}
	#contact_icon_tab li.crr .icon::before{
		width: 18vw;
		height: 18vw;
		border-radius: 8px;
	}
	#contact_icon_tab li.crr .icon::after{
		width: 6vw;
		background: url(/common/images/icon_check2.png) no-repeat center center / 6vw auto;
		top: calc(50% - 3vw);
		left: calc(50% - 3vw);
	}
	#contact_icon_tab li img{
		width: 18vw;
	}
	#contact_icon_tab li span{
		width: 100%;
		font-size: 0.8125rem;
		line-height: 130%;
		margin-top: 10px;
		margin-left: 0;
		text-align: center;
	}
	#contact_contents{
		margin: 0 auto 30vw auto;
		padding-left: 5vw;
		padding-right: 5vw;
		box-sizing: border-box;
	}
	#contact_contents .tabCont h2{
		padding: 3vw;
	}
	#contact_contents .tabCont h2 img{
		width: 15vw;
		height: 15vw;
	}
	#contact_contents .tabCont h2 span{
		margin-left: 3vw;
		font-size: 1.0625rem;
		width: 56vw;
		line-height: 130%;
	}
	#contact_contents .tabCont .inner{
		padding: 0 3vw 5vw 3vw;
	}
	#contact_contents .tabCont .inner .service{
		display: block;
		margin-top: 8vw;
		margin-bottom: 8vw;
		background: none;
	}
	#contact_contents .tabCont .inner .service p{
		background: #e8fbef;
		border-radius: 0 8px 8px 8px;
		margin-left: 0;
		padding: 15px;
	}
	#contact_contents .tabCont .inner .service strong{
		width: 50vw;
		height: 9vw;
		padding: 1.5vw 25px 0 38px;
		border-radius: 0;
		font-size: 0.8125rem;
		background: none;
		position: relative;
		box-sizing: border-box;
		z-index: 1;
	}
	#contact_contents .tabCont .inner .service strong::before{
		content: "";
		display: block;
		width: 50vw;
		height: 9vw;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22250px%22%20height%3D%2260px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(0%2C%20157%2C%2055)%22%20d%3D%22M-0.000%2C19.1000%20C-0.000%2C8.954%208.954%2C-0.000%2019.1000%2C-0.000%20L199.1000%2C-0.000%20C211.079%2C-0.000%20221.257%2C6.106%20226.471%2C15.882%20L249.1000%2C59.1000%20L-0.000%2C59.1000%20L-0.000%2C19.1000%20Z%22%2F%3E%3C%2Fsvg%3E');
		background-position: left bottom;
		background-size: auto 9vw;
		background-repeat: no-repeat;
		position: absolute;
		left: 0;
		top: 0;
		z-index: -1;
	}
	#contact_contents .tabCont .inner .service strong::after{
		content: "";
		width: 16px;
		height: 18px;
		background: url(/common/images/icon_check.png) no-repeat  left 0 center / contain;
		position: absolute;
		top: 2.7vw;
		left: 14px;
		box-sizing: border-box;
		z-index: 1;
	}
	#contact_contents .tabCont .inner .mailBtn{
		font-size: 1.125rem;
		width: 100%;
		padding: 5vw 3vw;
		background: none;
		margin: 5vw auto;
		position: relative;
	}
	#contact_contents .tabCont .inner .mailBtn::before{
		content: "";
		display: inline-block;
		width: 7vw;
		height: 7vw;
		background: url(/common/images/icon_mail.png) no-repeat center center / contain;
		margin-right: 0.8em;
		vertical-align: middle;
	}
	#contact_contents .tabCont .inner hr{
		margin-top: 8vw;
		margin-bottom: 8vw;
	}
	#contact_contents .tabCont .inner .caption{
		font-size: 0.875rem;
	}
	#contact_contents .tabCont .inner .tel{
		padding: 20px 5vw;
	}
	#contact_contents .tabCont#target_etc .agreeBox{
		margin-bottom: 20px;
	}
	#contact_contents .tabCont#target_etc .agreeBox label{
		display: flex;
		flex-flow: row wrap;
		justify-content: flex-start;
		align-items: flex-start;
	}
	#contact_contents .tabCont#target_etc .agreeBox label input{
		margin-top: 2px;
	}
	#contact_contents .tabCont#target_etc .agreeBox label span{
		display: block;
		font-size: 0.875rem;
		width: calc(100% - 20px - 1em);
	}
	#contact_contents .tabCont#target_etc table,
	#contact_contents .tabCont#target_etc table tbody,
	#contact_contents .tabCont#target_etc table tr,
	#contact_contents .tabCont#target_etc table th,
	#contact_contents .tabCont#target_etc table td{
		display: block;
		width: 100%;
	}
	#contact_contents .tabCont#target_etc table th{
		padding: 10px 0 0 0;
	}
	#contact_contents .tabCont#target_etc td{
		padding: 10px 0;
	}
	#contact_contents .tabCont#target_etc td input[type="text"],
	#contact_contents .tabCont#target_etc td textarea,
	#contact_contents .tabCont#target_etc td select{
		font-size: 16px;
	}
	#contact_contents .tabCont#target_etc td input[type="text"]{
		display: block;
	}
	#contact_contents .tabCont#target_etc td select{
		width: 100%;
	}
	#contact_contents .tabCont#target_etc td textarea{
		width: 100%;
		height: 20em;
	}
	#contact_contents .tabCont#target_etc .footBtn{
		width: 100%;
		gap: 5vw;
	}
	#contact_contents .tabCont#target_etc .footBtn form{
		width: 100%;
	}
	#contact_contents .tabCont#target_etc button.negaBtn{
		width: 100%;
		order: 2;
	}
	#contact_contents .tabCont#target_etc button.posBtn{
		width: 100%;
		order: 1;
	}
	#contact_contents .tabCont .complete h4{
		font-size: 1.125rem;
	}
	#contact_contents .tabCont .complete .finishTxt{
		font-size: 0.875rem;
	}
	#contact_contents .tabCont .complete .completeBtn{
		width: 100%;
	}
}

/*== エントリーフォーム entry/index.html  ========*/
#entry_contents{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 50px auto;
}
#entry_contents h2{
	display: block;
	text-align: center;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 150%;
	margin-bottom: 60px;
}
#entry_contents fieldset{
	display: block;
	border: #4fbe00 solid 3px;
	border-radius: 20px;
	box-sizing: border-box;
	padding: 40px 25px;
}
#entry_contents hr{
	display: block;
	border: none;
	width: 100%;
	height: 1px;
	margin-top: 30px;
	margin-bottom: 30px;
	background: #CCC;
}
#entry_contents .read{
	display: block;
}
#entry_contents .read.red{
	color: #FF0000;
}
#entry_contents span.err.agree{
	display: block;
	max-width: 870px;
	margin-left: auto;
	margin-right: auto;
}
#entry_contents div.agree{
	display: block;
	max-width: 870px;
	margin-left: auto;
	margin-right: auto;
	font-weight: bold;
}
#entry_contents div.agree input{
	border: #CCC solid 1px;
	width: 20px;
	height: 20px;
	margin-right: 1em;
}
#entry_contents div.agree a{
	text-decoration: underline;
}
#entry_contents span.err{
	display: block;
	color: #ff0000;
	font-size: 0.9375rem;
	margin-top: 10px;
	margin-bottom: 10px;
}
#entry_contents table{
	width: 870px;
	margin: 10px auto 20px auto;
	font-size: 0.9375rem;
}
#entry_contents table th{
	text-align: left;
	font-weight: bold;
	vertical-align: top;
	letter-spacing: 0.05em;
	width: 12em;
	padding: 27px 15px 17px 0;
}
#entry_contents table td{
	vertical-align: middle;
	padding: 17px 0	 17px 15px;
}
#entry_contents table td span.err{
	display: block;
	color: #ff0000;
}
#entry_contents table td a{
	display: inline-block;
	border: #979797 solid 1px;
	border-radius: 5px;
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(235,235,235,1) 100%);
	padding: 0.8vw 1.5vw;
	line-height: 100%;
	margin-left: 2em;
}
#entry_contents table td input[type="text"],
#entry_contents table td input[type="email"],
#entry_contents table td textarea,
#entry_contents table td select{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	border: #979797 solid 1px;
	border-radius: 4px;
	display: block;
	padding: 10px 16px;
	font-family: inherit;
	box-sizing: border-box;
	line-height: 150%;
	font-size: 1rem;
	box-shadow: none;
	background: #FFF;
}
#entry_contents table td input[type="text"],
#entry_contents table td input[type="email"]{
	width: 100%;
	max-width: 670px;
}
#entry_contents table td select{
	width: 450px;
	background: url(/common/images/icon_down.png) no-repeat #FFF right 15px center;
	cursor: pointer;
}
#entry_contents table td span.caption{
	display: block;
	margin-top: 5px;
	font-size: 0.875rem;
	color: #787878;
}
#entry_contents table td textarea{
	width: 100%;
	max-width: 670px;
	height: 12em;
}
#entry_contents .flexBtn{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	gap: 24px;
	padding-top: 20px;
}
#entry_contents .flexBtn button{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	font-size: 0.875rem;
	font-weight: bold;
	font-family: inherit;
	border-radius: 10px;
	line-height: 100%;
	padding: 15px 40px;
	cursor: pointer;
}
#entry_contents .flexBtn button.negaBtn{
	width: 170px;
	border: #cccccc solid 2px;
	background: #f4f4f4;
}
#entry_contents .flexBtn button.posBtn{
	width: 300px;
	border: #4fbe00 solid 2px;
	background: url(/common/images/arrow_black.png) no-repeat #FFF right 10px center;
}
#entry_contents.input table th::after{
	content: "*";
	color: #ff0000;
}
#entry_contents.input div.agree::after{
	content: "*";
	color: #ff0000;
	font-size: 0.9375rem;
}
#entry_contents.complete fieldset{
	padding-top: 60px;
	padding-bottom: 60px;
}
#entry_contents.complete fieldset h3{
	text-align: center;
	font-weight: bold;
	font-size: 1.375rem;
	letter-spacing: 0.1em;
	margin: 0 auto 40px auto;
}
#entry_contents.complete fieldset p.read{
	text-align: center;
	line-height: 300%;
	margin-bottom: 80px;
}
#entry_contents.complete fieldset a#backBtn{
	display: block;
	width: 290px;
	border: #4fbe00 solid 2px;
	background: url(/common/images/arrow_black.png) no-repeat #FFF right 10px center;
	font-size: 0.875rem;
	font-weight: bold;
	font-family: inherit;
	border-radius: 10px;
	line-height: 100%;
	padding: 15px 40px;
	cursor: pointer;
	text-align: center;
	margin-top: 40px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
@media (min-width: 751px) { /* forPC */
	#entry_contents h2 br.sp{
		display: none;
	}
	#entry_contents div.agree a{
		transition:all 0.3s ease;
	}
	#entry_contents div.agree a:hover{
		text-decoration: none;
		color: #009d37;
		transition:all 0.3s ease;
	}
	#entry_contents .flexBtn button{
		transition:all 0.3s ease;
	}
	#entry_contents .flexBtn button.negaBtn:hover{
		background: #FFF;
		color: #009d37;
		transition:all 0.3s ease;
	}
	#entry_contents .flexBtn button.posBtn:hover{
		color: #009d37;
		transition:all 0.3s ease;
	}
	#entry_contents.complete fieldset a#backBtn{
		transition:all 0.3s ease;
	}
	#entry_contents.complete fieldset a#backBtn:hover{
		color: #009d37;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#entry_contents h2{
		text-align: left;
		font-size: 1.125rem;
		margin-bottom: 10vw;
		max-width: 90vw;
		margin-left: auto;
		margin-right: auto;
	}
	#entry_contents fieldset{
		margin: 0 auto 30vw auto;
		padding: 7vw 3vw;
		max-width: 90vw;
		margin-left: auto;
		margin-right: auto;
		box-sizing: border-box;
	}
	#entry_contents fieldset hr{
		margin-top: 5vw;
		margin-bottom: 5vw;
	}
	#entry_contents fieldset .caption{
		font-size: 0.875rem;
	}
	#entry_contents div.agree{
		font-size: 0.9375rem;
	}
	#entry_contents div.agree input{
		margin-top: 2px;
	}
	#entry_contents div.agree span{
		display: block;
		font-size: 0.875rem;
		width: calc(100% - 20px - 1em);
	}
	#entry_contents table,
	#entry_contents table tbody,
	#entry_contents table tr,
	#entry_contents table th,
	#entry_contents table td{
		display: block;
		width: 100%;
	}
	#entry_contents table th{
		padding: 10px 0 0 0;
	}
	#entry_contents table td{
		padding: 10px 0;
	}
	#entry_contents table td input[type="text"],
	#entry_contents table td input[type="email"],
	#entry_contents table td textarea,
	#entry_contents table td select{
		font-size: 16px;
	}
	#entry_contents table td input[type="text"],
	#entry_contents table td input[type="email"]{
		display: block;
	}
	#entry_contents table td a{
		display: block;
		width: 4em;
		text-align: center;
		padding: 2vw 0;
		margin-left: 0;
		margin-top: 0.5em;
	}
	#entry_contents table td select{
		width: 100%;
	}
	#entry_contents table td textarea{
		width: 100%;
		height: 20em;
	}
	#entry_contents .flexBtn{
		flex-flow: column wrap;
		width: 100%;
		gap: 5vw;
	}
	#entry_contents .flexBtn button.negaBtn{
		display: block;
		width: 100%;
		order: 2;
	}
	#entry_contents .flexBtn button.posBtn{
		width: 100%;
		order: 1;
	}
	#entry_contents.complete fieldset h3{
		font-size: 1.125rem;
	}
	#entry_contents.complete fieldset p.read{
		font-size: 0.875rem;
		line-height: 180%;
		margin-bottom: 10vw;
	}
	#entry_contents.complete fieldset a#backBtn{
		width: 100%;
	}
}



/*== 会社概要 company.html ========*/
#company_ankerTab{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin-bottom: 86px;
}
#company_ankerTab a{
	display: block;
	width: 340px;
	border: #0080cc solid 3px;
	border-radius: 10px;
	font-weight: bold;
	font-size: 1.1875rem;
	letter-spacing: 0.1em;
	padding: 18px 40px;
	text-align: center;
	background: url(/common/images/arow_down_blue.png) no-repeat right 20px center / 16px auto;
	box-sizing: border-box;
}
#company_summary{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 106px auto;
}
#company_summary > h2{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.05em;
	padding-left: 43px;
	position: relative;
	margin-bottom: 56px;
}
#company_summary > h2::before{
	content: "";
	display: block;
	width: 32px;
	height: 50px;
	background: #0080cc;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: -2px;
	left: 0;
}
#company_summary > ul{
	display: block;
	width: 100%;
}
#company_summary > ul li:first-child{
	border-top: #CCC solid 1px;
}
#company_summary > ul li{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	width: 100%;
	border-bottom: #CCC solid 1px;
	font-size: 0.9375rem;
	line-height: 180%;
}
#company_summary > ul li .title{
	display: block;
	width: 200px;
	padding: 18px 20px;
	background: #f2faff;
	font-weight: bold;
}
#company_summary > ul li .content{
	color: #231916;
	padding: 18px 40px;
	width: calc(100% - 200px);
}
#company_summary > ul li .content strong{
	font-size: inherit;
}
#company_summary > ul li .content a[href$=".pdf"]{
	display: block;
	padding-left: 26px;
	margin-top: 5px;
	background: url(/common/images/icon_pdf.png) no-repeat left top 2px  / 18px auto;
}
#company_access{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
	line-height: 180%;
}
#company_access > h2{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.05em;
	padding-left: 43px;
	position: relative;
	margin-bottom: 48px;
}
#company_access > h2::before{
	content: "";
	display: block;
	width: 32px;
	height: 50px;
	background: #0080cc;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: -2px;
	left: 0;
}
#company_access hr{
	display: block;
	border: none;
	height: 2px;
	background: #cccccc;
	position: relative;
	margin-bottom: 25px;
}
#company_access hr::before{
	content: "";
	display: block;
	width: 160px;
	height: 2px;
	background: #0080cc;
	position: absolute;
	left: 0;
	bottom: 0;
}
#company_access h3{
	display: block;
	width: 100%;
	font-weight: bold;
	font-size: 1.5rem;
	margin-bottom: 25px;
	position: relative;
}
#company_access ul{
	display: block;
	margin: 30px auto;
	max-width: 1176px;
}
#company_access ul li{
	padding-left: 30px;
	margin-bottom: 3px;
	line-height: 180%;
	position: relative;
}
#company_access ul li:last-child{
	margin-bottom: 0;
}
#company_access ul li::before{
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #0080cc;
	position: absolute;
	top: 0.5em;
	left: 0;
}
#company_access img.mapImg{
	max-width: 100%;
	border-radius: 10px;
	margin-bottom: 30px;
}
#company_access .access-text-area{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#company_access .mapBtn{
	display: block;
	font-size: 0.875rem;
	font-weight: bold;
	border-radius: 10px;
	border: #0080cc solid 2px;
	padding: 6px 40px 6px 25px;
	background:url(/common/images/icon_target.png) no-repeat right 10px center / 18px auto;
}
@media (min-width: 751px) { /* forPC */
	#company_ankerTab a{
		transition:all 0.3s ease;
	}
	#company_ankerTab a:hover{
		color: #0080cc;
		border-color: #000;
		transition:all 0.3s ease;
	}
	#company_summary > ul li .content a{
		transition:all 0.3s ease;
	}
	#company_summary > ul li .content a:hover{
		color: #0080cc;
		transition:all 0.3s ease;
	}
	#company_access .access-text-area p.leftText{
		max-width: calc(100% - 200px);
	}
	#company_access .mapBtn{
		transition:all 0.3s ease;
	}
	#company_access .mapBtn:hover{
		color: #0080cc;
		border-color: #000;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#company_summary{
	}
	#company_summary > h2{
		font-size: 1.875rem;
		padding-left: 36px;
	}
	#company_summary > h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#company_ankerTab{
		padding: 0 5vw;
		margin-bottom: 10vw;
		gap: 4vw;
	}
	#company_ankerTab a{
		width: calc((100% - 4vw) / 2);
		font-size: 1rem;
		padding: 24px 40px 24px 20px;
		text-align: left;
	}
	#company_summary{
		padding: 0 5vw;
		margin: 0 auto 30vw auto;
	}
	#company_summary > h2{
		font-size: 1.75rem;
		padding-left: 38px;
		margin-bottom: 8vw;
	}
	#company_summary > h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	company_summary > ul li{
		font-size: 1rem;
	}
	#company_summary > ul li .title{
		width: 100%;
		padding: 10px 20px;
	}
	#company_summary > ul li .content{
		padding: 16px 20px;
		width: 100%;
	}
	#company_summary > ul li .content a[href$=".pdf"]{
		background-position: left top 5px;
	}
	#company_access{
		padding: 0 5vw;
	}
	#company_access > h2{
		font-size: 1.75rem;
		padding-left: 38px;
		margin-bottom: 8vw;
	}
	#company_access > h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#company_access hr::before{
		width: 20vw;
	}
	#company_access h3{
		font-size: 1.125rem;
	}
	#company_access .mapBtn{
		width: 100%;
		text-align: center;
		padding: 10px 40px 10px 25px;
		margin-top: 20px;
	}
}



/*== 会社概要 company.html ========*/
#company_ankerTab{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin-bottom: 86px;
}
#company_ankerTab a{
	display: block;
	width: 340px;
	border: #0080cc solid 3px;
	border-radius: 10px;
	font-weight: bold;
	font-size: 1.1875rem;
	letter-spacing: 0.1em;
	padding: 18px 40px;
	text-align: center;
	background: url(/common/images/arow_down_blue.png) no-repeat right 20px center / 16px auto;
	box-sizing: border-box;
}
#company_summary{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 106px auto;
}
#company_summary > h2{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.05em;
	padding-left: 43px;
	position: relative;
	margin-bottom: 56px;
}
#company_summary > h2::before{
	content: "";
	display: block;
	width: 32px;
	height: 50px;
	background: #0080cc;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: -2px;
	left: 0;
}
#company_summary > ul{
	display: block;
	width: 100%;
}
#company_summary > ul li:first-child{
	border-top: #CCC solid 1px;
}
#company_summary > ul li{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	width: 100%;
	border-bottom: #CCC solid 1px;
	font-size: 0.9375rem;
	line-height: 180%;
}
#company_summary > ul li .title{
	display: block;
	width: 200px;
	padding: 18px 20px;
	background: #f2faff;
	font-weight: bold;
}
#company_summary > ul li .content{
	color: #231916;
	padding: 18px 40px;
	width: calc(100% - 200px);
}
#company_summary > ul li .content strong{
	font-size: inherit;
}
#company_summary > ul li .content a[href$=".pdf"]{
	display: block;
	padding-left: 26px;
	margin-top: 5px;
	background: url(/common/images/icon_pdf.png) no-repeat left top 2px  / 18px auto;
}
#company_access{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto;
	line-height: 180%;
}
#company_access > h2{
	display: block;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 100%;
	letter-spacing: 0.05em;
	padding-left: 43px;
	position: relative;
	margin-bottom: 48px;
}
#company_access > h2::before{
	content: "";
	display: block;
	width: 32px;
	height: 50px;
	background: #0080cc;
	clip-path: polygon(0 0 , 14px 0, 100% 100% , calc(100% - 14px) 100%);
	position: absolute;
	top: -2px;
	left: 0;
}
#company_access hr{
	display: block;
	border: none;
	height: 2px;
	background: #cccccc;
	position: relative;
	margin-bottom: 25px;
}
#company_access hr::before{
	content: "";
	display: block;
	width: 160px;
	height: 2px;
	background: #0080cc;
	position: absolute;
	left: 0;
	bottom: 0;
}
#company_access h3{
	display: block;
	width: 100%;
	font-weight: bold;
	font-size: 1.5rem;
	margin-bottom: 25px;
	position: relative;
}
#company_access ul{
	display: block;
	margin: 30px auto;
	max-width: 1176px;
}
#company_access ul li{
	padding-left: 30px;
	margin-bottom: 3px;
	line-height: 180%;
	position: relative;
}
#company_access ul li:last-child{
	margin-bottom: 0;
}
#company_access ul li::before{
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #0080cc;
	position: absolute;
	top: 0.5em;
	left: 0;
}
#company_access img.mapImg{
	max-width: 100%;
	border-radius: 10px;
	margin-bottom: 30px;
}
#company_access .access-text-area{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#company_access .mapBtn{
	display: block;
	font-size: 0.875rem;
	font-weight: bold;
	border-radius: 10px;
	border: #0080cc solid 2px;
	padding: 6px 40px 6px 25px;
	background:url(/common/images/icon_target.png) no-repeat right 10px center / 18px auto;
}
@media (min-width: 751px) { /* forPC */
	#company_ankerTab a{
		transition:all 0.3s ease;
	}
	#company_ankerTab a:hover{
		color: #0080cc;
		border-color: #000;
		transition:all 0.3s ease;
	}
	#company_summary > ul li .content a{
		transition:all 0.3s ease;
	}
	#company_summary > ul li .content a:hover{
		color: #0080cc;
		transition:all 0.3s ease;
	}
	#company_access .access-text-area p.leftText{
		max-width: calc(100% - 200px);
	}
	#company_access .mapBtn{
		transition:all 0.3s ease;
	}
	#company_access .mapBtn:hover{
		color: #0080cc;
		border-color: #000;
		transition:all 0.3s ease;
	}
}
@media (max-width: 750px) { /* forSP */
	#company_summary{
	}
	#company_summary > h2{
		font-size: 1.875rem;
		padding-left: 36px;
	}
	#company_summary > h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#company_ankerTab{
		padding: 0 5vw;
		margin-bottom: 10vw;
		gap: 4vw;
	}
	#company_ankerTab a{
		width: calc((100% - 4vw) / 2);
		font-size: 1rem;
		padding: 24px 40px 24px 20px;
		text-align: left;
	}
	#company_summary{
		padding: 0 5vw;
		margin: 0 auto 30vw auto;
	}
	#company_summary > h2{
		font-size: 1.75rem;
		padding-left: 38px;
		margin-bottom: 8vw;
	}
	#company_summary > h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	company_summary > ul li{
		font-size: 1rem;
	}
	#company_summary > ul li .title{
		width: 100%;
		padding: 10px 20px;
	}
	#company_summary > ul li .content{
		padding: 16px 20px;
		width: 100%;
	}
	#company_summary > ul li .content a[href$=".pdf"]{
		background-position: left top 5px;
	}
	#company_access{
		padding: 0 5vw;
	}
	#company_access > h2{
		font-size: 1.75rem;
		padding-left: 38px;
		margin-bottom: 8vw;
	}
	#company_access > h2::before{
		width: 24px;
		height: 40px;
		left: 0;
		clip-path: polygon(0 0 , 12px 0, 100% 100% , calc(100% - 12px) 100%);
	}
	#company_access hr::before{
		width: 20vw;
	}
	#company_access h3{
		font-size: 1.125rem;
	}
	#company_access .mapBtn{
		width: 100%;
		text-align: center;
		padding: 10px 40px 10px 25px;
		margin-top: 20px;
	}
}

/*== 検索一覧 search/index.html ========*/
#search-list-wrap{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 80px auto;
	box-sizing: border-box;
}
@media (min-width: 751px) { /* forPC */
}
@media (max-width: 750px) { /* forSP */
	#search-list-wrap{
		padding-left: 5vw;
		padding-right: 5vw;
	}
}

/*== サイトマップ /sitemap// ========*/
#sitemap_list{
	display: block;
	width: 100%;
	max-width: 1176px;
	margin: 0 auto 80px auto;
	box-sizing: border-box;
}
#sitemap_list ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	border: #4fbe00 solid 3px;
	border-radius: 20px;
}
#sitemap_list ul li{
	display: block;
}
#sitemap_list ul li a{
	display: block;
	border-bottom: #CCC solid 1px;
	padding: 0 25px 6px 0;
	color: #009d37;
	font-weight: bold;
	font-size: 1.25rem;
	position: relative;
	letter-spacing: 0.05em;
	box-sizing: border-box;
}
#sitemap_list ul li a::after{
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background:url(/common/images/sitemap/arrow.svg) no-repeat center center / 100% auto;
	position: absolute;
	right: 2px;
	bottom: 6px;
}
#sitemap_list ul li a.min{
	width: calc(100% - 20px);
	margin-top: 18px;
	margin-left: 20px;
	padding-bottom: 4px;
	font-size: 1rem;
}
#sitemap_list ul li a.min::after{
	width: 12px;
	height: 12px;
	bottom: 8px;
}
#sitemap_list ul li a.min.comp::after{
	bottom: auto;
	top: 7px;
}
@media (min-width: 751px) { /* forPC */
	#sitemap_list ul{
		padding: 60px 55px;
		gap: 50px 40px;
	}
	#sitemap_list ul li{
		width: calc((100% - 80px) / 3);
	}
  #sitemap_list ul li.half{
		width: calc((100% - 40px) / 2);
	}
}
@media (max-width: 750px) { /* forSP */
	#sitemap_list{
		padding-left: 5vw;
		padding-right: 5vw;
	}
	#sitemap_list ul{
		padding: 10vw 8vw;
		gap: 5vw 0;
	}
	#sitemap_list ul li:empty{
		display: none;
	}
	#sitemap_list ul li{
		width: 100%;
	}
	#sitemap_list ul li a{
		font-size: 1.125rem;
	}
	#sitemap_list ul li a::after{
		width: 4.5vw;
		height: 4.5vw;
	}
	#sitemap_list ul li a.min{
		font-size: 0.875rem;
	}
	#sitemap_list ul li a.min::after{
		width: 3.5vw;
		height: 3.5vw;
	}
}

