@charset "UTF-8";
a, hr {
	padding: 0
}
header nav ul li:before, header nav ul:after {
	width: 2px;
	height: 12px;
	bottom: 0;
	background: #979797;
	margin: auto;
	top: 0
}
article, aside, details, figcaption, figure, footer, header, header h1 a, hgroup, hr, menu, nav, section {
	display: block
}
.conduct, .main_img, .mission, .product, header {
	min-width: 1075px
}
abbr, address, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	vertical-align: baseline;
	background: 0 0
}
ins, mark {
	background-color: #ff9;
	color: #000
}
html {
	font-size: 62.5%
}
body {
	font-size: 10px;
	font-size: 1rem;
	line-height: 1
}
nav ul {
	list-style: none
}
blockquote, q {
	quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
	content: '';
	content: none
}
a {
	margin: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: 0 0
}
ins {
	text-decoration: none
}
mark {
	font-style: italic;
	font-weight: 700
}
del {
	text-decoration: line-through
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help
}
table {
	border-collapse: collapse;
	border-spacing: 0
}
hr {
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0
}
input, select {
	vertical-align: middle
}
header {
	width: 100%;
	height: 90px;
	position: fixed;
	left: 0;
	top: 0;
	background: #fff;
	z-index: 2
}
header h1 {
	width: 196px;
	height: 60px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 42px
}
header h1 a {
	position: relative
}
.header_mr_banner {
	margin: auto;
	padding: 8px 52px 8px 14px;
	width: 350px;
	height: 64px;
	color: #19365f;
	text-align: left;
	text-decoration: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 245px;
	z-index: 3;
	overflow: hidden;
	border: 2px solid #ff6e00;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #fff;
	background: -webkit-linear-gradient(340deg, #fff 0%, #fff 72%, #edf4fb 72%, #dfebf7 100%);
	background: linear-gradient(110deg, #fff 0%, #fff 72%, #edf4fb 72%, #dfebf7 100%);
	-webkit-box-shadow: 0 4px 0 #ff6e00;
	box-shadow: 0 4px 0 #ff6e00;
	-webkit-transition: border-color .2s, -webkit-box-shadow .2s;
	transition: border-color .2s, -webkit-box-shadow .2s;
	transition: border-color .2s, box-shadow .2s;
	transition: border-color .2s, box-shadow .2s, -webkit-box-shadow .2s
}
.header_mr_banner:before {
	content: none
}
.header_mr_banner:after {
	content: '';
	width: 105px;
	height: 105px;
	position: absolute;
	top: -58px;
	right: -18px;
	border: 1px solid rgba(57,123,192,.18);
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.header_mr_banner_copy {
	display: block;
	min-width: 0;
	position: relative;
	z-index: 1
}
.header_mr_banner_lead {
	display: block;
	font-size: 13px;
	line-height: 1.25;
	color: #000;
	font-weight: 700;
	letter-spacing: .04em;
	white-space: nowrap
}
.header_mr_banner_message {
	display: block;
	margin-top: 4px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.2;
	color: #19365f;
	font-weight: 700;
	letter-spacing: .01em;
	white-space: nowrap
}
.header_mr_banner_message em {
	color: #ff6e00;
	font-style: normal;
	border-bottom: 4px solid #f5dcca
}
.header_mr_banner_arrow {
	width: 38px;
	height: 38px;
	position: absolute;
	top: 50%;
	right: 11px;
	z-index: 1;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	border: 0;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #ff6e00;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-transition: right .2s, background-color .2s;
	transition: right .2s, background-color .2s
}
.header_mr_banner_arrow:after {
	content: '';
	width: 9px;
	height: 9px;
	position: relative;
	top: auto;
	left: auto;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: translateX(-2px) rotate(45deg);
	-ms-transform: translateX(-2px) rotate(45deg);
	transform: translateX(-2px) rotate(45deg)
}
.header_mr_banner:hover {
	color: #19365f;
	border-color: #ff6e00;
	-webkit-box-shadow: 0 4px 0 #ff6e00;
	box-shadow: 0 4px 0 #ff6e00
}
.header_mr_banner:hover .header_mr_banner_arrow {
	right: 8px;
	background: #ff6e00
}
header nav span {
	display: none
}
header nav ul {
	margin: auto;
	height: 36px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 40px
}
header nav ul:after {
	right: 0
}
header nav ul li {
	margin-right: 2px;
	height: 36px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 36px;
	float: left;
	position: relative
}
header nav ul li:before {
	left: -2px
}
header nav ul li:after {
	margin: auto;
	width: 20px;
	height: 3px;
	bottom: -3px;
	left: 0;
	right: 0;
	background: #0453ad
}
header nav ul li a {
	padding: 0 24px;
	width: 100%;
	height: 100%;
	color: #6f6f6f;
	text-decoration: none;
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
header nav ul li a:hover {
	color: #fff;
	background: #0e5aaf;
	-webkit-border-radius: 4px;
	border-radius: 4px
}
.main_img {
	margin-top: 90px;
	width: 100%;
	height: 410px;
	background: #eee
}
.main_img .main_bg {
	margin: 0 auto;
	padding-top: 126px;
	width: 1075px;
	height: 410px;
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../img/main_bg.png) center center no-repeat
}
.main_img .main_bg .main_cover {
	width: 1075px;
	height: 410px;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/main_bg_cover.png) center center no-repeat
}
.main_img .main_bg .company_name, .main_img .main_bg .main_copy {
	text-align: center;
	top: 10px;
	text-shadow: #fff 1px 1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff -1px -1px 0;
	position: relative;
	z-index: 1
}
.main_img .main_bg .main_copy {
	font-size: 20px;
	font-size: 2rem;
	line-height: 2;
	letter-spacing: 1px;
	display: none
}
.main_img .main_bg .main_copy strong {
	font-size: 34px;
	font-size: 3.4rem;
	color: #0e5aaf;
	display: block
}
.main_img .main_bg .company_name {
	margin-top: 60px;
	font-size: 20px;
	font-size: 2rem;
	color: #0e5aaf;
	font-weight: 700;
	letter-spacing: 2px;
	display: none
}
.mission {
	width: 100%;
	height: 305px;
	background: url(../img/mission_bg.png) center center repeat-x
}
.mission .mission_inner {
	margin: 0 auto;
	width: 1075px;
	height: 305px;
	position: relative
}
.mission .mission_inner .mission_inner_arrow {
	width: 540px;
	height: 305px;
	position: relative;
	left: -1075px;
	background: url(../img/mission_arrow.png) center center no-repeat
}
.mission .mission_inner .mission_inner_arrow:after {
	width: 100%;
	height: 305px;
	top: 0;
	left: -100%;
	background: #fff
}
.mission .mission_inner .mission_inner_arrow .mission_inner_arrow_text, .mission .mission_inner .mission_inner_right .mission_inner_right_text {
	margin: auto;
	position: absolute;
	top: 0;
	background-image: url(../img/sprite.png);
	display: none;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap
}
.mission .mission_inner .mission_inner_arrow .mission_inner_arrow_text {
	left: 105px;
	bottom: 0;
	background-position: 0 -57px;
	width: 174px;
	height: 74px
}
.mission .mission_inner .mission_inner_right {
	width: 535px;
	height: 305px;
	position: absolute;
	right: 0;
	top: 0
}
.mission .mission_inner .mission_inner_right .mission_inner_right_text {
	left: 0;
	right: 100px;
	bottom: -10px;
	background-position: 0 0;
	width: 420px;
	height: 57px
}
.conduct {
	width: 100%;
	height: 323px;
	background: #2d67a3
}
.conduct .conduct_inner {
	margin: 0 auto;
	padding: 80px 0 0 100px;
	width: 1075px;
	height: 323px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../img/conduct_bg.png) center center no-repeat
}
.conduct .conduct_inner h2 {
	font-size: 26px;
	font-size: 2.6rem;
	color: #fff;
	line-height: 1.4;
	font-weight: 400;
	letter-spacing: 20px;
	display: none;
	position: relative;
	top: -10px
}
.conduct .conduct_inner p {
	width: 450px;
	margin-top: 30px;
	font-size: 14px;
	font-size: 1.4rem;
	color: #fff;
	line-height: 2.4;
	display: none;
	position: relative;
	top: -10px
}
.company h2, .product .product_inner h2 {
	font-size: 26px;
	letter-spacing: 20px;
	text-align: center;
	font-weight: 400
}
.company {
	margin: 0 auto;
	padding: 70px 70px 100px;
	width: 1075px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.company h2 {
	font-size: 2.6rem;
	color: #0e5aaf;
	line-height: 1.4
}
.company .company_list {
	padding-top: 50px;
	width: 453px;
	float: left
}
.company .company_list:nth-of-type(1) {
	margin-right: 29px
}
.company .company_list dl {
	margin-top: 20px;
	width: 100%;
	border-bottom: #d1d1d1 solid 2px
}
.company .company_list dl dt {
	width: 100px;
	font-size: 14px;
	font-size: 1.4rem;
	color: #606060;
	line-height: 2.2;
	float: left
}
.company .company_list dl dd {
	font-size: 14px;
	font-size: 1.4rem;
	color: #606060;
	line-height: 2.2;
	float: left
}
.company .company_list dl dd.small {
	font-size: 12px;
	font-size: 1.2rem
}
.company .company_list_bottom {
	padding-top: 20px;
	width: 935px;
	clear: both
}
.company .company_list_bottom dl {
	width: 100%;
	border-bottom: #d1d1d1 solid 2px
}
.product, .recruit {
	border-bottom: #0e5aaf solid 2px
}
.company .company_list_bottom dl dt {
	width: 100px;
	font-size: 14px;
	font-size: 1.4rem;
	color: #606060;
	line-height: 2.2;
	float: left
}
.company .company_list_bottom dl dd {
	font-size: 14px;
	font-size: 1.4rem;
	color: #606060;
	line-height: 2.2;
	float: left
}
/* ISMS追加 */
.company .bl_isms {
	display: flex;
	justify-content: space-between;
	margin: 60px 0 30px;
}
.company .bl_isms .logo {
	width: 25%;
}
.company .bl_isms .txt {
	width: 72%;
	line-height: 1.5;
	font-size: 1.4rem;
	color: #606060;
}
.company .bl_isms .txt span {
	display: block;
	margin-top: 20px;
}
.company .company_list.isms_list {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	float: unset;
	padding-top: 0;
}
.company .company_list.isms_list dl {
	display: flex;
	width: 49%;
}
.company .company_list.isms_list dt {
	width: 110px;
}
.company .company_list_bottom.isms_list_bottom dt {
	width: 110px;
}
.company .company_list.isms_list dl:nth-of-type(2n) {
	margin-left: 2%;
}

.product {
	padding: 60px 0;
	width: 100%;
	background: url(../img/product_bg.png) center center
}
.product .product_inner {
	margin: 0 auto;
	padding: 0 36px;
	width: 1075px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.product .product_inner h2 {
	font-size: 2.6rem;
	color: #0e5aaf;
	line-height: 1.4
}
.product .product_inner p {
	margin-top: 40px;
	font-size: 26px;
	font-size: 2.6rem;
	color: #3c3c3c;
	line-height: 2;
	text-align: center
}
.product .product_contents {
	margin-top: 50px;
	width: 484px;
	height: 420px;
	float: left;
	background: #fff
}
.product .product_contents:nth-of-type(odd) {
	margin-right: 35px
}
.product .product_contents .production_contents_text {
	margin: 0 30px 0 110px;
	width: 344px;
	height: 100px;
	position: relative;
	display: table
}
.product .product_contents .production_contents_text p {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
	text-align: left;
	vertical-align: middle;
	display: table-cell
}
.product .product_contents .production_contents_text.product01:before, .product .product_contents .production_contents_text.product02:before {
	margin: auto;
	top: 0;
	bottom: 0
}
.product .product_contents .production_contents_text.product01:before {
	left: -70px;
	background-image: url(../img/sprite.png);
	background-position: -74px -131px;
	width: 47px;
	height: 62px
}
.product .product_contents .production_contents_text.product02:before {
	left: -86px;
	background-image: url(../img/sprite.png);
	background-position: 0 -131px;
	width: 74px;
	height: 68px
}
.recruit {
	padding-bottom: 30px;
	width: 100%;
	overflow: hidden
}
.recruit .recruit_upper {
	padding: 70px 0 60px;
	width: 100%;
	min-width: 1075px;
	position: relative;
	top: -350px;
	background: url(../img/product_bg.png) center center
}
.recruit .recruit_upper .recruit_upper_inner {
	margin: 0 auto;
	width: 1075px;
	position: relative
}
.recruit .recruit_upper .recruit_upper_inner:after, .recruit .recruit_upper .recruit_upper_inner:before {
	width: 100%;
	height: 500px;
	bottom: -460px;
	background: #fff
}
.recruit .recruit_upper .recruit_upper_inner:before {
	right: 50%;
	-webkit-transform: rotate(8deg);
	-ms-transform: rotate(8deg);
	transform: rotate(8deg)
}
.recruit .recruit_upper .recruit_upper_inner:after {
	left: 50%;
	-webkit-transform: rotate(-8deg);
	-ms-transform: rotate(-8deg);
	transform: rotate(-8deg)
}
.recruit .recruit_upper .recruit_upper_inner h2 {
	font-size: 26px;
	font-size: 2.6rem;
	color: #0e5aaf;
	line-height: 1.4;
	font-weight: 400;
	text-align: center;
	letter-spacing: 8px
}
.recruit .recruit_upper .recruit_upper_inner .recruit_caption {
	margin: 0 auto;
	width: 766px;
	height: 211px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../img/recruit_caption_bg.png) center center no-repeat
}
.recruit .recruit_upper .recruit_upper_inner .recruit_caption .recruit_caption_inner {
	padding: 22px 26px 39px 22px;
	width: 718px;
	height: 150px;
	display: table
}
.recruit .recruit_upper .recruit_upper_inner .recruit_caption .recruit_caption_inner p {
	padding: 0 120px;
	font-size: 14px;
	font-size: 1.4rem;
	color: #0e5aaf;
	line-height: 2;
	vertical-align: middle;
	display: table-cell
}
.recruit .recruit_lower {
	margin: 0 auto;
	width: 1075px;
	position: relative;
	z-index: 1
}
.recruit .recruit_lower h2 {
	margin: 0 auto 30px;
	width: 300px;
	height: 52px;
	font-size: 24px;
	font-size: 2.4rem;
	color: #fff;
	line-height: 52px;
	font-weight: 400;
	text-align: center;
	letter-spacing: 6px;
	background: #0e5aaf
}
.recruit .recruit_lower .baloonl, .recruit .recruit_lower .baloonr {
	padding: 20px 14px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #fff;
	line-height: 1.4;
	text-align: center;
	position: absolute;
	display: inline-block;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: orange;
	-webkit-box-shadow: 2px 2px 1px rgba(0,0,0,.5);
	box-shadow: 2px 2px 1px rgba(0,0,0,.5)
}
.recruit .recruit_lower .baloonl:after, .recruit .recruit_lower .baloonr:after {
	top: 58px;
	border-width: 6px;
	border-right-width: 10px!important;
	border-right-style: solid!important;
	border-right-color: orange!important
}
.recruit .recruit_lower .baloonr {
	top: 40px;
	right: 70px;
	-webkit-animation: anime1 .7s ease -2s infinite alternate;
	animation: anime1 .7s ease -2s infinite alternate
}
.recruit .recruit_lower .baloonr:after {
	left: 0;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
}
.recruit .recruit_lower .baloonl {
	top: 90px;
	left: 60px;
	-webkit-animation: anime1 .7s ease -2s infinite alternate;
	animation: anime1 .7s ease -2s infinite alternate
}
.recruit .recruit_lower .baloonl:after {
	right: 14px;
	-webkit-transform: rotate(-6deg);
	-ms-transform: rotate(-6deg);
	transform: rotate(-6deg)
}
.recruit .recruit_lower .recruit_detail {
	margin: 0 auto 2px;
	width: 718px
}
.recruit .recruit_lower .recruit_detail>dt {
	padding: 0 36px;
	width: 718px;
	height: 54px;
	font-size: 14px;
	font-size: 1.4rem;
	color: #6a6a6a;
	line-height: 54px;
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #e8e8e8
}
.recruit .recruit_lower .recruit_detail>dt .plusicon {
	margin: auto;
	position: absolute;
	font-size: 14px;
	font-size: 1.4rem;
	top: 0;
	bottom: 0;
	right: 20px
}
.recruit .recruit_lower .recruit_detail>dd {
	display: none;
	padding-bottom: 70px
}
.recruit .recruit_lower .recruit_detail>dd>dl {
	margin: 0 20px;
	padding-top: 40px
}
.recruit .recruit_lower .recruit_detail>dd>dl>dt {
	font-size: 20px;
	font-size: 2rem;
	color: #165fb3;
	line-height: 1.6;
	border-bottom: #165fb3 solid 2px
}
.recruit .recruit_lower .recruit_detail>dd>dl>dd p {
	margin-top: 18px;
	font-size: 14px;
	font-size: 1.4rem;
	color: #6a6a6a;
	line-height: 1.6
}
.recruit .recruit_lower .recruit_detail>dd>dl>dd p strong {
	margin-bottom: 4px;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 400
}
@-webkit-keyframes anime1 {
0% {
-webkit-transform:rotate(4deg);
transform:rotate(4deg)
}
100% {
-webkit-transform:rotate(-4deg);
transform:rotate(-4deg)
}
}
@keyframes anime1 {
0% {
-webkit-transform:rotate(4deg);
transform:rotate(4deg)
}
100% {
-webkit-transform:rotate(-4deg);
transform:rotate(-4deg)
}
}
.form {
	margin: 0 auto;
	padding: 70px 70px 100px;
	width: 1075px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.form.complete, .form.confirm {
	margin-top: 90px
}
.form h2 {
	font-size: 26px;
	font-size: 2.6rem;
	color: #0e5aaf;
	line-height: 1.4;
	font-weight: 400;
	text-align: center;
	letter-spacing: 4px
}
.form .form_caption {
	margin: 40px 0 10px;
	font-size: 14px;
	font-size: 1.4rem
}
.form .form_caption .required {
	padding: 0 7px;
	height: 20px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #fff;
	line-height: 20px;
	vertical-align: bottom;
	display: inline-block;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	background: #c61d1d
}
.form .form_body {
	margin: 0 auto;
	width: 930px;
	border-top: #c9c9c9 solid 2px
}
.form .form_body.complete, .form .form_body.confirm {
	margin-top: 40px
}
.form .form_body.complete p, .form .form_body.confirm p {
	margin-top: 40px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
	text-align: center
}
.form .form_body.complete .input_area span, .form .form_body.confirm .input_area span {
	margin-right: 10px;
	display: inline-block
}
.form .form_body dl {
	display: table;
	border-bottom: #c9c9c9 solid 2px
}
.form .form_body dl dt {
	padding: 14px 20px;
	width: 300px;
	font-size: 14px;
	font-size: 1.4rem;
	position: relative;
	vertical-align: top;
	display: table-cell;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #efefef
}
.form .form_body dl dt .required {
	padding: 0 7px;
	height: 20px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #fff;
	line-height: 20px;
	vertical-align: bottom;
	display: inline-block;
	position: absolute;
	top: 10px;
	right: 10px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	background: #c61d1d
}
.form .form_body dl dt .code {
	height: 20px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #c00303;
	line-height: 20px;
	position: absolute;
	top: 10px;
	right: 60px
}
.form .form_body dl dd {
	width: 630px;
	padding: 14px 0 14px 40px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: table-cell
}
.form .form_body dl dd .input_area {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 28px
}
.form .form_body dl dd .input_area input[type=text] {
	height: 28px;
	font-size: 16px;
	font-size: 1.6rem
}
.form .form_body dl dd .input_area select {
	width: 110px;
	height: 28px;
	font-size: 16px;
	font-size: 1.6rem
}
.form .form_body dl dd .input_area textarea {
	width: 464px;
	height: 180px;
	font-size: 16px;
	font-size: 1.6rem
}
.form .form_body dl dd .input_area .short {
	width: 80px
}
.form .form_body dl dd .input_area .middle {
	width: 176px
}
.form .form_body dl dd .input_area .long {
	width: 464px
}
.form .form_body dl dd .input_area .block_front {
	margin-left: 16px
}
.form .form_body dl dd .input_area .block_back {
	margin-right: 16px
}
.form .form_body dl dd .input_area .front {
	margin-left: 8px
}
.form .form_body dl dd .input_area .back {
	margin-right: 8px
}
.form .form_body dl dd .input_caption {
	margin: 10px 0;
	font-size: 12px;
	font-size: 1.2rem
}
.form .form_body .submit_area {
	margin: 70px auto 0;
	width: 300px;
	height: 56px;
	position: relative
}
.form .form_body .submit_area:after, .form .form_body .submit_area:before {
	margin: auto;
	top: 0;
	bottom: 0;
	z-index: 1;
	pointer-events: none
}
.form .form_body .submit_area:before {
	width: 20px;
	height: 20px;
	right: 10px;
	border: 1px solid #fff;
	-webkit-border-radius: 50%;
	border-radius: 50%
}
.form .form_body .submit_area:after {
	width: 8px;
	height: 8px;
	right: 19px;
	bottom: 1px;
	border-top: #fff solid 1px;
	border-left: #fff solid 1px;
	-webkit-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg)
}
.form .form_body .submit_area input[type=submit] {
	width: 300px;
	height: 56px;
	font-size: 24px;
	font-size: 2.4rem;
	color: #fff;
	letter-spacing: 6px;
	display: block;
	border: none;
	background: #c95155;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none
}

.securitypolicy {
	margin: 180px auto 120px auto;
	width: 720px;
}
.securitypolicy h2 {
	margin-bottom: 50px;
	text-align: center;
	font-size: 26px;
	font-size: 2.6rem;
	line-height: 1.4;
	font-weight: 400;
	letter-spacing: 20px;
	color: #0e5aaf;
}
.securitypolicy h3 {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.4;
	color: #0e5aaf;
}
.securitypolicy div {
	margin-bottom: 25px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.4;
}
.securitypolicy div.signature {
	margin-top: 80px;
	text-align: right;
}

.link {
	text-align: center;
}
.link a {
	padding: 0 20px;
	color: #0e5aaf;
	height: 36px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 36px;
	text-decoration: none;
}
.link a:hover {
	text-decoration: underline;
}

footer {
	padding-top: 60px;
	position: relative
}
footer .footer_logo {
	margin: auto;
	position: absolute;
	top: 60px;
	left: 0;
	right: 0;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background-image: url(../img/sprite.png);
	background-position: -174px -57px;
	width: 196px;
	height: 48px
}
footer .footer_list {
	margin-top: 100px;
	text-align: center
}
footer .footer_list li {
	padding: 0 40px;
	font-size: 0;
	display: inline-block
}
footer .footer_list li a {
	font-size: 12px;
	font-size: 1.2rem;
	color: #3e3e3e;
	text-decoration: none
}
footer .footer_copyright {
	margin: 60px 0 30px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #68acdd;
	text-align: center
}
.company .company_list dl:after, .company .company_list dl:before, .company .company_list_bottom dl:after, .company .company_list_bottom dl:before, .company:after, .company:before, .product .product_inner:after, .product .product_inner:before {
	content: "";
	display: table
}
.company .company_list dl:after, .company .company_list_bottom dl:after, .company:after, .product .product_inner:after {
	clear: both
}
.form .form_body .submit_area:after, .form .form_body .submit_area:before, .mission .mission_inner .mission_inner_arrow:after, .pagetop .pagetop_inner a:before, .product .product_contents .production_contents_text.product01:before, .product .product_contents .production_contents_text.product02:before, .recruit .recruit_lower .baloonl:after, .recruit .recruit_lower .baloonr:after, .recruit .recruit_upper .recruit_upper_inner:after, .recruit .recruit_upper .recruit_upper_inner:before, header nav ul li:after, header nav ul li:before, header nav ul:after {
	content: "";
	display: block;
	position: absolute
}
.recruit .recruit_lower .baloonl:after, .recruit .recruit_lower .baloonr:after {
	width: 0;
	height: 0;
	border-color: transparent;
	border-style: solid
}
.pagetop {
	width: 100%;
	height: 80px;
	display: none;
	position: fixed;
	left: 0;
	bottom: 120px;
	pointer-events: none;
	z-index: 1000
}
.pagetop .pagetop_inner {
	margin: 0 auto;
	width: 1075px;
	height: 80px;
	position: relative;
	pointer-events: none
}
.pagetop .pagetop_inner a {
	padding: 52px 0 0 4px;
	width: 80px;
	height: 80px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #767676;
	text-align: center;
	text-decoration: none;
	letter-spacing: 4px;
	display: block;
	position: absolute;
	top: 0;
	right: 50px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #c6c6c6;
	pointer-events: auto
}
.pagetop .pagetop_inner a:before {
	margin: auto;
	width: 26px;
	height: 26px;
	top: 20px;
	left: 0;
	right: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	border-top: #767676 solid 3px;
	border-left: #767676 solid 3px;
	pointer-events: none
}
/* 個人情報保護方針 追加 */
.privacy_title {
	margin: 50px 0 10px;
	font-size: 1.4rem;
	font-weight: bold;
}
.privacy {
	margin-bottom: 50px;
	height:200px;
	padding:20px 25px 10px;
	border:solid 1px #666;
	overflow-y: scroll;
}
.privacy h2 {
	color:#666;
	font-size:14px;
	font-weight:600;
	text-align:left;
	margin:30px 0 10px;
}
.privacy p,
.privacy ul li {
	color:#666;
	font-size:14px;
	line-height:1.66;
	text-align:left;
	margin:0 0 15px;
	list-style: none;
}
.privacy p a {
	color:#306fbd;
	text-decoration:underline;
}
.privacy p a:hover {
	text-decoration:none;
}
.privacy p.chushaku {
	font-size:13px;
	text-indent:-1em;
	padding-left:1em;
	margin:0;
}
.privacy ul.indent li {
	text-indent:-1em;
	padding-left:1em;
	margin:0;
}

@media screen and (min-width:768px) and (max-width:1150px) {
.header_mr_banner {
	padding-right: 37px;
	padding-left: 10px;
	width: 255px;
	height: 68px;
	left: 245px
}
.header_mr_banner_lead {
	font-size: 11px;
	font-size: 1.1rem
}
.header_mr_banner_message {
	margin-top: 3px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.15;
	white-space: normal
}
.header_mr_banner_message span {
	display: block;
	white-space: nowrap
}
.header_mr_banner_arrow {
	width: 28px;
	height: 28px;
	right: 7px
}
.header_mr_banner_arrow:after {
	width: 8px;
	height: 8px;
	border-width: 2px
}
.header_mr_banner:hover .header_mr_banner_arrow {
	right: 5px
}
}
@media screen and (min-width:768px) and (max-width:1300px) {
header nav ul li {
	font-size: 12px;
	font-size: 1.2rem
}
header nav ul li a {
	padding-right: 10px;
	padding-left: 10px
}
}

@media screen and (max-width:767px) {
header nav ul li:after, header nav ul li:before, header nav ul:after {
	content: none
}
header h1, header nav ul li a:after {
	margin: auto;
	position: absolute;
	bottom: 0
}
.conduct, .main_img, .mission, header {
	min-width: auto
}
header {
	width: 100%;
	height: 70px
}
.header_with_mr_banner {
	height: 70px
}
.header_mr_banner {
	margin: 0;
	padding: 5px 32px 5px 8px;
	width: auto;
	height: 56px;
	position: fixed;
	top: 7px;
	bottom: auto;
	left: calc(33.333% + 8px);
	right: 72px;
	-webkit-border-radius: 6px;
	border-radius: 6px
}
.header_mr_banner_lead {
	font-size: 10px;
	line-height: 1.15;
	letter-spacing: -.06em
}
.header_mr_banner_message {
	margin-top: 2px;
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.1;
	letter-spacing: -.04em
}
.header_mr_banner_message span {
	display: block;
	white-space: nowrap
}
.header_mr_banner_arrow {
	width: 27px;
	height: 27px;
	right: 7px
}
.header_mr_banner_arrow:after {
	width: 8px;
	height: 8px;
	border-width: 2px
}
.header_mr_banner:hover .header_mr_banner_arrow {
	right: 5px
}
header h1 {
	width: 196px;
	height: 60px;
	top: 0;
	left: 8px
}
.header_with_mr_banner h1 {
	width: calc(33.333% - 16px);
	max-width: 196px;
	height: auto;
	top: 50%;
	bottom: auto;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%)
}
header h1 a {
	display: block;
	position: relative
}
header h1 a img {
	width: 100%;
	height: 100%
}
.header_with_mr_banner h1 a img {
	height: auto
}
header nav {
	width: 60px;
	height: 60px;
	position: fixed;
	top: 10px;
	right: 0;
	z-index: 1
}
header nav.menu-trigger {
	display: inline-block;
	-webkit-transition: all .4s;
	transition: all .4s;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
header nav.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(15px) rotate(-45deg);
	-ms-transform: translateY(15px) rotate(-45deg);
	transform: translateY(15px) rotate(-45deg)
}
header nav.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
}
header nav.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-15px) rotate(45deg);
	-ms-transform: translateY(-15px) rotate(45deg);
	transform: translateY(-15px) rotate(45deg)
}
header nav.menu-trigger span {
	display: inline-block;
	-webkit-transition: all .4s;
	transition: all .4s;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	left: 5px;
	width: 40px;
	height: 4px;
	background-color: #999;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	pointer-events: none
}
header nav.menu-trigger span:nth-of-type(1) {
	top: 10px
}
header nav.menu-trigger span:nth-of-type(2) {
	top: 25px
}
header nav.menu-trigger span:nth-of-type(3) {
	top: 40px
}
header nav ul {
	height: auto;
	width: 250px;
	display: none;
	position: fixed;
	top: 60px;
	right: 0;
	border-top: #ccc solid 1px
}
.header_with_mr_banner nav ul {
	top: 70px
}
header nav ul.on {
	display: block
}
header nav ul li {
	margin-right: 0;
	height: 40px;
	font-size: 1.4rem;
	line-height: 40px;
	float: none;
	position: relative;
	border-left: #ccc solid 1px;
	border-bottom: #ccc solid 1px;
	background: rgba(255,255,255,.9)
}
header nav ul li a {
	padding: 0 24px;
	width: 100%;
	height: 100%;
	color: #6f6f6f;
	text-decoration: none;
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
header nav ul li a:hover {
	color: #6f6f6f;
	background: rgba(255,255,255,.9);
	-webkit-border-radius: 0;
	border-radius: 0
}
header nav ul li a:after {
	content: '▶︎';
	color: #999;
	top: 0;
	right: 8px;
	background: 0 0
}
.main_img {
	margin-top: 70px;
	width: 100%;
	height: 300px
}
.main_img .main_bg {
	margin: 0 auto;
	padding: 20px 8px;
	width: 100%;
	height: 300px;
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../img/main_bg.png) center center no-repeat
}
.main_img .main_bg .main_cover {
	width: 100%;
	height: 300px;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/main_bg_cover.png) center center no-repeat
}
.main_img .main_bg .company_name, .main_img .main_bg .main_copy {
	top: 10px;
	text-shadow: #fff 1px 1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff -1px -1px 0;
	position: relative;
	text-align: center;
	z-index: 1
}
.main_img .main_bg .main_copy {
	font-size: 1.8rem;
	line-height: 2;
	letter-spacing: 1px;
	display: none
}
.main_img .main_bg .main_copy strong {
	font-size: 2.4rem;
	color: #0e5aaf;
	display: block
}
.main_img .main_bg .main_copy span {
	display: block
}
.main_img .main_bg .company_name {
	margin-top: 30px;
	font-size: 2rem;
	color: #0e5aaf;
	font-weight: 700;
	letter-spacing: 2px;
	display: none
}
.mission {
	width: 100%;
	height: 305px;
	background: url(../img/mission_bg.png) center center repeat-x
}
.mission .mission_inner {
	margin: 0 auto;
	width: 100%;
	height: 305px;
	position: relative
}
.mission .mission_inner .mission_inner_arrow {
	margin: 0 auto;
	width: 100%;
	height: 200px;
	position: relative;
	left: 0;
	background: url(../img/mission_arrow2.png) center bottom no-repeat;
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%
}
.mission .mission_inner .mission_inner_arrow:after {
	content: none
}
.mission .mission_inner .mission_inner_arrow .mission_inner_arrow_text {
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 40px;
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background-image: url(../img/sprite.png);
	background-position: 0 -57px;
	width: 174px;
	height: 74px
}
.mission .mission_inner .mission_inner_right {
	padding-top: 200px;
	width: 100%;
	height: 305px;
	position: absolute;
	right: 0;
	top: 0
}
.mission .mission_inner .mission_inner_right .mission_inner_right_text {
	margin: auto;
	width: 100%;
	font-size: 1.8rem;
	color: #0e5aaf;
	text-align: center;
	font-weight: 700;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: block;
	overflow: hidden;
	text-indent: 0;
	white-space: normal;
	background: 0 0
}
.conduct .conduct_inner h2, .conduct .conduct_inner p {
	color: #fff;
	display: block;
	top: -10px;
	position: relative
}
.conduct {
	width: 100%;
	height: auto;
	background: #2d67a3
}
.conduct .conduct_inner {
	margin: 0 auto;
	padding: 40px 16px;
	width: 100%;
	height: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../img/conduct_bg.png) right center no-repeat
}
.conduct .conduct_inner h2 {
	font-size: 2.6rem;
	line-height: 1.4;
	font-weight: 400;
	letter-spacing: 20px
}
.conduct .conduct_inner p {
	width: 100%;
	margin-top: 10px;
	font-size: 1.4rem;
	line-height: 2
}
.company {
	margin: 0 auto;
	padding: 40px 8px 20px;
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.company h2 {
	font-size: 2.6rem;
	color: #0e5aaf;
	line-height: 1.4;
	font-weight: 400;
	text-align: center;
	letter-spacing: 20px
}
.company .company_list {
	padding: 0 8px;
	width: auto;
	float: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.company .company_list:nth-of-type(1) {
	margin-right: 0
}
.company .company_list dl {
	margin-top: 20px;
	width: 100%;
	display: table;
	border-bottom: #d1d1d1 solid 2px
}
.company .company_list dl dd, .company .company_list dl dt {
	font-size: 1.3rem;
	color: #606060;
	line-height: 2.2;
	float: none;
	display: table-cell
}
.company .company_list dl dt {
	width: 80px
}
.company .company_list dl dd.small {
	font-size: 1.4rem
}
.company .company_list dl dd span {
	display: block
}
.company .company_list_bottom {
	padding: 20px 8px 0;
	width: 100%;
	clear: both;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.company .company_list_bottom dl {
	width: 100%;
	display: table;
	border-bottom: #d1d1d1 solid 2px
}
.company .company_list_bottom dl dd, .company .company_list_bottom dl dt {
	font-size: 1.3rem;
	color: #606060;
	line-height: 2.2;
	display: table-cell;
	float: none
}
.product, .recruit {
	border-bottom: #0e5aaf solid 2px
}
.company .company_list_bottom dl dt {
	width: 80px
}
.company .company_list_bottom dl dd span {
	display: block
}
/* ISMS追加 */
.company .company_list.isms_list dl:nth-of-type(2n) {
	margin-left: 0;
}
.company .company_list.isms_list dl {
	width: 100%;
}
.company .company_list.isms_list dt {
	width: 110px;
}
.company .company_list.isms_list dd {
	width: calc(100% - 110px);
}

.product {
	padding: 20px 0;
	width: 100%;
	min-width: 100%;
	background: url(../img/product_bg.png) center center
}
.product .product_inner {
	margin: 0 auto;
	padding: 0 8px;
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.product .product_inner h2 {
	font-size: 2.6rem;
	color: #0e5aaf;
	line-height: 1.4;
	font-weight: 400;
	text-align: center;
	letter-spacing: 20px
}
.product .product_inner p {
	margin-top: 20px;
	font-size: 1.8rem;
	color: #3c3c3c;
	line-height: 1.8;
	text-align: center
}
.product .product_contents {
	margin: 20px 8px 0;
	width: auto;
	height: auto;
	float: none;
	background: #fff
}
.product .product_contents:nth-of-type(odd) {
	margin-right: 8px
}
.product .product_contents img {
	width: 100%;
	height: auto
}
.product .product_contents .production_contents_text {
	margin: 0 8px 0 92px;
	width: auto;
	height: 100px;
	position: relative;
	display: table
}
.product .product_contents .production_contents_text p {
	font-size: 1.3rem;
	line-height: 1.6;
	text-align: left;
	vertical-align: middle;
	display: table-cell
}
.product .product_contents .production_contents_text span, .recruit .recruit_upper .recruit_upper_inner h2 span {
	display: block
}
.product .product_contents .production_contents_text.product01:before, .product .product_contents .production_contents_text.product02:before {
	margin: auto;
	top: 0;
	bottom: 0
}
.product .product_contents .production_contents_text.product01:before {
	left: -70px;
	background-image: url(../img/sprite.png);
	background-position: -74px -131px;
	width: 47px;
	height: 62px
}
.product .product_contents .production_contents_text.product02:before {
	left: -86px;
	background-image: url(../img/sprite.png);
	background-position: 0 -131px;
	width: 74px;
	height: 68px
}
.recruit {
	padding-bottom: 30px;
	width: 100%;
	overflow: hidden
}
.recruit .recruit_upper {
	padding: 20px 0 60px;
	width: 100%;
	min-width: auto;
	position: relative;
	top: 0;
	background: url(../img/product_bg.png) center center
}
.recruit .recruit_upper .recruit_upper_inner {
	margin: 0 auto;
	width: 100%;
	position: relative
}
.recruit .recruit_upper .recruit_upper_inner:after, .recruit .recruit_upper .recruit_upper_inner:before {
	width: 100%;
	height: 500px;
	bottom: -520px;
	background: #fff
}
.recruit .recruit_upper .recruit_upper_inner:before {
	right: 50%;
	-webkit-transform: rotate(8deg);
	-ms-transform: rotate(8deg);
	transform: rotate(8deg)
}
.recruit .recruit_upper .recruit_upper_inner:after {
	left: 50%;
	-webkit-transform: rotate(-8deg);
	-ms-transform: rotate(-8deg);
	transform: rotate(-8deg)
}
.recruit .recruit_upper .recruit_upper_inner h2 {
	font-size: 2.6rem;
	color: #0e5aaf;
	line-height: 1.4;
	font-weight: 400;
	text-align: center;
	letter-spacing: 8px
}
.recruit .recruit_upper .recruit_upper_inner .recruit_caption {
	margin: 10px 10px 0;
	width: auto;
	height: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #fff
}
.recruit .recruit_upper .recruit_upper_inner .recruit_caption .recruit_caption_inner {
	padding: 0;
	width: 100%;
	height: 150px;
	display: table
}
.recruit .recruit_upper .recruit_upper_inner .recruit_caption .recruit_caption_inner p {
	padding: 10px;
	font-size: 1.3rem;
	color: #0e5aaf;
	line-height: 1.8;
	vertical-align: middle;
	display: table-cell
}
.recruit .recruit_upper .recruit_upper_inner .recruit_caption .recruit_caption_inner p br {
	display: none
}
.recruit .recruit_lower {
	margin: 0 auto;
	width: 100%;
	position: relative;
	z-index: 1
}
.recruit .recruit_lower h2 {
	margin: 0 auto 10px;
	width: 300px;
	height: 52px;
	font-size: 2.4rem;
	color: #fff;
	line-height: 52px;
	font-weight: 400;
	text-align: center;
	letter-spacing: 6px;
	background: #0e5aaf
}
.recruit .recruit_lower .baloonl, .recruit .recruit_lower .baloonr {
	padding: 20px 14px;
	font-size: 1.2rem;
	color: #fff;
	line-height: 1.4;
	text-align: center;
	position: absolute;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: orange;
	-webkit-box-shadow: 2px 2px 1px rgba(0,0,0,.5);
	box-shadow: 2px 2px 1px rgba(0,0,0,.5);
	display: none
}
.recruit .recruit_lower .baloonl:after, .recruit .recruit_lower .baloonr:after {
	top: 58px;
	border-width: 6px;
	border-right-width: 10px!important;
	border-right-style: solid!important;
	border-right-color: orange!important
}
.recruit .recruit_lower .baloonr {
	top: 40px;
	right: 70px;
	-webkit-animation: anime1 .7s ease -2s infinite alternate;
	animation: anime1 .7s ease -2s infinite alternate
}
.recruit .recruit_lower .baloonr:after {
	left: 0;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
}
.recruit .recruit_lower .baloonl {
	top: 90px;
	left: 60px;
	-webkit-animation: anime1 .7s ease -2s infinite alternate;
	animation: anime1 .7s ease -2s infinite alternate
}
.recruit .recruit_lower .baloonl:after {
	right: 14px;
	-webkit-transform: rotate(-6deg);
	-ms-transform: rotate(-6deg);
	transform: rotate(-6deg)
}
.recruit .recruit_lower .recruit_detail {
	margin: 0 10px 2px;
	width: auto
}
.recruit .recruit_lower .recruit_detail>dt {
	padding: 0 12px;
	width: 100%;
	height: 54px;
	font-size: 1.4rem;
	color: #6a6a6a;
	line-height: 54px;
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #e8e8e8
}
.recruit .recruit_lower .recruit_detail>dt .plusicon {
	margin: auto;
	position: absolute;
	font-size: 1.4rem;
	top: 0;
	bottom: 0;
	right: 20px
}
.recruit .recruit_lower .recruit_detail>dd {
	display: none;
	padding-bottom: 20px
}
.recruit .recruit_lower .recruit_detail>dd>dl {
	margin: 0 10px;
	padding-top: 10px
}
.recruit .recruit_lower .recruit_detail>dd>dl>dt {
	font-size: 2rem;
	color: #165fb3;
	line-height: 1.6;
	border-bottom: #165fb3 solid 2px
}
.recruit .recruit_lower .recruit_detail>dd>dl>dd p {
	margin-top: 10px;
	font-size: 1.4rem;
	color: #6a6a6a;
	line-height: 1.6
}
.recruit .recruit_lower .recruit_detail>dd>dl>dd p strong {
	margin-bottom: 4px;
	font-size: 1.6rem;
	font-weight: 400
}
.form {
	margin: 0 auto;
	padding: 20px 0;
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.form.complete, .form.confirm {
	margin-top: 70px
}
.form h2 {
	font-size: 2rem;
	color: #0e5aaf;
	line-height: 1.4;
	font-weight: 400;
	text-align: center;
	letter-spacing: 0
}
.form h2 span {
	display: block
}
.form .form_caption {
	margin: 10px;
	font-size: 1.4rem;
	line-height: 1.4
}
.form .form_caption .required {
	padding: 0 7px;
	height: 20px;
	font-size: 1.2rem;
	color: #fff;
	line-height: 20px;
	vertical-align: baseline;
	display: inline-block;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	background: #c61d1d
}
.form .form_body {
	margin: 0 10px;
	width: auto;
	border-top: none
}
.form .form_body.complete, .form .form_body.confirm {
	margin-top: 40px
}
.form .form_body.complete p, .form .form_body.confirm p {
	margin-top: 40px;
	font-size: 1.4rem;
	line-height: 1.6;
	text-align: center
}
.form .form_body.complete .input_area span, .form .form_body.confirm .input_area span {
	margin-right: 10px;
	display: inline-block
}
.form .form_body dl {
	margin-bottom: 10px;
	display: block;
	border: 1px solid #c9c9c9;
	border-top: #c9c9c9 solid 2px
}
.form .form_body dl dt {
	padding: 8px;
	width: 100%;
	font-size: 1.4rem;
	display: block;
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #efefef
}
.form .form_body dl dt .required {
	margin-left: 8px;
	padding: 0 7px;
	height: 20px;
	font-size: 1.2rem;
	color: #fff;
	line-height: 20px;
	vertical-align: middle;
	display: inline-block;
	position: relative;
	top: auto;
	right: auto;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	background: #c61d1d
}
.form .form_body dl dt .code {
	height: 20px;
	font-size: 1.2rem;
	color: #c00303;
	line-height: 20px;
	position: absolute;
	top: 10px;
	right: 60px
}
.form .form_body dl dd {
	width: 100%;
	padding: 8px;
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.form .form_body dl dd .input_area {
	font-size: 1.6rem;
	line-height: 28px
}
.form .form_body dl dd .input_area span {
	display: block;
	margin-bottom: 8px
}
.form .form_body dl dd .input_area input[type=text] {
	height: 28px;
	font-size: 1.6rem;
	border: 1px solid #ccc;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.form .form_body dl dd .input_area select {
	margin: 0;
	width: 200px;
	height: 28px;
	font-size: 1.6rem;
	border: 1px solid #ccc
}
.form .form_body dl dd .input_area textarea {
	width: 100%;
	height: 180px;
	font-size: 1.6rem;
	border: 1px solid #ccc;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.form .form_body dl dd .input_area .short {
	width: 70px
}
.form .form_body dl dd .input_area .middle {
	width: 200px
}
.form .form_body dl dd .input_area .long {
	width: 100%
}
.form .form_body dl dd .input_area .block_front {
	margin-left: 0
}
.form .form_body dl dd .input_area .block_back {
	margin-right: 16px
}
.form .form_body dl dd .input_area .front {
	margin-left: 8px
}
.form .form_body dl dd .input_area .back {
	margin-right: 8px
}
.form .form_body dl dd .input_caption {
	margin: 10px 0;
	font-size: 1.2rem
}
.form .form_body .submit_area {
	margin: 20px auto 0;
	width: 300px;
	height: 56px;
	position: relative
}
.form .form_body .submit_area:after, .form .form_body .submit_area:before {
	margin: auto;
	top: 0;
	bottom: 0;
	z-index: 1;
	pointer-events: none
}
.form .form_body .submit_area:before {
	width: 20px;
	height: 20px;
	right: 10px;
	border: 1px solid #fff;
	-webkit-border-radius: 50%;
	border-radius: 50%
}
.form .form_body .submit_area:after {
	width: 8px;
	height: 8px;
	right: 19px;
	bottom: 1px;
	border-top: #fff solid 1px;
	border-left: #fff solid 1px;
	-webkit-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg)
}
.form .form_body .submit_area input[type=submit] {
	width: 300px;
	height: 56px;
	font-size: 2.4rem;
	color: #fff;
	letter-spacing: 6px;
	display: block;
	border: none;
	background: #c95155;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none
}
.pagetop {
	width: 100%;
	height: 60px;
	display: none;
	position: fixed;
	left: 0;
	bottom: 120px;
	pointer-events: none;
	z-index: 1000
}
.pagetop .pagetop_inner {
	margin: 0 auto;
	width: 100%;
	height: 60px;
	position: relative;
	pointer-events: none
}
.pagetop .pagetop_inner a {
	padding: 40px 0 0 4px;
	width: 60px;
	height: 60px;
	font-size: 1.2rem;
	color: #767676;
	text-align: center;
	text-decoration: none;
	letter-spacing: 4px;
	display: block;
	position: absolute;
	top: 10px;
	right: 10px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #c6c6c6;
	pointer-events: auto
}
.pagetop .pagetop_inner a:before {
	margin: auto;
	width: 20px;
	height: 20px;
	top: 16px;
	left: 0;
	right: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	border-top: #767676 solid 3px;
	border-left: #767676 solid 3px;
	pointer-events: none
}
/* 個人情報保護方針 追加 */
.privacy h2 {
	color: #666;
	font-size: 14px;
	font-weight: 600;
	text-align: left;
	margin: 30px 0 10px;
}
}
@media screen and (max-width:420px) {
.header_mr_banner {
	padding-right: 30px;
	padding-left: 6px;
	height: 56px;
	top: 7px;
	left: calc(33.333% + 8px);
	right: 72px
}
.header_mr_banner_lead {
	font-size: 10px;
}
.header_mr_banner_message {
	margin-top: 2px;
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.1;
	letter-spacing: -.04em;
	white-space: normal
}
.header_mr_banner_message span {
	display: block;
	white-space: nowrap
}
.header_mr_banner_arrow {
	width: 25px;
	height: 25px;
	right: 5px
}
.header_mr_banner_arrow:after {
	width: 8px;
	height: 8px
}
.header_mr_banner:hover .header_mr_banner_arrow {
	right: 4px
}
.header_with_mr_banner h1 {
	width: calc(33.333% - 16px);
	height: auto;
	top: 50%
}
}
