/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Mar 12 2026 | 10:08:22 */
/* 
@media (max-width: 640px) 
@media (min-width: 960px) 
var(--color_main)
サブカラーの設定
var(--color_deep01)
var(--color_deep02)
var(--color_deep03)
*/
/*上書き  */
.gn_detail {
    padding:0 0 50px 0;
}
.job-template-default .l-header {
    border-bottom: none;
}
.job-template-default .gn_detail .gn_detail_wrap {
    padding:0 0 30px 0;
}
.slick-arrow {
	color: var(--color_main);
}
#gn_slider_detail li {
    overflow: visible!important;
}
/* 見出しの設定 */
.gn_detail_title{
font-size: 1.6em;
font-weight:700;
line-height:1.4;
margin:0;
border-bottom:2px solid #e5e5e5;
position:relative;
color:var(--color_main);
}
.gn_detail_title::after{
content:"";
position:absolute;
left:0;
bottom:-3px;
width:60px;
height:2px;
background:var(--color_main);
}
.job-info-title{
font-size:16px;
font-weight:700;
margin-bottom:12px;
padding-bottom:6px;
border-bottom:3px solid #e5e5e5;
position:relative;
}
.job-info-title::after{
content:"";
position:absolute;
left:0;
bottom:-3px;
width:60px;
height:3px;
background:var(--color_main);
}
@media (max-width: 768px) {
.gn_detail_title {
    font-size: 1.2em;
}
}
/* =========================
求人 上部
========================= */
.gn_detail_top{
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	width: 100vw;
	background:#F0F8FF;
	padding:40px 20px;
}
.gn_detail_top > *{
	max-width:1200px;
	margin:auto;
}
.gn_detail_badge{
margin-bottom:10px;
}

.gn_detail_badge span{
display:inline-block;
margin-right:6px;
padding:4px 10px;
font-size:12px;
font-weight:600;
border-radius:4px;
line-height:1.4;
}

/* ラベルカラー */
.gn_box_new{
background:#ff4d4f;
color:#fff;
}
.gn_box_up{
background:#ffa500;
color:#fff;
}
.gn_box_attention{
background:#f5222d;
color:#fff;
}
.gn_box_pr,
.gn_box_pr_industry{
background:#1677ff;
color:#fff;
}
.gn_box_experience{
background:#00a870;
color:#fff;
}

/* =========================
左右レイアウト
========================= */
.gn_detail_layout{
display:flex;
gap:40px;
align-items:flex-start;
}
/* =========================
左カラム
========================= */
.gn_detail_left{
width:60%;
}
.gn_detail_img{
position:relative;
}
.gn_detail_img img{
border-radius:8px;
}
/* =========================
スライド矢印
========================= */
.slick-prev,
.slick-next{
width:36px;
height:36px;
background:#fff;
border-radius:50%;
box-shadow:0 2px 6px rgba(0,0,0,0.2);
display:flex !important;
align-items:center;
justify-content:center;
z-index:10;
}
.slick-prev:before,
.slick-next:before{
display:none;
}
#gn_slider_detail .slick-slide{
height:auto !important;
 overflow:visible;
min-height:auto;
}

#gn_slider_detail li{
height:auto;
}

#gn_slider_detail img{
width:100%;
display:block;
}
.gn_slider_caption{
display:block;
margin-top:12px;
background:#fff;
padding:10px 14px;
font-size:14px;
line-height:1.6;
}
.slick-dots{
	display:flex;
	justify-content:center;
	margin-top:15px;
	gap:8px;
}

.slick-dots li button{
	font-size:0;
	width:10px;
	height:10px;
	border-radius:50%;
	background:#ccc;
	border:none;
}

.slick-dots li.slick-active button{
	background:#333;
}
/* ===============================
右カラム
===============================*/
.job-info{
padding:24px;
}
.job-info-box{
margin-bottom:18px;
}
.job-info-title{
font-size: 1.4em;
color:var(--color_main);
margin-bottom:4px;
}
.job-info-content{
font-size:14px;
line-height:1.6;
}
/* 会社名 */
.job-company{
font-size:1em;
font-weight:bold;
}
/* タグ */
.job-tags{
display:flex;
flex-wrap:wrap;
gap:6px;
margin: 0.6em 0;
}
.job-tag{
border: 1px solid #8d8d8d;
    padding: 2px 12px;
    font-size: 13px;
    border-radius: 4px;
    line-height: 2;
}
.job-feature-tag:nth-child(6n+1){background:#FFFFCC;}
.job-feature-tag:nth-child(6n+2){background:#E3F0FF;}
.job-feature-tag:nth-child(6n+3){background:#F6E4E4;}
.job-feature-tag:nth-child(6n+4){background:#EAF6CC;}
.job-feature-tag:nth-child(6n+5){background:#E6F1EE;}
.job-feature-tag:nth-child(6n+6){background:#FFEACC;}
.gn_detail_item{
	display:flex;
	align-items:center;
	border-top:1px solid #DDDDDD;
	padding:12px 0;
}
.gn_detail_item:last-child{
	border-bottom:1px solid #DDDDDD;
}
.gn_detail_label{
	width:120px;
	color:#888888;
	font-weight:600;
}
.gn_detail_value{
	flex:1;
	font-size: 1em;
}
/* 日付 */
.job-date-wrap{
display:flex;
gap:20px;
border-top:1px solid #DDDDDD;
padding: 0.5em 0;
margin:0 0 1em;
}
.job-date{
display:flex;
gap:6px;
font-size:13px;
color:#666;
}
.job-feature-tags{
display:flex;
flex-wrap:wrap;
gap:8px;
margin-top:6px;
}
.job-feature-tag{
background:#f7f7f7;
border:1px solid #e5e5e5;
padding:6px 10px;
font-size:12px;
border-radius:4px;
}
@media (max-width:768px){
.gn_detail_top{
padding:30px 15px;
}
.gn_detail_layout{
flex-direction:column;
gap:20px;
}
.gn_detail_left{
width:100%;
}
.job-info{
padding:20px 0;
}
.gn_detail_item{
flex-direction:column;
align-items:flex-start;
gap:4px;
}
.gn_detail_label{
width:auto;
}
.job-date-wrap{
flex-direction:column;
gap:4px;
}
}
/* CTA */
.gn_apply_area {
	background: url("https://xs688461.xsrv.jp/wp-content/uploads/2026/03/bg.png") no-repeat center center;
	background-size: cover;
	padding: 40px 20px;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	width: 100vw;
}
.gn_apply_inner {
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
	gap:20px;
	max-width:900px;
	margin:auto;
}
a.gn_apply_btn {
    max-width: 300px;
    margin: 0 auto;
}
.gn_apply_btn img{
	width:100%;
	height:auto;
	display:block;
	transition: transform .3s ease, opacity .3s ease;
	border-radius:10px;
	box-shadow:0 6px 16px rgba(0,0,0,0.15);
}
.gn_apply_btn:hover img{
	transform: translateY(-6px);
	opacity:.85;
}
@media (max-width:768px){
	.gn_apply_inner{
		grid-template-columns: 1fr;
	}
}
/* 求人テーブルエリア */
.jobinfo-header{
	text-align:center;
	margin:40px 0;
}
.jobinfo-title{
	color:var(--color_main);
	font-size:24px;
	font-weight:700;
	margin-bottom:8px;
}
.jobinfo-update{
	font-size:13px;
	color:#888;
}
/* 全体 */
.jobinfo-wrap {
	margin: 60px 0;
}
.jobinfo-table {
	overflow: hidden;
}
.jobinfo-row {
	display: flex;
}
.jobinfo-row:last-child {
	border-bottom: none;
}
.jobinfo-row.bg-blue {
	background: #F0F8FF;
}
.jobinfo-row.bg-white {
	background: #ffffff;
}
.jobinfo-label {
	width: 30%;
	padding: 18px;
	font-weight: 600;
}
.jobinfo-value {
	width: 70%;
	padding: 18px;
}
.jobinfo-tag{
	display:inline-block;
	padding:6px 12px;
	font-size:13px;
	border-radius:6px;
	margin:4px 6px 4px 0;
}
.jobinfo-tag:nth-child(6n+1){background:#FFFFCC;}
.jobinfo-tag:nth-child(6n+2){background:#E3F0FF;}
.jobinfo-tag:nth-child(6n+3){background:#F6E4E4;}
.jobinfo-tag:nth-child(6n+4){background:#EAF6CC;}
.jobinfo-tag:nth-child(6n+5){background:#E6F1EE;}
.jobinfo-tag:nth-child(6n+6){background:#FFEACC;}
@media (max-width: 768px){
	.jobinfo-row {
		flex-direction: column;
	}
	.jobinfo-label,
	.jobinfo-value {
		width: 100%;
		padding: 10px 18px;
	}
}
.jobcta-wrap {
	text-align: center;
	padding: 40px 20px;
	background: #ffffff;
}

.jobcta-company {
	font-size: 25px;
	font-weight: 700;
	margin-bottom: 10px;
	color: var(--color_main);
}
.jobcta-line {
	width: 60px;
	height: 2px;
	background: var(--color_main);
	margin: 0 auto 12px;
}

.jobcta-industry {
    border: 1px solid #8d8d8d;
    padding: 2px 12px;
    font-size: 13px;
    border-radius: 4px;
    line-height: 2;
    width: fit-content;
    margin: 0 auto 1em;
}
.jobcta-message {
    font-size: 1em;
    line-height: 1.8;
    margin: 2em 0;
}

.jobcta-apply {
	margin: 80px 0;
	text-align: center;
}

.jobcta-apply-inner {
	display: flex;
	justify-content: center;
	gap: 40px;
	flex-wrap: wrap;
}

.jobcta-item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.jobinfo-section{
	background:url(https://xs688461.xsrv.jp/wp-content/uploads/2026/03/bg.jpg) center/cover no-repeat;
	padding:80px 20px;

	position:relative;
	left:50%;
	right:50%;
	margin-left:-50vw;
	margin-right:-50vw;
	width:100vw;
}
.jobinfo-inner {
    max-width: 1200px;
    margin: auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    align-items: stretch; /* 高さを揃える */
}
.jobinfo-card {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    padding: 30px;
    max-width: 580px;
    margin: auto;
    width: 100%;
    height: 100%; /* 高さを伸ばす */
}
.jobinfo-card h2{
	position:relative;
	padding:0.8rem 2rem;
	box-shadow:6px 6px var(--color_main);
	outline:3px solid #fff;
	border:3px solid var(--color_main);
	background:#F0F8FF;
	color:var(--color_main);
	    font-size: 1.4em;
	font-weight:bold;
	text-align:center;
	margin-bottom:20px;
}
@media (max-width:768px){
.jobinfo-section{
	grid-template-columns:1fr;
	gap:20px;
	padding:50px 15px;
}
.jobinfo-inner{
	grid-template-columns:1fr;
	gap:20px;
}
.jobinfo-card h2{
  font-size: 1.2em;
}
}
.jobcta-bubble {
	padding: 8px 16px;
    font-size: 14px;
	position: relative;
}
.jobcta-apply-btn img {
	width: 260px;
	height: auto;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.jobcta-apply-btn:hover img {
	transform: translateY(-6px);
	opacity: 0.9;
}
@media (max-width: 768px){
	.jobcta-apply-inner {
		flex-direction: column;
		gap: 25px;
	}
	.jobcta-apply-btn img {
		width: 85%;
		max-width: 320px;
	}
}