
/* IEバグ回避 */
.select > select{
	color:black\9;
}

/**
 * 共通
----------------------------------------------------------------------------------------------------*/
/* 初期設定 */
a{
	color:rgb(43,59,94);
}

/* リスト */
ul.type1{ margin:10px 40px; }
ul.type1 > li{
	font-size:16px;
	line-height:24px;
	font-weight:bold;
	border-radius:4px;
	background:rgb(59,179,204) url("./../image/interface/icon/list.png") scroll no-repeat 10px 10px / 24px;
	color:white;
	padding:10px 10px 10px 34px;
}
ul.type1 > li:not(:first-child){ margin-top:6px; }

/* テーブルtype1 */
table.type1 th,
table.type1 td{
	padding:8px 4px;
	border-bottom:1px solid rgb(89,87,87);
}
table.type1 tr:first-child > th,
table.type1 tr:first-child > td{ border-top:1px solid rgb(89,87,87); }
table.type1{
	border-top:2px solid rgb(89,87,87);
	border-bottom:2px solid rgb(89,87,87);
}
table.type1 th{ width:140px; }

/* テーブルtype2 */
table.type2 th,
table.type2 td{
	padding:10px 40px;
	border-bottom:1px solid rgb(89,87,87);
}
table.type2 tr:first-child > th,
table.type2 tr:first-child > td{ border-top:1px solid rgb(89,87,87); }
table.type2{
	border-top:2px solid rgb(89,87,87);
	border-bottom:2px solid rgb(89,87,87);
}
table.type2 th{ width:200px; }
@media screen and (max-width: 768px){
	table.type2 th,
	table.type2 td{ padding:10px; }
	table.type2 th{ width:80px; }
}

/* テーブルtype3 */
table.type3 th{ vertical-align:top; }
table.type3 th,
table.type3 td{ padding:10px; }
@media screen and (max-width: 768px){
	table.type3,
	table.type3 tbody,
	table.type3 thead,
	table.type3 tr,
	table.type3 th,
	table.type3 td{
		display:block;
		padding:0;
	}
	table.type3 tr:not(:last-child){ margin-bottom:20px; }
	table.type3 input[type],
	table.type3 textarea{
		width:100%;
		display:block;
	}
	table.type3 th{
		font-size:18px;
		line-height:30px;
	}
}

/* 電話ボックス */
.telbox{
	display:block;
	max-width:460px;
	margin:20px auto;
}

/**
 * 全体
----------------------------------------------------------------------------------------------------*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
/* レイアウト */
body{
	width:100%;
	overflow-x:hidden;
	font-family: 'Noto Sans Japanese', 'Hiragino Kaku Gothic ProN', Meiryo, Helvetica, sans-serif;
	color:rgb(43,59,94);
}

body > header,
body > main,
body > nav,
body > footer{
	max-width:1024px;
	margin:0 auto;
	position:relative;
}

body::before{
	border-top:10px solid rgb(43,59,94);
	content:'';
	display:block;
}

/**
 * ヘッダー
----------------------------------------------------------------------------------------------------*/
body > header > *{ height:100px; }
#tel{ text-align:right; }
#tel > a > img:last-child{ display:none; }
body[data-ismobile="false"] .tel.hover{
	cursor:default;
	opacity:1;
}
body > header a{ transition:opacity .2s; }
body > header a.hover{ opacity:.5; }
body > header img{
	max-width:auto;
	max-height:100%;
	display:inline-block;
}
@media screen and (max-width: 768px){
	body > header > *{ height:70px; }
	#tel{
		position:absolute;
		top:0;
		right:70px;
	}
	#tel > a > img:first-child{ display:none; }
	#tel > a > img:last-child{ display:block; }
}
@media screen and (max-width: 430px){
	#tel{ display:none; }
}

/**
 * Gナビ
----------------------------------------------------------------------------------------------------*/
#gnav.wing,
#gnav.wing::before,
#gnav.wing::after{ background:#f5f5f5; }
#gnav > ul{
	position:relative;
	z-index:300;
}
#gnav > ul > li{ position:relative; }
#gnav > ul > li > a{ background:rgb(43,59,94); }
#gnav > ul > li:nth-child(even) > a{ background:rgb(64,78,110); }
#gnav > ul > li img{
	max-width:auto;
	max-height:100%;
}
#gnav > ul > li > a{
	display:block;
	height:100%;
	transition:opacity .2s;
}
#gnav > ul > li > a.hover{ opacity:.8; }
#gnav > ul > li > ul{
	display:none;
	position:absolute;
	left:0;
	right:0;
}
#gnav > ul > li > a.hover + ul,
#gnav > ul > li > ul.hover{ display:block;}
#gnav > ul > li > ul > li > a{
	display:block;
	font-size:16px;
	line-height:24px;
	padding:4px 8px;
	background:rgb(43,59,94);
	color:white;
	transition:opacity .2s;
}
#gnav > ul > li > ul > li > a.hover{ opacity:.8; }
#gnav > ul > li > ul > li:not(:first-child) > a{ border-top:1px solid white; }
#gnav > button{
	display:none;
	border:none;
	border-radius:0;
	margin:0;
	background:url("./../image/interface/common/menu.png") scroll no-repeat center center / contain;
	width:70px;
	height:70px;
	position:absolute;
	top:10px;
	right:0;
	transition:opacity .2s;
}
#gnav > button.hover{ opacity:.8; }
@media screen and (max-width: 768px){
	#gnav > button{
		display:block;
		top:-70px;
	}
	#gnav > ul{
		display:none;
		background:rgb(43,59,94);
	}
	#gnav.clicked > ul{ display:block; }
	#gnav > ul > li > a{
		border-top:1px solid white;
		padding:15px;
		color:white;
	}
	#gnav > ul > li:nth-child(n) > a{ background:none; }
	#gnav > ul > li > a::before{ content: attr(data-name); }
	#gnav > ul > li > a > img{ display:none; }
	#gnav > ul > li > ul{
		display:block;
		position:static;
		margin:0 15px 10px;
		padding-left:5px;
		border-left:4px solid white;
	}
	#gnav > ul > li > ul > li:not(:first-child) > a{ border:none; }
	#gnav > ul > li > ul > li > a{
		padding:6px;
		
	}
}

/**
 * メインビジュアル・ページビジュアル
----------------------------------------------------------------------------------------------------*/
#pvis{ position:relative;}
#pvis > :not(.visual),
#mvis > ul > li > :not(.visual){
	position:absolute;
	display:inline-block;
}
#pvis > a,
#mvis > ul > li > a{ transition:opacity .2s; }
#pvis > a.hover,
#mvis > ul > li > a.hover{ opacity:.8; }
#mvis > menu > li.hover,
#mvis > menu > li.active{ background:rgb(59,179,204); }

#pvis[name="plate"] > .label,
#mvis > ul > li[name="plate"] > .label{ width:418px; bottom:20px; left:40px; }
#pvis[name="medical"] > .label,
#mvis > ul > li[name="medical"] > .label{ width:190px; top:0; left:40px; }
#pvis[name="general"] > .label,
#mvis > ul > li[name="general"] > .label{ width:190px; top:0; right:40px; }
#pvis[name="plate"] > .copy,
#mvis > ul > li[name="plate"] > .copy{ width:300px; bottom:140px; right:40px; }
#pvis[name="medical"] > .copy,
#mvis > ul > li[name="medical"] > .copy{ width:630px; bottom:80px; left:40px; }
#pvis[name="general"] > .copy,
#mvis > ul > li[name="general"] > .copy{ width:356px; top:80px; left:40px; }
#mvis > ul > li > .button{ width:360px; bottom:40px; right:40px; }
#pvis > .scroll{ width:300px; bottom:40px; right:20px; }
@media screen and (max-width: 1024px){
	#pvis[name="plate"] > .label,
	#mvis > ul > li[name="plate"] > .label{ width:300px; bottom:20px; left:20px; }
	#pvis[name="medical"] > .label,
	#mvis > ul > li[name="medical"] > .label{ width:120px; top:0; }
	#pvis[name="general"] > .label,
	#mvis > ul > li[name="general"] > .label{ width:140px; }
	#pvis[name="plate"] > .copy,
	#mvis > ul > li[name="plate"] > .copy{ width:200px; bottom:100px; }
	#pvis[name="medical"] > .copy,
	#mvis > ul > li[name="medical"] > .copy{ width:400px; bottom:40px; left:40px; }
	#mvis > ul > li > .button{ width:240px; bottom:30px; right:20px; }
	#pvis > .scroll{ width:200px; bottom:10px; }
}
@media screen and (max-width: 768px){
	#pvis[name="plate"] > .label,
	#mvis > ul > li[name="plate"] > .label{ width:240px; bottom:100px; left:20px; }
	#pvis[name="medical"] > .label,
	#mvis > ul > li[name="medical"] > .label{ top:0; left:10px; }
	#pvis[name="general"] > .label,
	#mvis > ul > li[name="general"] > .label{ width:100px; right:10px; }
	#pvis[name="general"] > .copy,
	#mvis > ul > li[name="general"] > .copy{ width:250px; top:20px; left:10px; }
}
@media screen and (max-width: 680px){
	#pvis[name="plate"] > .label{ width:200px; bottom:10px; }
	#mvis > ul > li[name="plate"] > .label{ width:200px; bottom:80px; }
	#pvis[name="plate"] > .copy,
	#mvis > ul > li[name="plate"] > .copy{ bottom:60px; }
	#pvis[name="medical"] > .copy,
	#mvis > ul > li[name="medical"] > .copy{ width:auto; right:20px; bottom:70px; left:150px; }
	#pvis:not([name="plate"]){ margin-bottom:100px; }
	#pvis > .scroll{ width:300px; bottom:-80px; right:0; left:0; margin:0 auto; }
	#mvis > ul > li > .button{ width:180px; bottom:20px; right:auto; left:10px; }
}
@media screen and (max-width: 540px){
	#pvis[name="general"] > .label,
	#mvis > ul > li[name="general"] > .label{ width:80px; }
	#pvis[name="plate"] > .copy,
	#pvis[name="medical"] > .copy,
	#pvis[name="general"] > .copy,
	#mvis > ul > li[name="plate"] > .copy,
	#mvis > ul > li[name="medical"] > .copy,
	#mvis > ul > li[name="general"] > .copy{ display:none; }
	#mvis > ul > li > .button{ bottom:30px; left:30px; }
	#mvis > ul > li[name="medical"] > .button{ left:auto; right:30px; }
	#pvis:not([name="plate"]){ margin-bottom:60px; }
	#pvis > .scroll{ width:200px; bottom:-40px; }
}

/**
 * Bナビ
----------------------------------------------------------------------------------------------------*/
#bnav > ul{
	margin:0 auto;
	max-width:940px;
}
#bnav > ul > li > a{
	display:block;
	border:1px solid rgb(43,59,94);
	border-radius:4px;
	transition:background .2s;
}
#bnav > ul > li > a.hover{ background:rgb(233,235,238); }

/**
 * フッター
----------------------------------------------------------------------------------------------------*/
#footertop,
#footertop::before,
#footertop::after{ background:rgb(233,235,238); }
#footerbottom,
#footerbottom::before,
#footerbottom::after{ background:rgb(43,59,94); }
#footertop,
#footerbottom{ padding:20px; }

/* フッターロゴ・フッターカード */
#footerlogo > img{
	max-width:200px;
	margin:20px auto;
}
#footercard > p{ margin:20px; }
#footercard a{
	color:rgb(60,163,-84);
	transition:color .2s;
}
#footercard a.hover{ color:rgb(125,194,29); }

/* Fナビ・著作権表記 */
#fnav > ul{ text-align:right; }
#fnav > ul > li{ display:inline-block; }
#fnav > ul > li > a{
	color:white;
	margin:0 .5em;
	transition:color .2s;
}
#fnav > ul > li > a.hover{ color:rgb(216,236,187); }
#cr{
	text-align:center;
	color:white;
	padding-top:10px;
}

/**
 * 記事
----------------------------------------------------------------*/
/* レイアウト */
#cont{ padding-bottom:80px; }
#cont > section{ padding-bottom:40px; }
#cont > p{ margin:20px; }

/* 見出し */
#cont > h1,
#cont > h1::before,
#cont > h1::after{ background:#333; }
#cont > h1{
	color:white;
	font-size:30px;
	line-height:40px;
	padding:20px 10px;
	font-weight:bold;
}
#cont > h1 > small{
	display:block;
	font-size:14px;
	line-height:21px;
}
@media screen and (max-width: 768px){
	#cont > h1{
		font-size:20px;
		line-height:30px;
		padding:10px;
	}
}

/* 子見出しtype1 */
#cont > section.type1 > header{
	background:rgb(43,59,94);
	margin-bottom:40px;
}
#cont > section.type1 > header > h1{
	background:white;
	height:70px;
	line-height:30px;
	margin-top:30px;
	padding:40px 20px 0 70px;
	text-align:right;
	font-size:20px;
	font-weight:bold;
	position:relative;
	box-sizing:border-box;
}
#cont > section.type1 > header > h1::before{
	content:'';
	display:block;
	position:absolute;
	left:0;
	top:0;
	height:0;
	width:0;
	border-top:35px solid rgb(43,59,94);
	border-left:35px solid rgb(43,59,94);
	border-right:35px solid white;
	border-bottom:35px solid white;
}
#cont > section.type1 > header > .copy > img{
	max-width:auto;
	max-height:100px;
	margin:0 20px;
}
@media screen and (max-width: 768px){
	#cont > section.type1 > header > h1{
		font-size:26px;
		margin:0;
		padding:20px 20px 0 50px;
	}
	#cont > section.type1 > header > h1::before{ border-width:25px; }
}

/* 子見出しtype2 */
#cont > section.type2 > h1{
	font-size:30px;
	line-height:40px;
	font-weight:bold;
	border-left:10px solid rgb(43,59,94);
	padding-left:10px;
	margin:40px 10px 20px;
	color:rgb(89,87,87);
}
body[name="article/medical"] #cont > section.type2 > h1{ border-color:rgb(216,52,110); }
body[name="article/general"] #cont > section.type2 > h1{ border-color:rgb(59,179,204); }

#cont > section.type2 > h1 > small{
	display:block;
	font-size:16px;
	line-height:20px;
}

/* 小セクション見出し */
#cont > section section > h1{
	font-size:24px;
	font-weight:bold;
	margin:20px 40px;
}
@media screen and (max-width: 768px){
	#cont > section section > h1{ margin:20px; }
}

/* 文章 */
#cont > section p{
	padding:0 20px;
	box-sizing:border-box;
	text-align:justify;
}
@media screen and (max-width: 768px){
	#cont > section p{ padding:20px; }
}

/* パネル */
#cont .panel{
	border:1px solid rgb(43,59,94);
	border-radius:4px;
	box-sizing:border-box;
	padding:4px 0;
}
#cont .panel > h1{
	font-size:16px;
	line-height:24px;
	margin:10px 40px;
	padding-left:24px;
	background:url("./../image/interface/icon/heading.png") scroll no-repeat left top / 24px;
}
#cont .panel > p{ margin:0 20px; }

/* ポイント */
#cont .point{
	box-sizing:border-box;
	padding:0 10px;
	min-height:220px;
	font-size:13px;
}
#cont .point:not(:first-child){ border-left:1px solid rgb(43,59,94); }
#cont .point > h1{
	font-size:16px;
	line-height:24px;
	margin:0 0 6px;
	padding-left:24px;
	background:url("./../image/interface/icon/point.png") scroll no-repeat left top / 24px;
}
#cont .point > p{ padding:0; }
@media screen and (max-width: 768px){
	#cont .point{
		float:left;
		width:50%;
		min-height:300px;
	}
	#cont .point > p{ padding:10px 20px 40px; }
	#cont .point:not(:first-child){ border:none; }
}
@media screen and (max-width: 480px){
	#cont .point{
		float:none;
		width:auto;
		min-height:auto;
	}
	#cont .point > p{ padding:10px 10px 40px; }
}

/* 求人登録ボックス */
.recruitbox{
	max-width:600px;
	border:4px solid rgb(242,248,232);
	box-sizing:border-box;
	margin:40px auto;
	padding:10px;
	position:relative;
	background:white;
}
.recruitbox::before{
	content:'';
	display:block;
	position:absolute;
	width:70px;
	height:70px;
	background:url("./../image/interface/common/recruitbox_free.png") scroll no-repeat center center / contain;
	top:-20px;
	left:-50px;
}
.recruitbox > a{
	display:inline-block;
	transition:opacity .2s;
}
.recruitbox > a.hover{ opacity:.8; }
#recruitbox{ margin:-50px 10px 50px 60px; }
@media screen and (max-width: 1024px){
	#recruitbox{
		margin-top:-30px;
		max-width:460px;
	}
	.recruitbox::before{
		width:60px;
		height:60px;
		left:-40px;
	}
}
@media screen and (max-width: 768px){
	#recruitbox,
	.recruitbox{
		margin:20px 60px;
		max-width:none;
	}
	.recruitbox::before{
		top:-46px;
		left:-16px;
	}
	.recruitbox.grid\:2 > a{
		float:left;
		width:50%;
	}
}
@media screen and (max-width: 580px){
	#recruitbox,
	.recruitbox{ margin:20px 40px; }
	.recruitbox > a:first-child{ margin-bottom:10px; }
	.recruitbox.grid\:2 > a{
		float:none;
		width:auto;
	}
}

/* 求人票エリア */
body[name="article/medical"] #recruit > .wing,
body[name="article/medical"] #recruit > .wing::before,
body[name="article/medical"] #recruit > .wing::after{ background:rgb(251,234,240); }
body[name="article/general"] #recruit > .wing,
body[name="article/general"] #recruit > .wing::before,
body[name="article/general"] #recruit > .wing::after{ background:rgb(235,247,249); }
#recruit > .wing::before,
#recruit > .wing::after{ z-index:-100; }
#recruit [id^="vote_"] > h1{ padding:4px 10px; }
#recruit [id^="vote_"] > h1.wing,
#recruit [id^="vote_"] > h1.wing::before,
#recruit [id^="vote_"] > h1.wing::after{
	background:rgb(216,52,110);
	border-bottom:4px solid rgb(138,-354,-180);
}
#recruit [id^="vote_"] > h1{
	margin:0;
	color:white;
	line-height:40px;
}

/* 求人票 */
.vote{
	background:white;
	padding:20px;
	box-sizing:border-box;
	color:black;
	border:2px solid black;
}
.vote > h1{
	margin:0 0 10px !important;
	line-height:30px;
}

/* 右寄りボタン */
.rightbutton{
	margin:10px 0;
	text-align:right;
}
.rightbutton > a{
	width:140px;
	display:inline-block;
	background:rgb(43,59,94);
	color:white;
	text-align:center;
	border-radius:2px;
	padding:4px;
	transition:opacity .2s;
}
.rightbutton > a.hover{
	opacity:.8;
	color:white;
}

/* リードビジュアル */
#leadvisual{
	position:relative;
	width:150%;
	left:50%;
	margin-left:-75%;
	background:url("./../image/article/index/bg.png") scroll no-repeat center center / cover;
}
#leadvisual > *{
	max-width:1024px;
	margin:0 auto;
}
#leadvisual > h1{ margin-bottom:40px; }
#leadvisual > h1 > img{
	max-width:768px;
	margin:0;
	padding-top:20px;
}
#leadvisual > section{
	width:512px;
	margin-top:-40px;
}
#leadvisual > section:nth-child(even){ margin-left:50%; }
#leadvisual > section:nth-child(odd){ margin-right:50%; }
#cont #leadvisual > section >h1{ margin:0; }
#leadvisual > section > p{
	font-size:16px;
	line-height:26px;
	font-weight:bold;
	color:black;
}
#leadvisual > nav{
	text-align:center;
}
#leadvisual > nav > a{
	display:inline-block;
	max-width:200px;
	background:rgb(193,39,45);
	margin:60px 40px 20px;
	transition:background .2s;
}
#leadvisual > nav > a.hover{ background:rgb(131,-177,-165); }
@media screen and (max-width: 1536px){
	#leadvisual{
		width:100%;
		margin-left:-50%;
		width:100vw;
		margin-left:-50vw;
	}
}
@media screen and (max-width: 1024px){
	#leadvisual{
		width:100%;
		margin-left:-50%;
	}
	#leadvisual > section{ width:50%; }
}
@media screen and (max-width: 768px){
	#leadvisual > h1 > img{ max-width:100%; }
	#leadvisual > section{
		width:100%;
	}
	#leadvisual > section:nth-child(n){ margin:0; }
}

/* 会社概要 */
#spot_company_business,
#spot_company_business::before,
#spot_company_business::after{ background:rgb(235,247,249); }
#spot_company_business > div > div{ margin:40px 0; }
#spot_company_business > div > div > section:not(:first-child){ padding-top:20px; }
#spot_company_business > div > div > section > h1{
	font-size:20px;
	line-height:24px;
	margin:10px 0;
	font-weight:bold;
	color:black;
}
#spot_company_business > div > div > section > h1 > img{
	display:inline-block;
	width:24px;
}
#spot_company_business > div > div > section > h1 > small{
	margin-right:4px;
	line-height:20px;
}
#spot_company_business > div > figure{
	padding:40px;
	box-sizing:border-box;
}
#spot_company_business > div > figure > img{
	background:white;
	padding:20px;
	box-sizing:border-box;
	margin-bottom:10px;
}
#spot_company_business > div > figure > figcaption{ text-align:center; }
@media screen and (max-width: 768px){
	#spot_company_business > div > div > section > h1{ padding-left:30px; }
	#spot_company_business > div > div > section > h1 > img{ margin-left:-30px; }
	#spot_company_business > div > div > section > h1 > small{
		display:block;
		margin-top:-26px;
	}
}

/* メディカルエージェント5つのメリット */
#spot_medical_merit{
	box-sizing:border-box;
	padding:0 5px;
}
#spot_medical_merit > *{
	box-sizing:border-box;
	padding:5px;
}
@media screen and (max-width: 768px){
	#spot_medical_merit > *{
		float:left;
		width:50%;
	}
}
@media screen and (max-width: 480px){
	#spot_medical_merit > *{ width:100%; }
}

/* アクセスマップ */
.gm{ padding:40px; }
.gm > iframe{ height:400px; }
@media screen and (max-width: 768px){
	.gm{ padding:20px; }
}

/* 事業案内グラフィック */
#businessgraph,
#businessgraph::before,
#businessgraph::after{ background:rgb(253,253,247); }
#businessgraph{ padding:40px 80px; }
@media screen and (max-width: 768px){
	#businessgraph > div > img:first-child{  }
	#businessgraph > div > img:last-child{ max-width:50%; }
}
@media screen and (max-width: 480px){
#businessgraph{ padding:20px 0; }
}

/* 求人票ナビ */
#votenav{ margin-bottom:20px; }
#votenav > ul > li > a{
	display:block;
	margin:10px;
	transition:opacity .2s;
}
#votenav > ul > li > a.hover{ opacity:.8; }
@media screen and (max-width: 768px){
	#votenav{ margin:0 10px 10px; }
	#votenav > ul > li{
		float:left;
		width:50%;
	}
	#votenav > ul > li > a{ margin:5px; }
}

/* お問い合わせ > お電話でのお問い合わせ > 電話番号 */
#spot_contact_bigtel,
#spot_contact_bigtel::before,
#spot_contact_bigtel::after{ background:rgb(245,245,218); }
#spot_contact_bigtel{
	margin-top:20px;
	padding:10px;
	text-align:center;
}
#spot_contact_bigtel > a{
	display:inline-block;
	margin:0 auto;
	transition:opacity .2s;
}
#spot_contact_bigtel > a.hover{ opacity:.8; }

/* 会員登録 */
#entryform > nav{
	background:rgb(229,242,209);
	padding:20px;
	max-width:480px;
	margin:0 auto;
	text-align:center;
}
#entryform > nav > a{
	display:inline-block;
	width:140px;
	display:inline-block;
	background:rgb(43,59,94);
	color:white;
	text-align:center;
	border-radius:2px;
	padding:4px;
	transition:opacity .2s;
	margin-top:20px;
}
#entryform > nav > a.hover{
	opacity:.8;
	color:white;
}

/* フォーム */
.form section{ margin:20px 0; }
.form section > span,
.form label > span:first-child{ font-weight:bold; }
.form{ padding:40px; }
.form th{ min-width:100px; }
@media screen and (max-width: 1024px){
	.form input[type="text"]{ width:100%; }
}
@media screen and (max-width: 768px){
	.form{ padding:20px; }
}
.form .dialog{
	position:fixed;
	left:50%;
	top:50%;
	margin-top:-100px;
	margin-left:-150px;
	width:292px;
	height:192px;
	border:4px solid black;
	z-index:10000;
	box-shadow:0 0 0 10000px rgba(0,0,0,.8);
	background:white;
	padding:20px;
	border-radius:8px;
	text-align:center;
}
.form .dialog.success{ border-color:rgb(59,179,204); }
.form .dialog.error{ border-color:rgb(193,39,45); }

/**
 * 特別求人
----------------------------------------------------------------------------------------------------*/
/* ビジュアル */
#specialvote .visual{ margin:0 -256px; }
#specialvote .visual > .sp{ display:none; }
@media screen and (max-width: 1024px){
	#specialvote .visual{ margin:0; }
	#specialvote .visual > .pc{ display:none; }
	#specialvote .visual > .sp{
		display:block;
		max-width:auto;
		width:100%;
	}
}

/* 大見出し */
#specialvote > h1{
	position:relative;
	color:white;
	font-family:"ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;;
}
#specialvote > h1,
#specialvote > h1::after{ background:black; }
#specialvote > h1::before,
#specialvote > h1 > small{ background:rgb(89,87,87) }
#specialvote > h1 > small{
	display:block;
	font-size:26px;
	line-height:30px;
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	width:120px;
	text-align:center;
	padding:10px;
}
#specialvote > h1 > ul{
	position:absolute;
	right:0;
	top:0;
	bottom:0;
	width:280px;
	margin-top:10px;
}
#specialvote > h1 > ul > li{
	display:inline-block;
	background:rgb(12,122,152);
	font-size:20px;
	line-height:26px;
	padding:0 10px;
	margin-bottom:10px;
}
#specialvote > h1 > span{
	display:block;
	margin-left:140px;
	margin-right:280px;
	padding:10px;
	font-size:38px;
	line-height:42px;
}
#specialvote > h1 > span > small{
	display:block;
	font-size:13px;
	line-height:18px;
	letter-spacing:-0.1em;
	margin-bottom:6px;
}
#specialvote > h1 > span > span{
	font-size:20px;
	line-height:26px;
	display:inline-block;
	background:white;
	color:rgb(89,87,87);
	padding:0 10px;
	margin-right:10px;
	vertical-align:middle;
}
@media screen and (max-width: 1024px){
	#specialvote > h1 > small{
		display:inline-block;
		position:static;
		width:auto;
		font-size:20px;
		line-height:26px;
		margin:10px 10px 0;
		padding:2px 10px;
	}
	#specialvote > h1 > small > br{ display:none; }
	#specialvote > h1 > span{ margin-left:0; }
	#specialvote > h1 > ul{
		position:static;
		width:auto;
		padding:0 10px;
		margin-top:0;
	}
	#specialvote > h1 > span{ margin-right:0; }
}

/* 記事エリア */
#specialvote > .article{
	position:relative;
	padding:30px;
}
#specialvote > .article::before{
	content:'';
	position:absolute;
	display:block;
	top:0;
	left:-256px;
	right:-256px;
	height:512px;
	z-index:-1;
	background:url("./../image/article/general/00020/bg.png") scroll no-repeat center top;
}
#specialvote > .article section h1,
#specialvote > .article section h2{
	font-size:26px;
	line-height:40px;
	font-weight:bold;
	margin-bottom:20px;
}
#specialvote > .article section h1:not(:first-child),
#specialvote > .article section h2:not(:first-child){ margin-top:20px; }
#specialvote > .article section section h1{
	font-size:18px;
	line-height:24px;
	font-weight:bold;
	margin-bottom:10px;
}
#specialvote > .article section section h1:not(:first-child){ margin-top:10px; }
@media screen and (max-width: 768px){
	#specialvote > .article{ padding:20px; }
	#specialvote > .article::before{
		left:0;
		right:0;
		background:url("./../image/article/general/00020/bg_sp.png") scroll no-repeat center top;
	}
}

/* アンカーパネル */
#specialvote > .article > .anchorpanel{ margin:0 0 40px; }
#specialvote > .article > .anchorpanel > div a{
	display:block;
	box-sizing:border-box;
	padding:10px;
	transition:opacity .2s;
}
#specialvote > .article > .anchorpanel > div a.hover{ opacity:.8; }

/* 説明文 */
#specialvote > .article > section:first-of-type h1{
	font-size:40px;
	line-height:50px;
	font-weight:bold;
	margin:10px 10px 40px;
}
#specialvote > .article > section:first-of-type > h1 > small{
	font-size:24px;
	line-height:30px;
	display:block;
	font-weight:normal;
}
#specialvote > .article > section:first-of-type > .grid\:2 > *{
	padding:10px;
	box-sizing:border-box;
}
#specialvote > .article > section:first-of-type > .grid\:2:first-of-type + [class*="grid:"] > *{ float:right; }
.chipbg01{ min-height:300px; background:url("./../image/article/general/00020/sectionbg01.png") scroll no-repeat center center / contain; }
.chipbg02{ min-height:300px; background:url("./../image/article/general/00020/sectionbg02.png") scroll no-repeat center center / contain; }

/* リストボックス1 */
#specialvote > .article .boxlist01{ margin:40px -10px; }
#specialvote > .article .boxlist01 > section{
	background:#f5f5f5;
	box-sizing:border-box;
	position:relative;
	min-height:260px;
}
#specialvote > .article .boxlist01 > section > img{
	position:absolute;
	left:20px;
	top:20px;
	width:40px;
}
#specialvote > .article .boxlist01 > section > h1{
	font-size:16px;
	line-height:22px;
	font-weight:bold;
	padding:10px 10px 0 50px;
	margin-bottom:0 !important;
}
#specialvote > .article .boxlist01 > section > p{ margin:20px; }
@media screen and (max-width: 768px){
	#specialvote > .article .boxlist01 > section{ min-height:auto; }
	#specialvote > .article .boxlist01 > section > h1{ padding-top:20px; }
	#specialvote > .article .boxlist01 > section > p{ padding-bottom:20px; }
}

/* 募集ポジション */
#specialvote > .article .golden{ margin-bottom:40px; }
#specialvote > .article .golden > :first-child{ width:38%; }
#specialvote > .article .golden > :last-child{
	width:62%;
	box-sizing:border-box;
	padding-left:40px;
}
#specialvote > .article .golden > div > p{ margin-bottom:40px; }
#specialvote > .article .boxlist02 > section{
	background:rgb(230,241,244);
	position:relative;
	margin-bottom:20px;
	padding:10px;
	min-height:80px;
}
#specialvote > .article .boxlist02 > section > img{
	position:absolute;
	top:0;
	left:0;
	width:100px;
}
#specialvote > .article .boxlist02 > section > :not(img){ margin-left:100px; }
@media screen and (max-width: 768px){
	#specialvote > .article .golden > :first-child,
	#specialvote > .article .golden > :last-child{
		width:auto;
		padding:0;
	}
}

/* 求人パネル */
#specialvote > .article .votepanel > section{
	position:relative;
	min-height:240px;
	background:rgb(230,241,244);
	margin-bottom:20px;
}
#specialvote > .article .votepanel > section > img{
	width:301px;
	position:absolute;
	left:0;
	top:0;
}
#specialvote > .article .votepanel > section > div{
	padding:20px 20px 20px 321px;
}
#specialvote > .article .votepanel > section > div > h1{
	position:relative;
	margin-left:60px;
	font-size:26px;
	line-height:34px;
}
#specialvote > .article .votepanel > section > div > h1 > img{
	width:90px;
	position:absolute;
	left:-80px;
	top:-20px;
}
#specialvote > .article .votepanel > section > div > h1 > small{
	display:block;
	font-size:16px;
	line-height:22px;
}
#specialvote > .article .votepanel > section > div > div > p > b{
	font-size:16px;
	line-height:30px;
}
@media screen and (max-width: 1024px){
	#specialvote > .article .votepanel > section > div > div > p{
		float:none;
		width:auto;
	}
}
@media screen and (max-width: 768px){
	#specialvote > .article .votepanel > section > img{
		position:static;
		width:auto;
	}
	#specialvote > .article .votepanel > section > div{ padding:20px; }
}

/* オファー */
#specialvote .offer.wing,
#specialvote .offer.wing::before,
#specialvote .offer.wing::after{ background:rgb(247,213,32); }

/* 募集要項 */
@media screen and (max-width: 768px){
	#specialvote .votetable > div > table{ width:100%; }
}

/* フォーム */
.error{
	background:crimson;
	color:white;
	padding:20px !important;
	margin:20px 0 !important;
}
.success{
	background:rgb(59,179,204);
	color:white;
	padding:20px !important;
	margin:20px 0 !important;
}
.normal{
	background:#eee;
	padding:20px !important;
	margin:20px 0 !important;
}
.form.confirm > fieldset label > span{
	margin-right:40px;
}
