@charset "utf-8";
/*
Theme Name: Air Biz SORA
Description:
Version: 1.0
*/

@import "css/reset.css";
@import "css/editor-style.css";

/* Base Style
================================================== */
html {
	font-size: 62.5%;
}

body {
	position: relative;
	background-color: #fff;
	color: #333;
	font-size: 1.8rem;
	font-family: Meiryo, 'Hiragino Kaku Gothic ProN', 'MS PGothic', sans-serif;
	line-height: 1.6;
	-webkit-text-size-adjust: 100%;
}

input,
select,
textarea {
	color: #000;
	font-family: inherit;
	font-size: 100%;
}

.new {
	display: inline-block;
	margin-right: .75em;
	padding: 1px 8px 0;
	background: #ff9a1f;
	color: #fff;
	font-size: 1.4rem;
	font-weight: normal;
	vertical-align: text-top;
}

.hide,
.scr-text {
	position: absolute;
	overflow: hidden;
	width: 0;
	height: 0;
}

/* Layout
================================================== */
.inner {
	max-width: 960px;
	margin: 0 auto;
	padding: 0 20px;
}

#content {
	margin-bottom: 120px;
}

@media screen and (max-width: 760px) {
	.inner {
		padding: 0 8px;
	}

	#content {
		margin-bottom: 100px;
	}
}

/* Block Skip
================================================== */
.skip a {
	display: block;
	height: 0;
	overflow: hidden;
}

.skip a:focus {
	height: auto;
}

/* ヘッダー
================================================== */
#common-header {
	position: relative;
}

#common-header > .inner:first-child {
	padding-top: 10px;
	padding-bottom: 12px;
}

#common-header > .inner:first-child .discription {
	font-size: 1.3rem;
}

#common-header a:hover,
#common-header a:focus {
	text-decoration: none;
}

#common-header img {
	vertical-align: top;
}

#common-header .logo {
	float: left;
	line-height: 1;
}

#common-header .logo a {
	display: inline-block;
}

#common-header .logo span {
	display: table-cell;
	height: 44px;
	vertical-align: bottom;
}

#common-header .logo span:last-child {
	padding-left: 24px;
}

#common-header .jaic {
	float: right;
	margin-top: 5px;
}

#home #common-header {
	background: url(images/header_bg01.jpg) no-repeat 50% 0;
	background-size: cover;
}

#home #common-header .key-visual {
	padding-top: 65px;
	padding-bottom: 58px;
	line-height: 1;
}

#home #common-header .key-visual .catchy img:first-child {
	margin-bottom: 4px;
	margin-left: -8px;
}

@media screen and (max-width: 760px) {
	#common-header > .inner:first-child {
		padding-top: 8px;
		padding-bottom: 10px;
		background: -webkit-linear-gradient(top, #fff 95%, #ccc);
		background: linear-gradient(to bottom, #fff 95%, #ccc);
		background-color: #fff;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 66px;
		box-sizing: border-box;
		z-index: 90;
	}

	#common-header > .inner:first-child .discription {
		display: none;
	}

	#common-header .logo {
		float: none;
		margin-right: 70px;
	}

	#common-header .jaic {
		display: none;
	}

	#home #common-header {
		background: none;
	}

	#home #common-header .key-visual {
		padding-top: 85px;
		padding-bottom: 70px;
		background: url(images/header_bg01.jpg) no-repeat 65% 0;
		background-size: cover;
	}

	#home #common-header .catchy img:first-child {
		max-width: 75%;
	}

	#home #common-header .key-visual,
	#topic-path {
		margin-top: 63px;
	}
}

@media screen and (max-width: 480px) {
	#common-header > .inner {
		padding-bottom: 4px;
	}

	#common-header .logo {
		width: 220px;
	}

	#common-header .logo span {
		display: block;
		height: auto;
	}
	
	#common-header .logo span:first-child {
		width: 200px;
	}

	#common-header .logo span:last-child {
		width: 128px;
		padding-top: 5px;
		padding-left: 0;
	}
}

/* 会員向けメニューボタン
================================================== */
#member-menu li.entry {
	background: -webkit-linear-gradient(top, #e7eff8, #bad2ea);
	background: linear-gradient(to bottom, #e7eff8, #bad2ea);
	background-color: #bad2ea;
}

#member-menu li.job {
	background: -webkit-linear-gradient(top, #ece7f8, #bcbaeb);
	background: linear-gradient(to bottom, #ece7f8, #bcbaeb);
	background-color: #bcbaeb;
}

#member-menu li.login {
	background: -webkit-linear-gradient(top, #dbf7ef, #b6eddf);
	background: linear-gradient(to bottom, #dbf7ef, #b6eddf);
	background-color: #b6eddf;
}

#member-menu li.mypage {
	background: -webkit-linear-gradient(top, #ffba6d, #ff8000);
	background: linear-gradient(to bottom, #ffba6d, #ff8000);
	background-color: #ffba6d;
}

#member-menu li.logout {
	background: -webkit-linear-gradient(top, #ffe9e9, #ffc1c1);
	background: linear-gradient(to bottom, #ffe9e9, #ffc1c1);
	background-color: #ffc1c1;
}

#member-menu li a {
	display: table-cell;
	width: 100%;
	height: 100%;
	background: url(images/com_bt01.png) no-repeat;
	background-size: 100% 100%;
	color: #333;
	font-size: 2.0rem;
	line-height: 1.2;
	vertical-align: middle;
	position: relative;
	z-index: 10;
}

#member-menu li.mypage a {
	color: #fff;
}

#member-menu li a span {
	display: inline-block;
}

#member-menu li a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 5%;
	margin-top: -16px;
	border-style: solid;
	border-width: 16px 0 16px 16px;
	border-color: transparent transparent transparent #0056b5;
}

#member-menu li.mypage a::after {
	border-left-color: #fff;
}

#member-menu li.logout a::after {
	border-left-color: #ff4d4d;
}

#member-menu li a:hover {
	opacity: .8;
	text-decoration: none;
}

#home #member-menu {
	margin-bottom: 35px
}

#home #member-menu li {
	float: left;
	width: 195px;
	height: 4.6em;
	margin-right: 20px;
	display: table;
	position: relative;
}

#home #member-menu li:first-child {
	margin-left: 3px;
}

#home #member-menu li:last-child {
	margin-right: 0;
}

#home #member-menu li::before,
#home #member-menu li::after {
	content: "";
	position: absolute;
	left: -3px;
	width: 200px;
	height: 86px;
	background-repeat: no-repeat;	
}

#home #member-menu li::before {
	top: -3px;
}

#home #member-menu li::after {
	bottom: -3px;
	background-position: 0 100%;
	box-shadow: 0 3px 3px rgba(0,0,0,.1);
}

#home #member-menu li.entry::before,
#home #member-menu li.entry::after {
	background-image: url(images/header_bt01.png);
}

#home #member-menu li.job::before,
#home #member-menu li.job::after {
	background-image: url(images/header_bt02.png);
}

#home #member-menu li.login::before,
#home #member-menu li.login::after {
	background-image: url(images/header_bt03.png);
}

#home #member-menu li.mypage::before,
#home #member-menu li.mypage::after,
#home #member-menu li.logout::before,
#home #member-menu li.logout::after {
	background-image: url(images/header_bt04.png);
}

#home #member-menu li a {
	padding: 2px 35px 0 10px;
	font-weight: bold;
}

@media screen and (max-width: 760px) {
	#home #member-menu {
		margin: 0;
		padding: 0;
	}

	#home #member-menu ul {
		padding-bottom: 3px;
		background: -webkit-linear-gradient(top, #fff 95%, #ccc);
		background: linear-gradient(to bottom, #fff 95%, #ccc);
		background-color: #fff;
		overflow: hidden;
	}

	#home #member-menu li {
		width: 33%;
		height: 2.5em;
		margin-right: .5%;
	}

	#home #member-menu li:first-child {
		margin-left: 0;
	}

	#home #member-menu li.mypage,
	#home #member-menu li.logout {
		width: 49.75%;
	}

	#home #member-menu li::before,
	#home #member-menu li::after {
		content: none;
	}

	#home #member-menu li a {
		padding-right: 10px;
		font-size: 1.6rem;
	}

	#home #member-menu li a::after {
		top: auto;
		bottom: -3px;
		right: 3px;
		margin-top: 0;
		border-width: 9px 0 9px 9px;
		transform: rotate(45deg);
	}

	#home #member-menu .sp-hide {
		display: none;
	}
}

body:not(#home) #member-menu {
	position: fixed;
	top: 220px;
	right: 0;
	padding: 9px;
	border: 2px solid #fff;
	background-color: rgba(234,234,234,.8);
	box-shadow: 0 2px 4px rgba(0,0,0,.45);
}

body:not(#home) #member-menu li {
	width: 116px;
	height: 82px;
	display: table;
	position: relative;
}

body:not(#home) #member-menu li + li {
	margin-top: 11px;
}

body:not(#home) #member-menu li::before {
	content: "";
	position: absolute;
	top: -3px;
	left: -3px;
	width: calc(100% + 3px);
	height: calc(100% + 3px);
	border: 1px solid #fff;
	border-bottom-width: 2px;
}

body:not(#home) #member-menu li a {
	padding: 0 25px 0 8px;
}

@media screen and (max-width: 760px) {
	body:not(#home) #member-menu {
		position: static;
		margin: 20px 3px 10px;
		padding: 0;
		border: 0;
		background-color: transparent;
		box-shadow: none;
	}

	body:not(#home) #member-menu li {
		width: 100%;
		height: 58px;
	}

	body:not(#home) #member-menu li::before {
		border-color: #abc9e8;
	}
}

@media screen and (max-width: 560px) {
	body:not(#home) #member-menu li {
		height: 50px;
	}

	body:not(#home) #member-menu li a::after {
		margin-top: -12px;
		border-width: 12px 0 12px 12px;
	}
}

/* グローバルナビ
================================================== */
#global-nav {
	padding: 20px 0;
	background-color: #0056b5;
}

#home #global-nav {
	background-color: rgba(0,86,180,.8);
}

#global-nav li {
	float: left;
	width: 13%;
	box-sizing: border-box;
	border-right: 1px solid #4a8acb;
}

#global-nav li.page-home {
	width: 11.5%;
	border-left: 1px solid #4a8acb;
}

#global-nav li.page-advantage,
#global-nav li.page-staffvoice {
	width: 17%;
}

#global-nav li.page-flow {
	width: 15.5%;
}

#global-nav li a {
	display: block;
	margin: -20px 0;
	text-align: center;
}

#global-nav li a:hover img,
#global-nav li a:focus img {
	opacity: 1;
}

@media screen and (max-width: 760px) {
	#global-nav {
		display: none;
	}
}

/* フッター及びスマホメニュー
================================================== */
#common-footer {
	padding: 10px 0 23px;
	background-color: #0056b5;
	color: #fff;
}

#common-footer a {
	color: #fff;
}

#sp-menu {
	display: none;
}

#foot-nav {
	max-width: 800px;
	margin-bottom: 15px;
}

#foot-nav li {
	display: inline-block;
}

#foot-nav li::after {
	content: "｜";
	margin-left: .25em;
}

#foot-nav li.page-home {
	text-transform: uppercase;
}

#common-footer .copyright {
	font-size: 1.4rem;
}

@media screen and (max-width: 760px) {
	#sp-menu {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		height: 63px;
		z-index: 100;
		border-left: 1px solid #ececfb;
	}

	#sp-menu .close {
		display: none;
	}

	body.open #sp-menu {
		border-left: 0;
	}

	body.open #sp-menu .open {
		display: none;
	}

	body.open #sp-menu .close {
		display: block;
	}

	#sp-menu a {
		display: table-cell;
		padding: 13px 10px;
		vertical-align: middle;
	}

	#sp-menu a:hover img,
	#sp-menu a:focus img {
		opacity: 1;
	}

	#sub-nav {
		display: block;
		position: fixed;
		top: 0;
		right: -250px;
		width: 250px;
		height: 100%;
		box-sizing: border-box;
		padding: 63px 5px 10px;
		overflow: auto;
		z-index: 99;
		background-color: #0056b5;
		color: #fff;
	}

	#foot-nav {
		max-width: none;
		margin: 0 5px;
		border-top: 1px solid #4a8acb;
	}

	#foot-nav li {
		display: block;
	}

	#foot-nav li::after {
		content: none;
	}

	#foot-nav li {
		border-bottom: 1px solid #4a8acb;
	}

	#foot-nav li a {
		display: block;
		padding: 5px 10px;
		color: #fff;
	}

	#foot-nav li a:hover {
		text-decoration: none;
	}

	body.open #sp-nav-layer {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 95;
		background-color: rgba(0,0,0,0.5);
	}
}

@media screen and (max-width: 760px) {
	#common-footer .copyright {
		text-align: center;
	}
}

@media screen and (max-width: 600px) {
	#common-footer .copyright {
		font-size: 1.1rem;
	}
}

/* cookie同意
------------------------------ */
/* PC/SP出し分け */
@media screen and (max-width: 767px) {
	.cookie-agree .pc {
		display: none !important;
	}
}

.cookie-agree {
	display: none;
	box-sizing: border-box;
	position: fixed;
	bottom: 0;
	left: 0;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	padding: 16px 30px;
	width: 100%;
	color: #efefef;
	font-size: smaller;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 10000;
}

.cookie-agree .txt {
	width: calc(100% - 90px - 24px);
	line-height: 1.4;
}

.cookie-agree a {
	color: rgb(0, 156, 224);
}

.cookie-agree .btn {
	margin: 0 !important;
	padding: 8px 0;
	width: 90px;
	border: none;
	box-shadow: none;
	color: #FFF;
	text-align: center;
	background: none;
	background-color: #4472C4;
	border-radius: 8px;
	cursor: pointer;
	font-size: smaller;
}

.cookie-agree .btn::after {
	display: none;
}

/* パンくずリスト
================================================== */
#topic-path {
	padding: 8px 0;
	background-color: #ebebeb;
	line-height: 1.2;
}

#topic-path .home {
	text-transform: uppercase;
}

#topic-path em {
	font-style: normal;
}

@media screen and (max-width: 760px) {
	#topic-path {
		font-size: 1.4rem;
	}
}

/* ページタイトル
================================================== */
#content-header {
	margin-bottom: 40px;
	padding: 38px 0 42px;
	background: url(images/header_bg02.jpg) repeat-x 50% 0;
	background-size: auto 100%;
	text-align: center;
	line-height: 1.2;
}

#job #content-header {
	background-image: url(images/header_bg03.jpg);
}

#advantage #content-header {
	background-image: url(images/header_bg04.jpg);
}

#staffvoice #content-header {
	background-image: url(images/header_bg05.jpg);
}

#flow #content-header {
	background-image: url(images/header_bg06.jpg);
}

#mypage #content-header {
	background-image: url(images/header_bg07.jpg);
}

#content-header h1 {
	font-size: 4.0rem;
	font-weight: bold;
}

#content-header p {
	margin-top: 5px;
	color: #fff;
	font-size: 2.0rem;
}

@media screen and (max-width: 760px) {
	#content-header {
		margin-bottom: 25px;
		padding: 25px 0;
	}
}

@media screen and (max-width: 460px) {
	#content-header h1 {
		font-size: 8.7vw;
	}
}

/* ボタン（トップ・新着詳細・職種一覧・募集要項・各フォーム）
================================================== */
.more,
.btn,
p.submit,
#entry .content ul li:last-child {
	width: 12em;
	margin: 30px auto;
	border: 1px solid #fff;
	box-shadow: 0 2px 3px rgba(0,0,0,.2);
	background: -webkit-linear-gradient(top, #e7eff8, #b9d2ea);
	background: linear-gradient(to bottom, #e7eff8, #b9d2ea);
	background-color: #b9d2ea;
	position: relative;
	font-size: 2.0rem;
	line-height: 1.2;
	text-align: left;
}

p.btn.apply {
	background: -webkit-linear-gradient(top, #ffba6d, #ff8000);
	background: linear-gradient(to bottom, #ffba6d, #ff8000);
	background-color: #ffba6d;
}

.more::after,
.btn::after,
p.submit::after,
#entry .content ul li:last-child::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 10%;
	margin-top: -16px;
	border-style: solid;
	border-width: 16px 0 16px 16px;
	border-color: transparent transparent transparent #0056b5;
}

.btn.prev::after,
p.submit.back::after {
	right: auto;
	left: 10%;
	border-width: 16px 16px 16px 0;
	border-color: transparent #0056b5 transparent transparent;
}

p.btn.apply::after {
	border-left-color: #fff;
}

.btn.list::after {
	content: none;
}

.more:hover,
.btn:hover,
p.submit:hover,
#entry .content ul li:last-child:hover  {
	opacity: .8;
}

.more a,
.btn a,
p.submit input,
#entry .content ul li:last-child a {
	display: block;
	padding: 20px 5% 18px;
	background: url(images/com_bt01.png) no-repeat;
	background-size: 100% 65%;
	color: #333;
	position: relative;
	z-index: 10;
}

.btn.apply a,
.btn.next a,
.btn.guide a,
.btn.home a,
p.submit input,
#entry .content ul li:last-child a {
	padding-right: 20%;
}

.btn.prev a,
p.submit.back input {
	padding-right: 5%;
	padding-left: 20%;
}

p.submit input {
	width: 100%;
	box-sizing: border-box;
	border: 0;
	text-align: left;
	line-height: 1;
	cursor: pointer;
}

p.btn.apply a {
	color: #fff;
}

.more a:hover,
.btn a:hover,
#entry .content ul li:last-child a:hover {
	text-decoration: none;
}

@media screen and (max-width: 560px) {
	.more,
	.btn,
	p.submit,
	#entry .content ul li:last-child {
		width: 11em;
		font-size: 1.8rem;
	}

	.more::after,
	.btn::after,
	p.submit::after,
	#entry .content ul li:last-child::after {
		right: 5%;
		margin-top: -12px;
		border-style: solid;
		border-width: 12px 0 12px 12px;
		border-color: transparent transparent transparent #0056b5;
	}

	.btn.prev::after,
	p.submit.back::after {
		left: 5%;
		border-width: 12px 12px 12px 0;
		border-color: transparent #0056b5 transparent transparent;
	}

	.more a,
	.btn a,
	p.submit input,
	#entry .content ul li:last-child a {
		padding: 18px 5% 16px;
	}

	.btn.apply a,
	.btn.next a,
	.btn.guide a,
	.btn.home a,
	p.submit input,
	#entry .content ul li:last-child a {
		padding-right: 15%;
	}

	.btn.prev a,
	p.submit.back input {
		padding-right: 5%;
		padding-left: 15%;
	}
}

/* 「今すぐ無料で登録」バナー
================================================== */
.entry-banner {
	margin-top: 80px;
	padding: 46px 2.6%;
	background: url(images/com_bg01.jpg) no-repeat 100% 0;
}

.entry-banner:hover {
	opacity: .8;
}

.entry-banner img:hover {
	opacity: 1;
}
.entry-banner p {
	float: left;
	line-height: 1.4;
}

.entry-banner p:first-child {
	margin: 5px 6.5% 5px 0;
}

.entry-banner p strong {
	display: block;
	font-size: 2.4rem;
}

.entry-banner p:last-child {
	border-radius: 6px;
	box-shadow: -5px 5px 10px rgba(0,0,0,.4);
	background-color: #fff;
}

@media screen and (max-width: 760px) {
	.entry-banner {
		margin-top: 40px;
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.entry-banner p:first-child {
		float: none;
		margin-top: 0;
		margin-right: 0;
		text-shadow: 0    0   25px #eff7fc,
		             0    0   10px #eff7fc,
		             0    0    5px #eff7fc,
		             0   -1px  0   rgba(239,247,252,0.2),
		             1px -1px  0   rgba(239,247,252,0.2),
		             1px  0    0   rgba(239,247,252,0.2),
		             1px  1px  0   rgba(239,247,252,0.2),
		             0    1px  0   rgba(239,247,252,0.2),
		            -1px  1px  0   rgba(239,247,252,0.2),
		            -1px  0    0   rgba(239,247,252,0.2),
		            -1px -1px  0   rgba(239,247,252,0.2);
	}
}

/* ページ先頭へボタン
================================================== */
#scroll-top {
	position: fixed;
	bottom: 35px;
	right: 20px;
	border: 1px solid #fff;
	box-shadow: 0 2px 3px rgba(0,0,0,.2);
	background: -webkit-linear-gradient(top, #e7eff8, #b9d2ea);
	background: linear-gradient(to bottom, #e7eff8, #b9d2ea);
	background-color: #b9d2ea;
	position: relative;
	font-size: 1.8rem;
	line-height: 1.2;
	text-align: center;
	display: none;
}

#scroll-top::after {
	content: "";
	position: absolute;
	top: 20px;
	left: 50%;
	margin-left: -16px;
	border-style: solid;
	border-width: 0 16px 16px 16px;
	border-color: transparent transparent #0056b5 transparent;
}

#scroll-top a {
	display: block;
	padding: 48px 12px 5px;
	background: url(images/com_bt01.png) no-repeat;
	background-size: 100% 65%;
	color: #333;
	position: relative;
	z-index: 10;
}

#scroll-top a:hover {
	text-decoration: none;
}

@media screen and (max-width: 760px) {
	#scroll-top {
		bottom: 10px;
		right: 8px;
	}
}

@media screen and (max-width: 560px) {
	#scroll-top {
		font-size: 1.6rem;
	}

	#scroll-top::after {
		top: 14px;
		margin-left: -12px;
		border-width: 0 12px 12px 12px;
	}

	#scroll-top a {
		padding: 36px 8px 5px;
	}
}

/* ページネーション
================================================== */
.pagination {
	margin-top: 40px;
	text-align: center;
}

.pagination a,
.pagination span {
	display: inline-block;
	min-width: 2.5em;
	padding: .7em 0 .65em;
	border: 1px solid #ccc;
	box-sizing: border-box;
	background-color: #fff;
	color: #333;
	font-size: 1.6rem;
	font-family: arial, sans-serif;
	text-align: center;
	line-height: 1;
}

.pagination .current {
	border-color: #c0d7ed;
	background-color: #c0d7ed;
}

/* トップページ
================================================== */
#home #content {
	margin-top: 40px;
	text-align: center;
}

#home #content section {
	margin-bottom: 125px;
}

/* ▼17.10.30 TOPIC追加 */
#home #content .topics {
	margin-bottom: 80px;
	padding: 16px;
	border: solid 4px #0059b2;
	text-align: left;
}

#home #content dt {
	font-weight: bold;
}

#home #content p {
	margin-bottom: 1em;
}

#home #content p:last-child {
	margin-bottom: 0;
}
/* ▲17.10.30 TOPIC追加 */

#home #content header {
	margin-bottom: 28px;
	text-align: center;
	position: relative;
}

#home #content header::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	border-top: 1px solid #0059b2;
}

#home #content header h2 {
	display: inline-block;
	padding-right: 28px;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: 28px 45%;
	background-size: auto 28px;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.2;
	position: relative;
}

#home #content .strength header h2 {
	padding-left: calc(14px + 53px);
	background-image: url(images/home_ic01.png);
}

#home #content .solve-problem header h2 {
	padding-left: calc(14px + 45px);
	background-image: url(images/home_ic02.png);
}

#home #content .registration header h2 {
	padding-left: calc(14px + 55px);
	background-image: url(images/home_ic03.png);
}

#home #content .flow header h2 {
	padding-left: calc(14px + 51px);
	background-image: url(images/home_ic04.png);
}

#home #content .news header h2 {
	padding-left: calc(14px + 58px);
	background-image: url(images/home_ic05.png);
}

#home #content header p {
	color: #999;
	text-align: center;
}

#home #content p,
#home #content ul,
#home #content ol {
	text-align: left;
}

#home #content .more {
	width: 640px;
	max-width: 100%;
	margin: 32px auto;
}

#home #content .more a {
	padding-right: 70px;
	padding-left: 70px;
	font-weight: bold;
	text-align: center;
}

#home #content .more::after {
	right: 5%;
}

#home #content .strength li,
#home #content .solve-problem li {
	float: left;
	width: 31.66%;
	margin-right: 2.51%;
	padding: 15% 1.5% 1%;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-size: 100% auto;
	color: #fff;
}

#home #content .strength li:last-child,
#home #content .solve-problem li:last-child {
	margin-right: 0;
}

#home #content .strength li:first-child {
	background-color: #0084b4;
	background-image: url(images/home_ph01.jpg);
}

#home #content .strength li:nth-child(2) {
	background-color: #6b76b9;
	background-image: url(images/home_ph02.jpg);
}

#home #content .strength li:last-child {
	background-color: #7c94ab;
	background-image: url(images/home_ph03.jpg);
}

#home #content .solve-problem li:first-child {
	background-color: #02aaa6;
	background-image: url(images/home_ph04.jpg);
}

#home #content .solve-problem li:nth-child(2) {
	background-color: #22b392;
	background-image: url(images/home_ph05.jpg);
}

#home #content .solve-problem li:last-child {
	background-color: #23af6c;
	background-image: url(images/home_ph06.jpg);
}

#home #content .flow ol {
		background-color: #df8a9d;
		color: #fff;
		position: relative;
		overflow: hidden;
}

#home #content .flow li {
	float: left;
	width: 20%;
	padding: 0 25px 5px 2px;
	box-sizing: border-box;
	text-align: center;
	position: relative;
	z-index: 10;
}

#home #content .flow li:first-child {
	width: 21%;
	padding-left: 10px;
}

#home #content .flow li:last-child {
	width: 19%;
	padding-right: 8px;
}

#home #content .flow li:nth-child(-n+4)::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 50px;
	height: 250px;
	margin-top: -250px;
	background: -webkit-linear-gradient(80deg, #df8a9d, #df8a9d 47%, #fff 48%, #fff 52%, #df8a9d 53%, #df8a9d);
	background: linear-gradient(80deg, #df8a9d, #df8a9d 47%, #fff 48%, #fff 52%, #df8a9d 53%, #df8a9d);
	z-index: -10;
}

#home #content .flow li:nth-child(-n+4)::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 50px;
	height: 250px;
	background: -webkit-linear-gradient(-80deg, #df8a9d, #df8a9d 47%, #fff 48%, #fff 52%, #df8a9d 53%, #df8a9d);
	background: linear-gradient(-80deg, #df8a9d, #df8a9d 47%, #fff 48%, #fff 52%, #df8a9d 53%, #df8a9d);
	z-index: -10;
}

#home #content .flow li .step {
	display: block;
	margin-bottom: 10px;
	font-size: 2.0rem;
	font-family: Ebrima, "Helvetica Neue", sans-serif;
}

#home #content .flow li:nth-child(n+2) .step {
	margin-right: 15px;
}

#home #content .flow li strong {
	display: table-cell;
	width: 180px;
	font-weight: normal;
	line-height: 1.2;
	vertical-align: middle;
}

#home #content .flow li strong + br {
	display: none;
}

#home #content .flow li .exp {
	display: block;
	padding-top: 75px;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-position: 50% 5px;
	font-size: 1.5rem;
}

#home #content .flow li:first-child .exp {
	background-image: url(images/home_ic06.png);
}

#home #content .flow li:nth-child(2) .exp {
	background-image: url(images/home_ic07.png);
}

#home #content .flow li:nth-child(3) .exp {
	background-image: url(images/home_ic08.png);
}

#home #content .flow li:nth-child(4) .exp {
	background-image: url(images/home_ic09.png);
}

#home #content .flow li:nth-child(5) .exp {
	background-image: url(images/home_ic10.png);
}

@media screen and (max-width: 760px) {
	#home #content section {
		margin-bottom: 80px;
	}
	
	#home #content header::before {
		content: none;
	}
	
	#home #content header h2 {
		padding-right: 0;
		background-position: 0 50%;
	}

	#home #content .strength header h2 {
		padding-left: 34px;
	}

	#home #content .solve-problem header h2 {
		padding-left: 28px;
	}

	#home #content .registration header h2 {
		padding-left: 42px;
	}

	#home #content .flow header h2 {
		padding-left: 32px;
	}

	#home #content .news header h2 {
		padding-left: 42px;
	}
}

@media screen and (max-width: 640px) {
	#home #content .flow ol {
		background-color: transparent;
		color: #333;
	}

	#home #content .flow li {
		float: none;
		width: auto;
		padding: 0;
		margin-bottom: 40px;
	}

	#home #content .flow li:first-child,
	#home #content .flow li:last-child {
		width: auto;
		padding-right: 0;
		padding-left: 0;
	}

	#home #content .flow li:last-child {
		margin-bottom: 0;
	}
	
	#home #content .flow li:nth-child(-n+4)::before {
		content: none;
	}
	
	#home #content .flow li:nth-child(-n+4)::after {
		top: 100%;
		left: 50%;
		right: auto;
		width: 0;
		height: 0;
		margin-top: 12px;
		margin-left: -16px;
		background: none;
		border-width: 16px 16px 0 16px;
		border-style: solid;
		border-color: #ccc transparent transparent transparent;		
	}
	
	#home #content .flow li .step {
		background-color: #df8a9d;
		color: #fff;
		font-size: 2.4rem;
	}

	#home #content .flow li:nth-child(n+2) .step {
		margin-right: 0;
	}

	#home #content .flow li strong {
		display: block;
		width: auto;
		font-size: 2.0rem;
		font-weight: bold;
	}

	#home #content .flow li:last-child strong {
		color: #df8a9d;
		font-size: 2.8rem;
	}

	#home #content .flow li .exp {
		margin-top: 10px;
		padding: 5px 3px;
		background-color: #fbfbfb;
		background-image: none !important;
	}
}

@media screen and (max-width: 600px) {
	#home #content .strength li,
	#home #content .solve-problem li {
		float: none;
		width: auto;
		margin-right: 0;
		margin-bottom: 15px;
		padding: 48% 2% 2.5%;
		background-size: 100% auto;
	}
}

@media screen and (max-width: 375px) {
	#home #content header h2 {
		font-size: 7.3vw;
	}
}

/* 新着情報リスト（トップページ含む）
================================================== */
.news-list  {
	margin-top: -20px;
}

.news-list li {
	padding: 20px 0;
	border-bottom: 1px solid #999;
}

.news-list li time {
	clear: left;
	float: left;
	width: 8em;
	color: #0056b5;
	font-weight: bold;
}

.news-list li .title {
	display: block;
	margin-left: 8em;
}

.news-list li .title a {
	color: #333;
}

@media screen and (max-width: 600px) {
	.news-list li {
		margin-bottom: 3px;
		padding: 10px 0;
		border-bottom: 0;
		background-color: #fbfbfb;
	}

	.news-list li time {
		float: none;
	}

	.news-list li .title {
		margin-left: 0;
		padding: .5em 0;
	}
}

/* 新着情報詳細
================================================== */
#news .article-header .post-date {
	margin-top: -0.5em;
	color: #0056b5;
	font-weight: bold;
}

#news .page-nav {
	margin-top: 40px;
	position: relative;
	overflow: hidden;
}

#news .page-nav ul {
	float: left;
	position: relative;
	left: 50%;
	box-sizing: border-box;
}

#news .page-nav li {
	float: left;
	position: relative;
	left: -50%;
	width: 240px;
	max-width: 31.66%;
	margin: 0 2.51% 0 0;
	box-sizing: border-box;
	text-align: center;
}

#news .page-nav li.next {
	margin-right: 0;
}

#news .page-nav ul.no-prev li.prev,
#news .page-nav ul.no-next li.next {
	height: 1px;
	border: 0;
	box-shadow: none;
	background: none;
}

#news .page-nav ul.no-prev li.prev::after,
#news .page-nav ul.no-next li.next::after {
	content: none;
}

@media screen and (max-width: 560px) {
	#news .page-nav li a {
		padding-right: 3%;
		padding-left: 3%;
	}

	#news .page-nav li.prev a {
		padding-left: 15px;
	}

	#news .page-nav li.next a {
		padding-right: 15px;
	}
}

/* 職種一覧
================================================== */
#job .job-item {
	margin-bottom: 40px;
}

#job .job-item h3 {
	margin-top: 0;
}

#job .job-item p {
	margin-bottom: 0;
}

#job .job-content {
	float: left;
	margin-right: 10px;
}

#job .guide {
	float: right;
	margin-top: 15px;
}

/* 募集要項
================================================== */
#job .job-info table th {
	vertical-align: middle;
	width: 20%;
	min-width: 5.5em;
}

#job .job-info table tr:nth-child(3) td,
#job .job-info table tr:nth-child(4) td,
#job .job-info table tr:nth-child(6) td {
	height: 7em;
}

#job div.submit {
	margin-top: 40px;
	text-align: center;
}

#job div.submit p {
	display: inline-block;
	margin: 0;
	text-align: center;
	vertical-align: top;
}

#job div.submit p:first-child {
	margin-right: 2%;
}

@media screen and (max-width: 560px) {
	#job .job-info table {
		border-right: 1px solid #ccc;
	}

	#job .job-info table th,
	#job .job-info table td {
		display: block;
	}

	#job .job-info table th {
		width: 7em;
		padding-top: 4px;
		padding-bottom: 4px;
	}

	#job .job-info table td {
		border-right: 0;
	}

	#job .job-info table tr:nth-child(3) td,
	#job .job-info table tr:nth-child(4) td,
	#job .job-info table tr:nth-child(6) td {
		height: auto;
	}

	#job div.submit p {
		width: 9em;
	}
}

@media screen and (max-width: 359px) {
	#job div.submit p.apply {
		width: 7em;
	}
}

/* Air Bizで登録する強み
================================================== */
#advantage .content section {
	margin-bottom: 70px;
}

#advantage .content h2 {
	display: table-cell;
	width: 960px;
	height: 3em;
	padding: 5px 10px;
	color: #fff;
	font-size: 2.6rem;
	vertical-align: middle;
}

#advantage .content h2:before,
#advantage .content h2:after {
	content: none;
}

#advantage .content .advantage1 h2 {
	background-color: #0084b4;
}

#advantage .content .advantage2 h2 {
	background-color: #6b76b9;
}

#advantage .content .advantage3 h2 {
	background-color: #7c94ab;
}

#advantage .content h2 + p {
	margin-top: 20px;
}

@media screen and (max-width: 760px) {
	#advantage .content section {
		margin-bottom: 40px;
	}
}

/* 先輩社員の声
================================================== */
#staffvoice .content .profile h3 {
	margin-top: 0;
	padding-bottom: 0;
	border-bottom: 0;
}

#staffvoice .content .profile h3,
#staffvoice .content .profile table {
	width: auto;
}

#staffvoice .content .profile table th {
	width: 28%;
}

#staffvoice .content .profile table tr:first-child th {
	height: 1em;
}

@media screen and (max-width: 760px) and (min-width: 601px), screen and (max-width: 560px) {
	#staffvoice .content .profile table {
		border-right: 1px solid #ccc;
	}

	#staffvoice .content .profile table th,
	#staffvoice .content .profile table td {
		display: block;
	}

	#staffvoice .content .profile table th {
		width: 8em;
		padding-top: 4px;
		padding-bottom: 4px;
	}

	#staffvoice .content .profile table td {
		border-right: 0;
	}

	#staffvoice .content .profile table tr:first-child th {
		height: auto;
	}
}

@media screen and (max-width: 600px) {
	#staffvoice .content .profile .alignleft {
		float: none;
	}
}

/* 登録から契約の流れ
================================================== */
#flow .content ol {
	padding-left: 0;
	list-style: none;
}

#flow .content li {
	margin-bottom: 40px;
}

#flow .content li .step,
#flow .content li .step + strong {
	display: table-cell;
	font-size: 3.2rem;
	line-height: 1.4;
	vertical-align: middle;
}

#flow .content li .step {
	padding: 5px 10px 0;
	background-color: #e498aa;
	color: #fff;
	font-family: Ebrima, "Helvetica Neue", sans-serif;
	white-space: nowrap;
}

#flow .content li .step em {
	display: inline-block;
	margin-top: -0.25em;
	font-family: inherit;
	font-size: 4.8rem;
	font-weight: bold;
	font-style: normal;
}

#flow .content li .step + strong {
	padding-left: 25px;
	font-weight: normal;
}

#flow .content li strong img {
	vertical-align: middle;
	margin-top: -0.25em;
}

#flow .content li:last-child .step + strong {
	color: #e498aa;
	font-weight: bold;
}

#flow .content li .step + strong + br {
	display: none;
}

#flow .content li .exp {
	display: block;
	min-height: 160px;
	box-sizing: border-box;
	padding: 10px 44% 10px 2%;
	background-color: #fbfbfb;
	position: relative;
}

#flow .content li .exp:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 41.5%;
	height: 100%;
	background-position: 50% 0;
	background-size: auto 100%;
}

#flow .content li:first-child .exp:after {
	background-image: url(images/flow_ph01.jpg);
}

#flow .content li:nth-child(2) .exp:after {
	background-image: url(images/flow_ph02.jpg);
}

#flow .content li:nth-child(3) .exp:after {
	background-image: url(images/flow_ph03.jpg);
}

#flow .content li:nth-child(4) .exp:after {
	background-image: url(images/flow_ph04.jpg);
}

#flow .content li:nth-child(5) .exp:after {
	background-image: url(images/flow_ph05.jpg);
}

#flow .content li:nth-child(6) .exp:after {
	background-image: url(images/flow_ph06.jpg);
}

@media screen and (max-width: 600px) {
	#flow .content li .step,
	#flow .content li .step + strong {
		font-size: 2.8rem;
	}

	#flow .content li .step em {
		font-size: 4.2rem;
	}

	#flow .content li .step + strong {
		padding-left: 15px;
	}
}

/* 会社情報
================================================== */
#company .content table th {
	width: 20%;
	vertical-align: middle;
}

@media screen and (max-width: 560px) {
	#company .content table {
		border-right: 1px solid #ccc;
	}

	#company .content table th,
	#company .content table td {
		display: block;
	}

	#company .content table th {
		width: 7em;
		padding-top: 4px;
		padding-bottom: 4px;
	}

	#company .content table td {
		border-right: 0;
	}
}

/* 企業の皆さまへ
================================================== */
#client .content ul {
	margin-left: 40px;
}

/* プライバイシーポリシー・利用規約
================================================== */
#privacypolicy .content li,
#agreement .content li {
	margin-bottom: 1em;
}

#privacypolicy .content ul,
#agreement .content ul {
	margin-top: 1em;
	counter-reset: count 0;
}

#privacypolicy .content ul li,
#agreement .content ul li {
	padding-left: 0;
	margin-left: 2em;
	text-indent: -1.5em;
}

#privacypolicy .content ul li::before,
#agreement .content ul li::before {
	content: "(" counter(count) ")";
	counter-increment: count 1;
	position: static;
	border-bottom: 0;
}

#privacypolicy .content ul li ul li,
#agreement .content ul li ul li {
	list-style: lower-roman;
	text-indent: 0;
}

#privacypolicy .content ul li ul li::before,
#agreement .content ul li ul li::before {
	content: none;
}

@media screen and (max-width: 600px) {
	#privacypolicy .content li ul li,
	#agreement .content li ul li {
		margin-left: 0;
	}

	#privacypolicy .content li ul li ul li,
	#agreement .content li ul li ul li {
		margin-left: 1em;
	}
}

/* フォーム
================================================== */
input[type="text"],
input[type="password"],
textarea,
select {
	padding: 2px 5px 0;
	border: 1px solid #ccc;
	box-sizing: border-box;
	box-shadow: 1px 1px 1px rgba(0,0,0,.4) inset;
	vertical-align: middle;
}

select {
	padding-right: 0;
}

.required,
.error {
	color: #f00;
}

td .error {
	font-size: 1.6rem;
}

table .required {
	display: inline-block;
	font-size: 1.6rem;
	font-weight: normal;
}

::-webkit-input-placeholder{
    color: #ccc;
}

::-moz-placeholder{
    color: #ccc;
}

:-ms-input-placeholder{
    color: #ccc;
}

/* 会員登録・登録情報編集
================================================== */
#regist ol.progress {
	padding-left: 0;
	list-style: none;
	width: 900px;
	max-width: 100%;
	margin: 25px auto;
}

#regist ol.progress li {
	float: left;
	width: calc(33.3% + .25em);
	min-height: 40px;
	margin-right: -1em;
	box-sizing: border-box;
	padding: .2em 0 .2em 1em;
	border: 2px solid #ccc;
	border-radius: 1em 0 0 1em;
	background-color: #999;
	color: #fff;
	text-align: center;
	position: relative;
}

#regist ol.progress li:first-child {
	z-index: 10;
}

#regist ol.progress li:nth-child(2) {
	z-index: 5;
}

#regist ol.progress li::after {
	content: "";
	position: absolute;
	top: 50%;
	right: calc(-0.707em - 2.828px);
	width: calc(1.414em + 2.828px);
	height: calc(1.414em + 2.828px);
	margin-top: calc(-0.707em - 1.414px);
	box-sizing: border-box;
	border-top: 2px solid #ccc;
	border-right: 2px solid #ccc;
	background-color: #999;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#regist ol.progress li.now,
#regist ol.progress li.now::after {
	border-color: #0060ff;
	background-color: #007cff;
}

form .form-table th {
	width: 12%;
	vertical-align: middle;
	line-height: 1.4;
}

form .form-table th + th {
	width: 21%;
}

form .form-table th[colspan="2"] {
	width: 33%;
}

form .form-table th .note {
	font-size: 1.6rem;
	font-weight: normal;
}

form .form-table td br {
	display: none;
}

form .form-table input.input,
form .form-table textarea {
	width: 100%;
	max-width: 100%;
}

form .form-table input.user_zipcode,
form .form-table input.user_tel1,
form .form-table input.user_tel2 {
	width: 9em;
}

form .form-table textarea {
	height: 6em;
}

form .form-table textarea.user_desire {
	height: 8em;
}

form .form-table select {
	margin-right: 5px;
}

form .form-table td label {
	display: inline-block;
	margin-right: 20px;
}

form .frontend-user-admin-user-attribute-comment {
	display: inline-block;
	font-size: 1.4rem;
}

form .frontend-user-admin-user-attribute-comment:empty {
	display: none;
}

form .form-table td.email,
form .form-table td.password {
	font-size: 1.4rem;
}

form .form-table:nth-of-type(2) tr:nth-last-child(-n+2) td input {
	margin-bottom: .25em;
	font-size: 1.8rem;
}

form .form-table:nth-of-type(2) tr:nth-last-child(-n+2) td input:last-child {
	margin-bottom: 0;
}

form .form-table:nth-of-type(2) tr:nth-last-child(-n+2) td .frontend-user-admin-user-attribute-comment {
	display: block;
}

form .form-table td .end {
	display: inline-block;
	margin-top: 5px;
}

form .form-table:nth-of-type(4) {
	display: none;
}

#pass-strength-result {
	width: 15em;
	max-width: 100%;
	margin: 8px 0;
	box-sizing: border-box;
	padding: 0 5px;
	border: 1px solid #ddd;
	background-color: #eee;
	font-size: 1.8rem;
	text-align: center;
}

#pass-strength-result.strong {
	border-color: #83c373;
	background-color: #c1e1b9;
}

#pass-strength-result.good {
	border-color: #ffc733;
	background-color: #ffe399;
}

#pass-strength-result.bad {
	border-color: #f78b53;
	background-color: #fbc5a9;;
}

#pass-strength-result.short {
	border-color: #e35b5b;
	background-color: #f1adad;;
}

#txtnum {
	color: #f00;
}

#your-profile label[for="pass1"] + .required {
	display: none;
}

#registerform .consent {
	margin: 30px 0;
	text-align: center;
}

#registerform div.submit {
	text-align: center;
	margin: 30px auto;
}

#registerform div.submit p.submit {
	display: inline-block;
	margin: 0;
}

#registerform div.submit p.submit:first-child {
	margin-right: 2%;
}

#registerform + ul {
	display: none;
}

#regist .complete-message {
	padding: 30px 10px;
	border: 2px solid #ccc;
	background-color: #fff;
}

.message {
	margin: 1.2em 0;
	padding: 10px;
	border: 1px solid #ff4d4d;
	background-color: #ffefef;
	text-align: center;
}

.message p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 600px) {
	form  .form-table {
		border: 1px solid #ccc;
		border-top: 0;
	}

	form .form-table th,
	form .form-table td {
		display: block;
		margin-left: 1em;
		border: 0;
	}

	form .form-table th[rowspan],
	form .form-table th[colspan],
	form .form-table th[rowspan] + td,
	form .form-table th[colspan] + td {
		margin-left: 0;
	}

	form .form-table th {
		width: auto !important;
		padding-top: 4px;
		padding-bottom: 0;
		background-color: transparent;
	}

	form .form-table th[rowspan],
	form .form-table th[colspan] {
		padding-bottom: 4px;
		border-top: 1px solid #ccc;
		background-color: #eee;
	}

	form .form-table th[rowspan] + th {
		padding-top: 8px;
	}

	form .form-table td {
		min-height: 1.4em;
		padding-top: 0;
	}

	form .form-table th[rowspan] + td,
	form .form-table th[colspan] + td {
		padding-top: 8px;
	}
}

@media screen and (max-width: 560px) {
	#registerform div.submit p.submit {
		width: 9em;
	}
}

@media screen and (max-width: 359px) {
	#registerform div.submit p.submit {
		width: 8em;
	}
}

/* ログインページ
================================================== */
#entry .content h2 {
	margin: 1.5em 0 .5em;
	padding-left: 0;
	padding-bottom: 4px;
	border-bottom: 1px solid #007cff;
	font-size: 2.4rem;
	line-height: 1.2;
}

#entry .content h2::before,
#entry .content h2::after {
	content: none;
}

#loginform,
#lostpasswordform {
	margin-top: 15px;
	text-align: center;
}

#loginform p:first-of-type {
	margin-bottom: 0;
}

#loginform p:nth-of-type(-n+2) label,
#lostpasswordform dl {
	display: inline-block;
	width: 580px;
	max-width: 100%;
	box-sizing: border-box;
	padding: 20px 30px 30px;
	border: 1px solid #ddb994;
	background-color: #fffdf4;
	text-align: left;
}

#loginform p:first-of-type label {
	padding-bottom: 20px;
	border-bottom: 0;
}

#loginform p:nth-of-type(2) label {
	padding-top: 0;
	border-top: 0;
}

#loginform p:nth-of-type(-n+2) input,
#lostpasswordform dl input {
	display: block;
	width: 20em;
	max-width: 100%;
	margin: 0 auto;
}

#lostpasswordform dd {
	margin-left: 0;
}

#loginform p.submit {
	margin: 0 auto 1em;
}

#lostpasswordform p.submit {
	width: 15em;
	margin: 0 auto 1em;
}

#entry .content ul li {
	padding-left: 0;
}

#entry .content ul li:before {
	content: none;
}

#entry .content ul li:first-child {
	font-size: 1.5rem;
	text-align: center;
}

#entry .content ul li:last-child {
	margin: 40px auto;
}

.lostpass-message {
	margin-top: 1em;
	text-align: center;
}

@media screen and (max-width: 600px) {
	#loginform p:nth-of-type(-n+2) label,
	#lostpasswordform dl {
		padding-right: 20px;
		padding-left: 20px;
	}
}

/* マイページ
================================================== */
#mypage .btn {
	margin: 40px auto;
}

#mypage .btn:first-of-type {
	width: 15em;
}

#mypage .btn a {
	text-align: left;
}

@media screen and (max-width: 600px) {
	#mypage .btn {
		margin: 20px auto 30px;
	}
}

/* お問い合わせ
================================================== */
#contact .mailform th {
	width: 25%;
	vertical-align: middle;
}

#contact .mailform .required {
	margin-left: .5em;
}

#contact .mailform input[type="text"],
#contact .mailform textarea {
	width: 100%;
}

#contact .mailform #mail_zipcode {
	width: 9em;
}

#contact .mailform #mail_address {
	margin-top: 8px;
}

#contact .mailform .note,
#contact .mailform .confirm-msg {
	display: inline-block;
	margin-top: 5px;
	font-size: 1.4rem;
}

#contact .mailform .note {
	margin-left: 1em;
	text-indent: -1em;
}

#contact .mailform .consent {
	margin: 30px 0;
	text-align: center;
}

#contact .mailform div.submit {
	text-align: center;
	margin: 30px auto;
}

#contact .mailform div.submit form {
	display: inline-block;
}

#contact .mailform div.submit form p {
	margin: 0;
}

#contact .mailform div.submit p.submit:first-child {
	margin-right: 2%;
}

#contact .complete-message {
	margin: 1.2em 0;
	padding: 30px 10px;
	border: 2px solid #ccc;
	text-align: center;
}

#contact .complete-message p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 600px) {
	#contact .mailform table {
		border: 1px solid #ccc;
		border-top: 0;
	}

	#contact .mailform table th,
	#contact .mailform table td {
		display: block;
		border: 0;
	}

	#contact .mailform table th {
		width: auto;
		padding-top: 4px;
		padding-bottom: 4px;
		border-top: 1px solid #ccc;
	}

	#contact .mailform table td {
		min-height: 1.4em;
	}
}

@media screen and (max-width: 560px) {
	#contact div.submit p.submit {
		width: 9em;
	}
}

@media screen and (max-width: 359px) {
	#contact div.submit p.submit {
		width: 8em;
	}
}

/* Clearfix
================================================== */
.inner::after,
header::after,
footer::after,
section::after,
article::after,
ul::after,
ol::after,
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}
