@charset "utf-8";
/* ===== CSSリセット ===== */


/* ===== HTML5 ディスプレイ ===== */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
	display: block;
}

audio,
canvas,
video {
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

audio:not([controls]) {
	display: none;
}

[hidden] {
	display: none;
}


/* ===== ベーススタイル ===== */

html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

html,
button,
input,
select,
textarea {
	font-family: sans-serif;
	color: #222;
}

::-moz-selection {
	background: rgb(187, 1, 24);
	color: rgb(255, 255, 255);
	text-shadow: none;
	filter: none;
}

::selection {
	background: rgb(187, 1, 24);
	color: rgb(255, 255, 255);
	text-shadow: none;
	filter: none;
}


/* =============================================================================
   リンク
   ========================================================================== */

a,
a:visited {
	color: rgb(187, 1, 24);
	text-decoration: none;
}

a:hover {
	border-bottom: 1px dotted;
}

a:hover,
a:active,
a:focus {
	outline: 0;
}

header a:active,
footer a:active,
#main a:active {
	position: relative;
	top: 1px;
}


/* =============================================================================
   タイポグラフィー
   ========================================================================== */

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

blockquote {
	margin: 1em 40px;
}

dfn {
	font-style: italic;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

ins {
	background: #ff9;
	color: #000;
	text-decoration: none;
}

mark {
	background: #ff0;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

pre,
code,
kbd,
samp {
	font-family: monospace, serif;
	_font-family: 'courier new', monospace;
	font-size: 1em;
}

pre {
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

q {
	quotes: none;
}

q:before,
q:after {
	content: "";
	content: none;
}

small {
	font-size: 85%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}


/* =============================================================================
   リスト
   ========================================================================== */

ul,
ol {
	margin: 1em 0;
	padding: 0 0 0 40px;
}

dd {
	margin: 0 0 0 40px;
}

nav ul,
nav ol {
	list-style: none;
	list-style-image: none;
	margin: 0;
	padding: 0;
}


/* =============================================================================
   埋め込まれたコンテンツ
   ========================================================================== */

img {
	border: 0;
	-ms-interpolation-mode: bicubic;
	vertical-align: middle;
	max-width: 100%;
}

svg:not(:root) {
	overflow: hidden;
}


/* =============================================================================
   フィギュア
   ========================================================================== */

figure {
	margin: 0;
}


/* =============================================================================
   フォーム
   ========================================================================== */

form {
	margin: 0;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

label {
	cursor: pointer;
}

legend {
	border: 0;
	*margin-left: -7px;
	padding: 0;
	white-space: normal;
}

button,
input,
select,
textarea {
	font-size: 100%;
	margin: 0;
	vertical-align: baseline;
	*vertical-align: middle;
}

button,
input {
	line-height: normal;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	cursor: pointer;
	-webkit-appearance: button;
	*overflow: visible;
}

button[disabled],
input[disabled] {
	cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
	*width: 13px;
	*height: 13px;
}

input[type="search"] {
	-webkit-appearance: textfield;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
	-webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
	resize: vertical;
}

input:valid,
textarea:valid {
	background-color: #ddf0df;
}

input:invalid,
textarea:invalid {
	background-color: #f0dddd;
}


/* =============================================================================
   テーブル
   ========================================================================== */

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td {
	vertical-align: top;
}


/* =============================================================================
   Chrome Frame Prompt
   ========================================================================== */

.chromeframe {
	margin: 0.2em 0;
	background: #ccc;
	color: black;
	padding: 0.2em 0;
}


/* ===== メインスタイル ===== */

html {
	background: url(../images/bg2.jpg) repeat;
	margin: 0;
	padding: 0;
}

body {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font: normal 100%/1.5 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	color: rgb(35, 24, 21);
	overflow-x: hidden;
}

/* ===== ヘッダー/メイン/フッターのレイアウト ===== */

.outer-wrapper {
	background: rgb(20, 20, 20) url(../images/bg1.jpg) repeat center top;
	width: 100%;
	color: rgb(255, 255, 255);
	margin: 0;
	padding: 0;
}

header.outer-wrapper {
	-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
	-moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
}

#main,
.inner-wrapper {
	width: 95%;
	max-width: 960px;
	margin: 0 auto;
}

#main {
	padding: 10px;
}

header .inner-wrapper {
	padding: 20px 10px;
	background: transparent url(../images/header-highlight.png) no-repeat left top;
}

footer .inner-wrapper {
	background: transparent url(../images/footer-highlight.png) no-repeat center bottom;
	padding-bottom: 10px;
}

/* ===== ロゴ ===== */

.inner-wrapper h1,
.inner-wrapper h2 {
	display: block;
	margin: 0;
	width: 344px;
	height: 42px;
	background: transparent url(../images/logo-1.png) no-repeat center top;
	text-indent: -9999em;
	overflow: hidden;
}

.inner-wrapper h1 {
	float: left;
}

.inner-wrapper h2 {
	margin: 0 auto;
}

.inner-wrapper h1 a,
.inner-wrapper h2 a {
	display: block;
	width: 100%;
	height: 100%;
}

/* ===== ヘッダーのナビゲーション ===== */

header .inner-wrapper {
	position: relative;
}

.language {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 0.75em;
	position: absolute;
	top: 10px;
	right: 10px;
}

.language li {
	display: inline;
	margin: 0 5px;
}

.language li a {
	color: white;
}

header nav select {
	display: none;
}

header nav {
	text-align: right;
}

.head-nav {
	margin-top: 10px;
}

.head-nav > li {
	display: inline-block;
	position: relative;
	margin: 0 0.5em;
}

.head-nav a {
	color: rgb(255, 255, 255);
	font-weight: bold;
	-webkit-transition: text-shadow 0.2s linear;
	-moz-transition: text-shadow 0.2s linear;
	-o-transition: text-shadow 0.2s linear;
	-ms-transition: text-shadow 0.2s linear;
	transition: text-shadow 0.2s linear;
}

.head-nav a:hover {
	text-shadow: 0 0 5px rgb(255, 255, 255);
	filter: dropshadow(color=#ffffff, offx=0, offy=0);
	border-bottom: none;
}

.head-nav ul {
	display: none;
	position: absolute;
	top: 24px;
	left: -10px;
	background-color: rgb(51, 51, 51);
	background-color: rgba(51, 51, 51, 0.7);
	padding: 10px;
	width: 170px;
	border: 1px solid rgb(51, 51, 51);	
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.75);
	-moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.75);
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.75);
	z-index: 1000;
}

.head-nav ul li {
	text-align: left;
}

.head-nav ul li a {
	font-size: 0.75em;
}

.head-nav li:hover ul {
	display: block;
}

a.current {
	text-shadow: 0 0 5px rgb(255, 255, 255);
	filter: dropshadow(color=#ffffff, offx=0, offy=0);
}

/* ===== フッターのナビゲーション ===== */

footer nav select {
	display: none;
}

footer nav {
	text-align: center;
}

.foot-nav {
	margin: 3em 0;
}

.foot-nav > li {
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin: 2em 3% 0 3%;
	font-size: 1em;
	font-weight: bold;
	color: rgb(187, 1, 24);
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.75);
}

.foot-nav ul li a {
	font-size: 0.75em;
	font-weight: normal;
	color: rgb(255, 255, 255);
	text-shadow: none;
}

/* ===== フッター ===== */

footer p {
	text-align: center;
	font-size: 0.75em;
}

#main h3 {
	border-bottom: 1px solid rgb(0, 0, 0);
	font-size: 1.618em;
}


/* ===== トップページ：リリースノート ===== */

.release-notes {
	margin-bottom: 1em;
}

.release-notes article {
	width: 28%;
	margin: 2.666666666666667%;
	float: left;
}

.date {
	font-size: 0.75em;
	font-weight: bold;
	color: rgb(255, 255, 255);
	padding: 4px 8px;
	background-color: rgb(128, 128, 128);
	display: inline;
	text-align: center;
}

a.more {
	text-transform: uppercase;
	font-size: 0.75em;
	text-align: right;
	color: rgb(0, 0, 0);
	float: right;
}

a.more:hover {
	margin-bottom: -1px;
}

/* ===== トップページ：フィギャ ===== */

.points {
	text-align: center;
	margin: 3em auto 0 auto;
}

.points figure {
	width: 26.70212765957447%;
	margin: 0 2.12765957446809% 3em 2.12765957446809%;
	display: inline-block;
	vertical-align: top;
}

#main .points h3 {
	font-size: 1em;
	border-bottom: 0;
}

.points figcaption {
	text-align: left;
}

.points figcaption p {
	font-size: 0.75em;
}

/* ===== H2 タイトル ===== */

h2#responsive_title {
	color: rgb(187, 1, 24);
	font-size: 4em;
	font-weight: bold;
	text-shadow: 0 2px 2px rgba(0, 0, 0, 0.75);
	text-align: center;
	display: block;
	width: 100%;
	margin: 4% auto;
}

.contact h2#responsive_title {
	font-size: 2.875em;
}

.recruit h2#responsive_title {
	font-size: 3.5em;
}

.members h2#responsive_title {
	font-size: 3.5em;
}

/* ===== 事業について ===== */

article {
	margin-bottom: 4em;
}

.left figure {
	float: left;
	margin-right: 20px;
}

.right figure {
	float: right;
	margin-left: 20px;
}

.left h3,
.right h3 {
	overflow: hidden;
	margin: 0 0 2em 0;
}

.work figure {
	width: 53.19148936170213%;
}

/* ===== ドロップキャップ (Drop Cap) ===== */

.first_character {
	float: left;
	font-weight: bold;
	font-size: 2.618em;
	line-height: 1.1em;
	padding-right: 5px;
}

/* ===== 会社情報：会社概要 ===== */

img.map {
	float: left;
	width: 47.87234042553191%;
	margin-right: 4.25531914893617%;
	-webkit-transition: -webkit-transform 0.2s linear;
	-moz-transition: -moz-transform 0.2s linear;
	-ms-transition: -ms-transform 0.2s linear;
	-o-transition: -o-transform 0.2s linear;
	transition: transform 0.2s linear;
}

img.map:hover {
	-webkit-transform: rotate(3deg);
	-moz-transform: rotate(3deg);
	-ms-transform: rotate(3deg);
	-o-transform: rotate(3deg);
	transform: rotate(3deg);
}

a.map:hover {
	border-bottom: 0;
}

.company th,
.company td {
	vertical-align: top;
	padding: 1em 1em 0 1em;
}

.company th {
	text-align: right;
}

.social-icons1 {
	margin: 0 0 0 20px;
	padding: 0;
	list-style: none;
	display: inline;
}

.social-icons1 li {
	display: inline-block;
	width: 21px;
	height: 21px;
	text-indent: -9999em;
}

.social-icons1 a {
	display: block;
}

.social-icons1 a:hover {
	border-bottom: 0;
}

li.facebook1 {
	background: transparent url(../images/social-icons1.png) no-repeat 0 0;
}

li.facebook1:hover {
	background-position: 0 -21px;
}

li.twitter1 {
	background: transparent url(../images/social-icons1.png) no-repeat -21px 0;
}

li.twitter1:hover {
	background-position: -21px -21px;
}

li.ameblo1 {
	background: transparent url(../images/social-icons1.png) no-repeat -42px 0;
}

li.ameblo1:hover {
	background-position: -42px -21px;
}

.company ol {
	margin: 0;
	padding-left: 25px;
}

/* ===== 会社情報：企業理念 ===== */

#philosophy {
	margin-bottom: 0;
}

#philosophy img {
	float: right;
	width: 28.72340425531915%;
	margin-left: 5.31914893617021%;
}

.columns-3 p {
	float: left;
	width: 29.25531914893617%;
	margin: 0 2.039007092198582%;
}

.company h4 {
	color: rgb(187, 1, 24);
	text-shadow: 0 2px 2px rgba(0, 0, 0, 0.75);
	font-size: 1.618em;
}

/* ===== 会社情報：個人情報保護方針 ===== */

.privacy > p {
	width: 460px;
	margin-left: auto;
	margin-right: auto;
}

.privacy h4 {
	font-size: 1.59em;
	color: rgb(187, 1, 24);
	text-shadow: 0 2px 2px rgba(0, 0, 0, 0.75);
}

.privacy section {
	width: 45%;
	margin: 0 2.5%;
	float: left;
}

.privacy article > ol {
    counter-reset: li;
    margin-left: 0;
    padding-left: 0;
}

.privacy article > ol > li {
    position: relative;
    margin: 0 0 1.5em 2em;
	padding-left: 0.5em;
    list-style: none;
}

.privacy article > ol > li:before {
    content: counter(li)".";
    counter-increment: li;
    position: absolute;
    top: -2px;
    left: -2em;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 2em;
    margin-right: 8px;
    padding: 4px;
    font-weight: bold;
    text-align: center;
	color: rgb(187, 1, 24);
}

.privacy ol h5 {
	font-size: 1em;
}

.privacy article ol ol li {
	list-style: none;
}

.privacy article ol ol {
	margin: 0;
	padding: 0;
}

/* ===== お問い合わせ ===== */

.contact form {
	margin: 0 auto;
}

.contact form div {
	float: left;
	width: 42.5531914893617%;
	margin: 0 2.12765957446809% 1.5em 2.12765957446809%;
}

.contact form div:first-child {
	float: none;
}

.contact label,
#entry-sheet label {
	font-weight: bold;
}

.contact label span,
#entry-sheet label span {
	color: rgb(187, 1, 24);
}

.contact label,
.contact input,
.contact textarea {
	display: block;
}

.contact input,
#entry-sheet input,
.contact textarea,
#entry-sheet textarea,
.contact select {
	width: 95%;
	padding: 0.5em;
	background-color: rgb(229, 229, 229);
	border: 1px inset;
	-webkit-transition: -webkit-box-shadow 0.2s ease;
	-moz-transition: -moz-box-shadow 0.2s ease;
	-ms-transition: box-shadow 0.2s ease;
	-o-transition: box-shadow 0.2s ease;
	transition: box-shadow 0.2s ease;
}

.contact input:focus,
#entry-sheet input:focus,
.contact textarea:focus,
#entry-sheet textarea:focus,
.contact select:focus {
	border: 1px solid rgb(187, 1, 24);
	background-color: rgb(242, 242, 242);
	-webkit-box-shadow: 0 0 5px rgba(187, 1, 24, 0.75);
	-moz-box-shadow: 0 0 5px rgba(187, 1, 24, 0.75);
	box-shadow: 0 0 5px rgba(187, 1, 24, 0.75);
}

.contact label,
#entry-sheet label {
	padding-left: 0.5em;
}

.contact textarea {
	height: 15em;
}

.contact .send,
.recruit .send,
.jobs .send,
.confirm .send,
#entry-sheet .send {
	width: auto;
	padding: 0.5em 1em;
	margin-top: 0.927em;
	float: right;
	text-align: center;
	color: rgb(240, 242, 245);
	font-size: 1.618em;
	font-weight: bold;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.75);
	border: 1px solid rgb(23, 23, 23);
	-webkit-box-shadow: inset 0 2px 2px rgba(255, 255, 255, 0.75), 0 3px 6px rgba(0, 0, 0, 0.75);
	-moz-box-shadow: inset 0 2px 2px rgba(255, 255, 255, 0.75), 0 3px 6px rgba(0, 0, 0, 0.75);
	box-shadow: inset 0 2px 2px rgba(255, 255, 255, 0.75), 0 3px 6px rgba(0, 0, 0, 0.75);
	background: rgb(76, 76, 76); /* Old browsers */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(76, 76, 76)), color-stop(50%, rgb(76, 76, 76)), color-stop(70%, rgb(38, 38, 38)), color-stop(100%, rgb(23, 23, 23))); /* Chrome, Safari 4+ */
	background: -webkit-linear-gradient(top, rgb(76, 76, 76) 0%, rgb(76, 76, 76) 50%, rgb(38, 38, 38) 70%, rgb(23, 23, 23) 100%); /* Chrome 10+, Safari 5.1+ */
	background: -moz-linear-gradient(top, rgb(76, 76, 76) 0%, rgb(76, 76, 76) 50%, rgb(38, 38, 38) 70%, rgb(23, 23, 23) 100%); /* FF 3.6+ */
	background: -ms-linear-gradient(top, rgb(76, 76, 76) 0%, rgb(76, 76, 76) 50%, rgb(38, 38, 38) 70%, rgb(23, 23, 23) 100%); /* IE 10+ */
	background: -o-linear-gradient(top, rgb(76, 76, 76) 0%, rgb(76, 76, 76) 50%, rgb(38, 38, 38) 70%, rgb(23, 23, 23) 100%); /* Opera 11.10+ */
	background: linear-gradient(top, rgb(76, 76, 76) 0%, rgb(76, 76, 76) 50%, rgb(38, 38, 38) 70%, rgb(23, 23, 23) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4c4c4c', endColorstr='#171717', GradientType=0 ); /* IE 6-9 */
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

.contact .send:hover,
.recruit .send:hover,
.jobs .send:hover,
.confirm .send:hover,
#entry-sheet .send:hover {
	border: 1px solid rgb(48, 48, 48);
	background: rgb(102, 102, 102); /* Old browsers */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(102, 102, 102)), color-stop(50%, rgb(102, 102, 102)), color-stop(70%, rgb(64, 64, 64)), color-stop(100%, rgb(48, 48, 48))); /* Chrome, Safari 4+ */
	background: -webkit-linear-gradient(top, rgb(102, 102, 102) 0%, rgb(102, 102, 102) 50%, rgb(64, 64, 64) 70%, rgb(48, 48, 48) 100%); /* Chrome 10+, Safari 5.1+ */
	background: -moz-linear-gradient(top, rgb(102, 102, 102) 0%, rgb(102, 102, 102) 50%, rgb(64, 64, 64) 70%, rgb(48, 48, 48) 100%); /* FF 3.6+ */
	background: -ms-linear-gradient(top, rgb(102, 102, 102) 0%, rgb(102, 102, 102) 50%, rgb(64, 64, 64) 70%, rgb(48, 48, 48) 100%); /* IE 10+ */
	background: -o-linear-gradient(top, rgb(102, 102, 102) 0%, rgb(102, 102, 102) 50%, rgb(64, 64, 64) 70%, rgb(48, 48, 48) 100%); /* Opera 11.10+ */
	background: linear-gradient(top, rgb(102, 102, 102) 0%, rgb(102, 102, 102) 50%, rgb(64, 64, 64) 70%, rgb(48, 48, 48) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#666666', endColorstr='#303030', GradientType=0 ); /* IE 6-9 */
}

.jobs .send {
	float: none;
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 6em;
}

.contact .send:active,
#entry-sheet .send:active {
	position: relative;
	top: 1px;
}

.contact form img {
	width: 51.06382978723404%;
}

.contact span.error,
#entry-sheet span.error {
	color: rgb(255, 255, 255);
	font-weight: bold;
	background: rgb(187, 1, 24);
}

/* ===== お問い合わせ・確認ページ ===== */

.confirm form {
	margin: 0 auto;
	width: 95%;
}

.confirm dt {
	font-weight: bold;
	font-size: 1.618em;
	padding-left: 0.4em;
}

.confirm dd {
	margin: 0 0 20px 0;
	width: 98%;
	padding: 0.5em;
	background-color: rgb(229, 229, 229);
	border: 1px inset;
	-webkit-transition: -webkit-box-shadow 0.2s ease;
	-moz-transition: -moz-box-shadow 0.2s ease;
	-ms-transition: box-shadow 0.2s ease;
	-o-transition: box-shadow 0.2s ease;
	transition: box-shadow 0.2s ease;
}

.confirm form div {
	margin: 0 auto;
	text-align: center;
}

.confirm .send {
	margin: 0.927em 1em 0 1em;
	float: none;
}

/* ===== お問い合わせ・ありがとう ===== */

.done img {
	display: block;
	margin: 0 auto;
}

/* ===== リクルート：先輩スタッフが会社紹介します ===== */

#staff {
	text-align: center;
}

#staff figure {
	width: 31.71489361702128%;
	margin: 1em 0.76382978723404%;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align: top;
}

#staff figure img {
	float: left;
}

#staff figcaption {
	padding-top: 5px;
	text-align: left;
}

#staff figure h4 {
	margin: 0 0 0 5px;
}

#staff figure h4 span {
	font-size: 0.75em;
}

#staff figure p {
	margin: 0;
}

/* ===== リクルート：社内風景紹介 ===== */

#company > img {
	display: block;
	margin: 2.5em auto;
}

#company div > p {
	width: 47.87234042553191%;
	margin: 0 0 2em 4.25531914893617%;
	float: left;
}

#company div > p:first-child {
	margin-left: 0;
}

#company figure {
	width: 40.85106382978723%;
	margin: 0 4.57446808510638%;
	float: right;
}

#company figcaption {
	margin: 1em 3.125%;
}

/* ===== リクルート：ボタン ===== */

.recruit .send {
	float: none;
	margin: 0 2em 2em 2em;
	display: inline-block;
	width: 6em;
}

.recruit-buttons {
	margin: 0 auto;
	text-align: center;
}

/* ===== リクルート：エントリーシート ===== */

#terms-block {
	width: 82.97872340425532%;
	height: 10em;
	margin: 1em auto;
	padding: 1em;
	overflow-y: scroll;
	background-color: rgb(255, 255, 255);
	border: 2px inset;
}

.entry-sheet label[for="terms"] {
	display: block;
	text-align: center;
	margin: 0 auto;
}

.terms-alert {
	color: rgb(255, 0, 0);
	font-weight: bold;
	text-align: center;
	margin: 0 auto;
}

#entry-sheet {
	margin: 2em auto 0 auto;
	width: 82.97872340425532%;
	display: none;
}

#entry-sheet img {
	vertical-align: baseline;
	margin-right: 1em;
}

#entry-sheet h4 {
	font-weight: normal;
	font-size: 1.5em;
	margin-bottom: 0;
}

#entry-sheet form {
	margin: 0 auto;
}

#entry-sheet .form-back {
	background-color: rgb(255, 255, 255);
	border: 1px solid rgb(128, 128, 128);
}

#entry-sheet fieldset {
	border-top: 1px dashed rgb(128, 128, 128);
	padding: 1.5em;
}

#entry-sheet fieldset:first-child {
	border-top: 0;
}

#entry-sheet label,
#entry-sheet input {
	display: inline-block;
}

#entry-sheet .label-left label {
	width: 30%;
	text-align: right;
}

#entry-sheet #entry-furigana,
#entry-sheet #entry-name,
#entry-sheet #entry-phone,
#entry-sheet #entry-email {
	width: 40%;
}

#entry-sheet #entry-age {
	width: 4em;
	text-align: center;
}

#entry-sheet #sex {
	margin-bottom: 1em;	
}

#entry-sheet #entry-address1,
#entry-sheet #entry-address2,
#entry-sheet #entry-skills,
#entry-sheet #file1,
#entry-sheet #url1,
#entry-sheet #pic1 {
	width: 60%;
}

#entry-sheet .hide-url {
	text-align: right;
}

#entry-sheet #entry-skills {
	margin-bottom: 0;
}

#entry-sheet .label-left p {
	font-size: 0.75em;
	color: rgb(128, 128, 128);
	width: 68%;
	margin-left: 32%;
}

#entry-sheet input[type="radio"] {
	width: auto;
}

#entry-sheet textarea {
	height: 10em;
}

#entry-sheet input,
#entry-sheet textarea {
	margin-top: 1em;
	margin-bottom: 1em;
}

#entry-sheet .send {
	float: none;
	display: block;
	margin: 1em auto 0 auto;
	width: 4em;
}

#entry-sheet h5 {
	font-size: 1em;
}

#entry-sheet h5 span {
	color: rgb(187, 1, 24);
}

#entry-sheet .hide-url {
	width: 60%;
	margin-left: 32%;
}

#entry-sheet .hide-url input {
	width: 100%;
}

#entry-sheet .add-url {
	background: rgb(69, 67, 67);
	padding: 2px 4px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;
	font-weight: bold;
	color: rgb(204, 204, 204);
}

#entry-sheet .add-url:hover {
	border-bottom: 0;
	background: rgb(102, 102, 102);
}

.entry-sheet article {
	margin-bottom: 0;
}

/* ===== リクルート：募集要項 ===== */

#jobs .jobs-tabs {
	text-align: center;
	margin-bottom: 8px;
}

#jobs .jobs-tabs li {
	display: inline;
	list-style: none;
	margin: 0 0.25em;
	padding: 0.5em 1em;
	-webkit-border-radius: 15px 15px 0 0;
	-moz-border-radius: 15px 15px 0 0;
	border-radius: 15px 15px 0 0;
	border: 3px solid rgb(23, 23, 23);
	background-color: rgb(228, 228, 228);
}

#jobs .jobs-tabs li a {
	font-weight: bold;
	color: rgb(153, 153, 153);
}

#jobs .jobs-tabs li a:hover {
	border-bottom: 0;
	color: rgb(23, 23, 23);
}

#jobs .jobs-tabs li a:active {
	position: static;
}

#jobs .jobs-tabs li.active {
	background-color: rgb(23, 23, 23);
}

#jobs .jobs-tabs li.active a {
	color: rgb(255, 255, 255);
}

.jobs article {
	padding: 0;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;
	border: 3px solid rgb(23, 23, 23);
	background-color: rgb(23, 23, 23);
}

.jobs table {
	background-color: rgb(255, 255, 255);
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

.jobs table p {
	margin-top: 0;
}

.jobs th, .jobs td {
	vertical-align: top;
	padding: 1em;
}

.jobs tr {
	border-top: 1px dashed rgb(23, 23, 23);
}

.jobs tr:first-child {
	border-top: 0;
}

.jobs th {
	background: transparent url(../images/bg1.jpg) repeat;
	width: 14.8936170212766%;
	color: rgb(255, 255, 255);
	text-align: left;
	
}

.jobs th.table-title {
	text-align: center;
	font-size: 1.618em;
}

.jobs th.top-cell {
	-webkit-border-radius: 15px 0 0 0;
	-moz-border-radius: 15px 0 0 0;
	border-radius: 15px 0 0 0;
}

.jobs th.bottom-cell {
	-webkit-border-radius: 0 0 0 15px;
	-moz-border-radius: 0 0 0 15px;
	border-radius: 0 0 0 15px;
}

.jobs a.jobs-map {
	width: 38px;
	height: 17px;
	background: transparent url(../images/jobs-map.png) no-repeat center top;
	text-indent: -9999em;
	display: inline-block;
}

/* ===== メンバー紹介：チーム紹介 ===== */

#teams figure img {
	display: block;
	margin: 0 auto;
}

#teams figure {
	width: 45%;
	margin: 0 2.5%;
	float: left;
}

#teams figcaption h4 {
	text-align: center;
	font-size: 1.618em;
	margin: 0 auto;
}

.members-pic {
	margin: 2em auto 0 auto;
}

/* ===== メンバー紹介：スタッフ紹介 ===== */

article#members {
	margin-bottom: 0;
}

#members figure {
	margin: 3em auto;
}

#members figure img {
	float: left;
	margin-right: 1em;
}

#members figcaption h4 {
	font-size: 1.618em;
	display: inline;
}

#members figcaption + p {
	margin: 0;
}

p.position {
	margin: 0;
}

#members-list {
	width: 97.91666666666667%;
	margin: 2em auto 0 auto;
	text-align: center;
	padding : 0;
}

#members-list ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#members-list li {
	padding: 0;
	width: 13.93617021276596%;
	margin: 0 0 2px 0;
	-moz-transition: top .3s linear;
    -webkit-transition: top .3s linear;
    -ms-transition: top .3s linear;
    -o-transition: top .3s linear;
    transition: top .3s linear;
	position: relative;
	top: 0;
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

#members-list li:first-child {
	margin-left: 0;
}

#members-list li:last-child {
	margin-right: 0;
}

/* #members-list li.tint {
	background: rgb(187, 1, 24);
	background: -moz-linear-gradient(top, rgb(187, 1, 24) 0%, rgb(82, 0, 11) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(187, 1, 24)), color-stop(100%, rgb(82, 0, 11)));
	background: -webkit-linear-gradient(top, rgb(187, 1, 24) 0%, rgb(82, 0, 11) 100%);
	background: -o-linear-gradient(top, rgb(187, 1, 24) 0%, rgb(82, 0, 11) 100%);
	background: -ms-linear-gradient(top, rgb(187, 1, 24) 0%, rgb(82, 0, 11) 100%);
	background: linear-gradient(top, rgb(187, 1, 24) 0%, rgb(82, 0, 11) 100%);
}

#members-list li img {
	display: block;
	-moz-transition: opacity .3s linear;
    -webkit-transition: opacity .3s linear;
    -ms-transition: opacity .3s linear;
    -o-transition: opacity .3s linear;
    transition: opacity .3s linear;
}

#members-list li img:hover {
	opacity: 0.75;
	filter: alpha(opacity=75);
} */

#members-list li:hover {
	top: -10px;
	-moz-transition: top .3s linear;
    -webkit-transition: top .3s linear;
    -ms-transition: top .3s linear;
    -o-transition: top .3s linear;
    transition: top .3s linear;
}

/* ===== メンバー紹介：MVP ===== */

div.mvp > img {
	display: block;
	margin: 2em auto 0 auto;
	width: 98%;
}

.mvp ol {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	width: 98%;
}

.mvp li .mvp-date {
	color: rgb(255, 255, 255);
	font-weight: bold;
	font-size: 1.5em;
	display: block;
	margin: 0 auto 1em auto;
	padding: 0.5em 1em;
	background: rgb(35, 24, 21);
	width: 7.5em;
	text-align: center;
}

.mvp li article {
	min-height: 328px;
	margin-bottom: 3em;
	padding: 5px;
	border: 10px solid rgb(35, 24, 21);
	-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.75);
	-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.75);
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.75);
	background: rgb(255, 255, 255) url(../images/bg3.jpg) repeat 0 0;
	position: relative;
}

.mvp li article:after {
	content: "";
	display: block;
	position: absolute;
	top: -24px;
	left: 50%;
	margin-left: -14px;
	width: 0;
	border-width: 0 14px 14px;
	border-style: solid;
	border-color: rgb(35, 24, 21) transparent;
}

#main li article h3 {
	font-size: 4em;
	border-bottom: 0;
	color: rgb(187, 1, 24);
	text-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
	margin: 0;
}

#main li article h4 {
	font-size: 1.75em;
	margin: 0;
}

.mvp li article img:first-child {
	margin: 5px 5px 0 -5px;
}

/* ===== Social Box ===== */

.social-box {
	position: absolute;
	right: 0;
	top: 60px;
	width: 120px;
	height: 60px;
	margin-right: -120px;
	background: rgb(233, 234, 236);
	-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.75);
	-moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.75);
	box-shadow: inset 0px 0px 5px rgba(0, 0, 0, 0.75);
	border: 1px solid rgb(194, 194, 196);
	-moz-transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	z-index: 100;
}

.social-box.fixed {
	position: fixed;
	top: 10px;
}

.social-box:hover,
.ie-hover {
	margin-right: 0px;
}

.social-box a.follow {
	display: block;
	width: 31px;
	height: 60px;
	background: rgb(233, 234, 236) url(../images/social-box.png) no-repeat center top;
	position: absolute;
	top: -1px;
	left: -33px;
	text-indent: -9999em;
	border: 1px solid rgb(194, 194, 196);
}

.social-box a.follow:hover {
	border-bottom: 0;
}

.social-box ul {
	padding: 6px 0 0 5px;
	margin: 0 auto;
}

.social-box li {
	list-style: none;
	padding: 0;
}

/* ===== IE 7 ===== */

.lt-ie8 .head-nav > li,
.lt-ie8 .foot-nav > li,
.lt-ie8 .social-icons1 li,
.lt-ie8 .jobs a.jobs-map {
	zoom: 1;
	*display: inline;
}

/* ===== Media Queries ===== */

@media only screen and (-webkit-min-device-pixel-ratio: 2) {
	
	/* ===== ロゴ ===== */

	.inner-wrapper h1,
	.inner-wrapper h2 {
		background: transparent url(../images/logo-1_x2.png) no-repeat center top;
		background-size: 344px 42px;
	}
	
	/* ===== ヘッダ・フッター ===== */
	
	header .inner-wrapper {
		background: transparent url(../images/header-highlight_x2.png) no-repeat left top;
		background-size: 405px 184px;
	}

	footer .inner-wrapper {
		background: transparent url(../images/footer-highlight_x2.png) no-repeat center bottom;
		background-size: 493px 243px;
	}

}

@media only screen and (max-width: 940px) {
	
	header .inner-wrapper {
		background-position: center top;
	}
	
	header nav {
		text-align: center;
	}
	
	/* ===== ロゴ ===== */

	.inner-wrapper h1,
	.inner-wrapper h2 {
		margin: 0 auto;
	}

	.inner-wrapper h1 {
		float: none;
	}
	
}

@media only screen and (max-width: 768px) {
	
	/* ===== ヘッダー/メイン/フッターのレイアウト ===== */

	#main, .inner-wrapper {
		width: 96.875%;
	}

	#main {
		padding: 0.75em 1.5625%;
	}
	
	/* ===== ヘッダー、フッターのナビゲーション ===== */
	
	header nav ul,
	footer nav ul {
		display: none;
	}
	
	header nav select,
	footer nav select {
		display: inline-block;
	}
	
	header nav select {
		margin: 2em auto 0 auto;
	}
	
	footer nav select {
		margin: 2em auto;
	}
	
	/* ===== トップページ：リリースノート ===== */

	.release-notes article {
		width: 45%;
		margin: 1.666666666666667%;
	}

	/* ===== トップページ：フィギャ ===== */

	.points figure {
		width: 45%;
		margin: 2%;
	}

	/* ===== 会社情報：会社概要 ===== */

	img.map {
		float: none;
		width: auto;
		margin: 0 auto;
		display: block;
	}
	
	/* ===== 会社情報：個人情報保護方針 ===== */

	.privacy section {
		width: 100%;
		margin: 0 auto;
		float: none;
	}
	
	/* ===== お問い合わせ・確認ページ ===== */

	.confirm form {
		margin: 0 auto 2em auto;
	}
	
	/* ===== リクルート：先輩スタッフが会社紹介します ===== */

	#staff figure img {
		float: none;
	}

	#staff figure h4 {
		margin: 0 0 1em 0;
	}
	
	/* ===== リクルート：エントリーシート ===== */

	#entry-sheet {
		width: 95%;
	}
	
	#entry-sheet img {
		display: block;
		margin: 0 auto 1em auto;
	}

	#entry-sheet h4 {
		margin-left: 0;
		text-align: center;
	}

	#entry-sheet .label-left label {
		width: auto;
		text-align: left;
	}
	
	#entry-sheet #entry-age {
		margin-right: 6em;
	}

	#entry-sheet #entry-furigana,
	#entry-sheet #entry-name,
	#entry-sheet #entry-phone,
	#entry-sheet #entry-email {
		width: 95%;
		display: block;
	}

	#entry-sheet #entry-address1,
	#entry-sheet #entry-address2,
	#entry-sheet #entry-skills {
		width: 95%;
		display: block;
	}

	#entry-sheet .label-left p {
		width: 95%;
		margin-left: 1em;
	}
	
	/* ===== メンバー紹介：MVP ===== */

	.mvp li article header + img {
		width: 125px;
		position: absolute;
		bottom: 5px;
		right: 5px;
	}

}

@media only screen and (max-width: 600px) {
	
	/* ===== 事業について ===== */

	article {
		margin-bottom: 3em;
	}

	.left figure,
	right figure {
		float: none;
		margin: 0 auto;
	}

	.left h3,
	.right h3 {
		overflow: visible;
		margin: 0 0 2em 0;
	}

	.work figure {
		width: 100%;
		text-align: center;
	}
	
	/* ===== 会社情報：企業理念 ===== */

	.columns-3 p {
		float: left;
		width: 43.88297872340425%;
		margin: 0 3.058510638297873% 2em 3.058510638297873%;
	}
	
	/* ===== お問い合わせ ===== */
	
	.contact form div {
		float: none;
		width: 80%;
		margin: 0 auto 1.5em auto;
	}
	
	.contact form img {
		width: 80%;
		margin: 0 auto 0 auto;
		padding-top: 3em;
		display: block;
	}
	
	/* ===== リクルート：社内風景紹介 ===== */

	#company div > p {
		width: 100%;
		margin: 0 0 2em 0;
		float: none;
	}

	#company figure {
		width: 100%;
		margin: 0 auto;
		float: none;
	}
	
	/* ===== メンバー紹介：チーム紹介 ===== */

	#teams figure {
		width: 100%;
		margin: 0 auto;
		float: none;
	}
	
	#teams figure img {
		display: block;
		margin-left: auto;
		margin-right: auto;
		width: 50%;
	}
	
	/* ===== メンバー紹介：スタッフ紹介 ===== */

	#members figure img {
		float: none;
		margin-right: 0;
	}
	
	#members figcaption {
		margin-left: 1em;
	}
	
	/* ===== リクルート：募集要項 ===== */

	#jobs .jobs-tabs {
		display: none;
	}
	
	/* ===== リクルート：エントリーシート ===== */

	#entry-sheet #select-job span {
		display: block;
	}
	
	#entry-sheet #select-job label span {
		display: inline;
	}
	
	#entry-sheet .label-left label {
		width: 95%;
	}
	
	#entry-sheet #url1,
	#entry-sheet #file1 {
		width: 85%;
	}

	#entry-sheet .hide-url {
		width: 85%;
		margin-left: 0;
	}
	
	/* ===== メンバー紹介：MVP ===== */

	.mvp li .mvp-date {
		font-size: 1em;
		margin: 0 auto 1.5em auto;
	}

	#main li article {
		min-height: 219px;
	}

	#main li article h3 {
		font-size: 3em;
	}

	#main li article h4 {
		font-size: 1.5em;
	}

	.mvp li article img:first-child {
		width: 164px;
	}

	.mvp li article header + img {
		position: static;
		float: none;
		margin: 0 auto;
		display: block;
	}	

}

@media only screen and (max-width: 480px) {
	
	/* ===== ヘッダー/メイン/フッターのレイアウト ===== */

	#main, .inner-wrapper {
		width: 96.875%;
	}

	#main {
		padding: 0.75em 1.5625%;
	}

	header .inner-wrapper {
		padding: 2.5em 0 0.75em 0;
		background: transparent;
	}

	footer .inner-wrapper {
		background: transparent;
		padding-bottom: 5px;
	}
	
	/* ===== ロゴ ===== */

	.inner-wrapper h1,
	.inner-wrapper h2 {
		margin: 0 auto;
		width: 280px;
		height: 35px;
		background-size: 100%;
	}

	.inner-wrapper h1 {
		float: none;
	}
	
	/* ===== トップページ：リリースノート ===== */

	.release-notes article {
		width: 100%;
		margin: 0;
		float: none;
	}

	/* ===== トップページ：フィギャ ===== */

	.points figure {
		width: 100%;
		margin: 0 auto 3em auto;
		display: block;
	}
	
	/* ===== 会社情報：企業理念 ===== */

	.columns-3 p {
		float: none;
		width: 100%;
		margin: 0 auto 2em auto;
	}
	
	/* ===== お問い合わせ ===== */
	
	.contact form div {
		width: 95%;
	}
	
	/* ===== お問い合わせ・確認ページ ===== */

	.confirm dt {
		font-size: 1em;
		padding-left: 0.5em;
	}
	
	/* ===== リクルート：先輩スタッフが会社紹介します ===== */

	#staff figure {
		width: 45.67099567099567%;
		margin: 1em 2.16450216450216%;
		display: inline-block;
	}
	
	/* ===== メンバー紹介：スタッフ紹介 ===== */
	
	#members-list {
		width: 99%;
		margin: 2em auto 0 auto;
		text-align: center;
		padding : 0;
	}
	
	/* ===== メンバー紹介：MVP ===== */

	#main li article {
		min-height: auto;
	}

	#main li article h3 {
		font-size: 2em;
	}

	#main li article h4 {
		font-size: 1em;
	}

	.mvp li article img:first-child {
		width: 164px;
		margin-top: 0px;
	}
	
}

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

	/* ===== 会社情報：会社概要 ===== */
	
	.company table {
		font-size: 0.75em;
	}

	.company th {
		padding: 1em 0.5em 0 0;
	}
	
	.company td {
		padding: 1em 0 0 0.5em;
	}
	
	/* ===== 会社情報：企業理念 ===== */

	#philosophy img {
		display: none;
	}
	
	/* ===== 会社情報：個人情報保護方針 ===== */

	.privacy > p {
		width: auto;
	}
	
	.privacy h4 {
		font-size: 1.4em;
	}
	
	/* ===== お問い合わせ・確認ページ ===== */

	.confirm dd {
		width: 95%;
	}
	
	/* ===== リクルート：先輩スタッフが会社紹介します ===== */

	#staff h3,
	#company h3 {
		font-size: 1.25em;
	}
	
	#staff figure {
		width: 100%;
		margin: 1em auto;
		display: block;
	}
	
	/* ===== メンバー紹介：スタッフ紹介 ===== */

	#members figcaption {
		margin-left: 0.5em;
	}
	
	/* ===== メンバー紹介：MVP ===== */
	
	div.mvp > img {
		margin-top: 1em;
	}

	#main li article h3,
	#main li article h4 {
		text-align: center;
	}
	
	 #main li article h4 {
		 margin-bottom: 1em;
	 }

	.mvp li article img:first-child {
		float: none;
		margin: 0 auto;
		display: block;
	}
	
	/* ===== Social Box ===== */

	.social-box {
		display: none;
	}

}

/* ===== Non-semantic Helper Classes ===== */

.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}

.float-left {
	float: left;
}

.float-right {
	float: right;
}

/* ===== 印刷用スタイル ===== */

@media print {
	
	* {
		background: transparent !important;
		color: black !important;
		box-shadow:none !important;
		text-shadow: none !important;
		filter:none !important;
		-ms-filter: none !important;
	}
	
	a,
	a:visited {
		text-decoration: underline;
	}
	
	a[href]:after {
		content: " (" attr(href) ")";
	}
	
	abbr[title]:after {
		content: " (" attr(title) ")";
	}
	
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content: "";
	}
	
	pre,
	blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}
	
	thead {
		display: table-header-group;
	}
	
	tr,
	img {
		page-break-inside: avoid;
	}
	
	img {
		max-width: 100% !important;
	}
	
	@page {
		margin: 0.5cm;
	}
	
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	
	h2,
	h3 {
		page-break-after: avoid;
	}
	
}