@charset "utf-8";
/* CSS Document */
.clear:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	visibility: hidden;
}

.m-t-5 {
	margin-top: 5px;
}

.m-t-10 {
	margin-top: 10px;
}

.m-t-15 {
	margin-top: 15px;
}

.m-t-20 {
	margin-top: 20px;
}

.m-t-25 {
	margin-top: 25px;
}

.m-t-30 {
	margin-top: 30px;
}

.m-t-35 {
	margin-top: 35px;
}

.m-t-40 {
	margin-top: 40px;
}

.m-t-45 {
	margin-top: 45px;
}

.m-t-50 {
	margin-top: 50px;
}

.m-t-55 {
	margin-top: 55px;
}

.m-t-60 {
	margin-top: 60px;
}

.m-t-70 {
	margin-top: 70px;
}

.m-t-80 {
	margin-top: 80px;
}

.m-t-90 {
	margin-top: 90px;
}

.m-l-5 {
	margin-left: 5px;
}

.m-l-10 {
	margin-left: 10px;
}

.m-l-15 {
	margin-left: 15px;
}

.m-l-20 {
	margin-left: 20px;
}

.m-l-25 {
	margin-left: 25px;
}

.m-l-30 {
	margin-left: 30px;
}

.m-l-60 {
	margin-left: 60px;
}

.m-l-80 {
	margin-left: 80px;
}

.m-l-100 {
	margin-left: 100px;
}

.w-p-100 {
	width: 100%;
}

.w-p-95 {
	width: 95%;
}

.w-p-90 {
	width: 90%;
}

.w-p-85 {
	width: 85%;
}

.w-p-80 {
	width: 80%;
}

.w-p-75 {
	width: 75%;
}

.w-p-70 {
	width: 70%;
}

.w-p-65 {
	width: 65%;
}

.w-p-60 {
	width: 60%;
}

.w-p-55 {
	width: 55%;
}

.w-p-50 {
	width: 50%;
}

.w-p-45 {
	width: 45%;
}

.w-p-40 {
	width: 40%;
}

.w-p-35 {
	width: 35%;
}

.w-p-30 {
	width: 30%;
}

.w-p-25 {
	width: 25%;
}

.w-p-20 {
	width: 20%;
}

.w-p-15 {
	width: 15%;
}

.w-p-10 {
	width: 10%;
}

.w-p-5 {
	width: 5%;
}

.h-p-100 {
	height: 100%;
}

.h-p-95 {
	height: 95%;
}

.h-p-90 {
	height: 90%;
}

.h-p-50 {
	height: 50%;
}

.v-a-t {
	vertical-align: top;
}

.v-a-m {
	vertical-align: middle;
}

.v-a-b {
	vertical-align: bottom;
}

.v-a-tb {
	vertical-align: text-bottom;
}

.flex {
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.flex-wrap {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.flex-center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.flex-space-between {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

a {
	color: inherit;
	text-decoration: none;
}

a.text {
	text-decoration: underline;
}

body {
	text-align: center;
	font-size: 16px;
	font-family: "メイリオ", ＭＳ Ｐゴシック, Osaka, Serif, sans-serif;
}

html, body, #wrapper, #header, #nav, #main, #footer {
	width: 100%;
	min-width: 1440px;
	margin: 0 auto;
}

#wrapper {
	position: relative;
	width: 100%;
}

.container {
	width: 1440px;
	margin: 0 auto;
}

#main {
	position: relative;
	width: 100%;
	margin: 0 auto;
	/*padding-bottom: 50px;*/
	font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO";
}

#footer {
	width: 100%;
	padding: 30px 0 10px;
	color: #fff;
	background: #ff6297;
}

#footer .footer-menu {
	margin-bottom: 40px;
	font-size: 14px;
}

#header {
	background: url(../img/recruit/header-top_bg.png);
	height: 120px;
	padding-top: 10px;
}

#header .shop-info {
	text-align: right;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	height: 100px;
	margin-top: 5px;
}

h1 {
	font-size: 14px;
}

#nav {
	position: absolute;
	z-index: 1;
	background: rgba(255, 99, 151, 0.8);
	padding: 18px 0;
}

.content_bg1 {
	background-image: url(../img/recruit/content_line_top.png), url(../img/recruit/content_line_bottom.png), url(../img/recruit/content1_bg_girl.png), url(../img/recruit/content1_bg.jpg);
	background-repeat: no-repeat, no-repeat, repeat-y, repeat-y;
	background-position: center top, center bottom, center, center;
	background-size: 1920px;
	padding: 50px 0 50px;
}

.content_bg2 {
	background-image: url(../img/recruit/content_line_top.png), url(../img/recruit/content_line_bottom.png), url(../img/recruit/content2_bg_top.png), url(../img/recruit/content2_bg_bottom.png), url(../img/recruit/content2_bg.jpg);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, repeat-y;
	background-position: center top, center bottom, center top, center bottom, center;
	background-size: 1920px;
	padding: 50px 0 50px;
}
/*ここまで求人ページのみの共通設定*/

/*contact*/
.contact {
	display: block;
	position: absolute;
	position: -webkit-sticky;
	position: sticky;
	top: 10px;
	right: 0;
	z-index: 2;
	width: 90%;
	margin: 0 auto;
}

.contact a {
	position: absolute;
	top: 80px;
	right: 0;
	display: block;
}

/*gotop*/
.gotop {
	display: block;
	position: fixed;
	right: 0;
	bottom: 10px;
	z-index: 2;
	width: 90%;
	margin: 0 auto;
}

.gotop a {
	position: absolute;
	right: 35px;
	bottom: 0;
	display: block;
}
/*header-banner*/
.header-banner {
	background: url(../img/recruit/header_bg.jpg) center no-repeat;
	height: 820px;
	width: 100%;
}

.header-banner .text {
	padding-top: 100px;
}
/*tokucho*/
.tokucho {
	position: relative;
}

.tokucho .inner {
	width: 1200px;
	margin: 50px auto 0;
}

.tokucho .inner .tokucho-list .item {
	margin: 0 25px 50px;
}

.tokucho .arrow {
	position: absolute;
	bottom: -90px;
	left: 0;
	right: 0;
}

/*iwaikin*/
.iwaikin {
	background: url(../img/recruit/tokucho_iwaikin_bg.png) no-repeat;
	padding: 93px 0;
}

/*salary*/
/*salary case*/
.salary .case {
	position: relative;
	width: 1200px;
	margin: 70px auto 0;
}

.salary .case .left-contents {
	position: relative;
}

.salary .case .left-contents .title {
	position: absolute;
	left: 63px;
	top: -70px;
}

.salary .case .left-contents .case1 {
	margin-top: 38px;
}

.salary .case .left-contents, .salary .case .right-contents {
	margin-top: 50px;
	width: 502px;
	height: 648px;
	background: url(../img/recruit/salary_case_bg.png) no-repeat;
}

.salary .case .right-contents {
	margin-left: 50px;
}

.salary .case .right-contents .shimei {
	margin-top: 74px;
}

.salary .case .right-contents .option {
	margin-top: 70px;
}

.salary .case .ov-left {
	position: absolute;
	top: 10px;
	left: -130px;
}

.salary .case .ov-plus {
	position: absolute;
	bottom: 260px;
	left: 0px;
	right: 0px;
}

.salary .case .ov-right {
	position: absolute;
	bottom: -40px;
	right: -130px;
}

.salary .case .ov-arrow {
	position: absolute;
	bottom: -120px;
	left: 0px;
	right: 0px;
	z-index: 1;
}
/*salary hosho*/
.salary .hosho {
	position: relative;
	margin-top: 80px;
}

.salary .hosho .ov-arrow {
	position: absolute;
	left: 0;
	right: 0;
	top: 270px;
	z-index: 1;
}

.salary .hosho .hosho2 {
	margin-top: 40px;
}

/*policy*/
.policy {
	background: url(../img/recruit/policy_bg.jpg) no-repeat;
	padding: 115px 0 65px;
}

.policy .inner {
	background: url(../img/recruit/policy_bg.png) no-repeat;
	margin: 0 auto;
	padding: 50px 0;
	width: 1440px;
}

.policy .inner .policy-list .item {
	position: relative;
	background: url(../img/recruit/policy_bg2.png) no-repeat;
	margin: 0 30px;
	width: 402px;
	height: 404px;
}

.policy .inner .policy-list .item .policy-ov {
	position: absolute;
	top: -30px;
	left: -10px;
}
/*onakura*/
.onakura .container {
	position: relative;
}

.onakura .inner {
	background: url(../img/recruit/onakura_bg.jpg) no-repeat;
	width: 1042px;
	margin: 50px auto 0;
	padding: 70px 0;
}

.onakura .inner .shigoto {
	margin: 30px auto;
}

.onakura .inner .shigoto :nth-child(2) {
	margin-left: 50px;
}

.onakura .ov-1 {
	position: absolute;
	left: -30px;
	top: 80px;
}

.onakura .ov-2 {
	position: absolute;
	right: -40px;
	top: 30px;
}

.onakura .ov-3 {
	position: absolute;
	left: -20px;
	bottom: 10px;
}

.onakura .ov-4 {
	position: absolute;
	right: 20px;
	bottom: 110px;
}
/*faq*/
.faq .inner {
	width: 1440px;
	margin: 50px auto;
}

.faq .faq-contents {
	background: url(../img/recruit/faq_bg.png) no-repeat;
	width: 1440px;
	height: 325px;
	padding: 30px;
	box-sizing: border-box;
}

.faq .faq-contents .left-contents {
	margin-top: -20px;
}

.faq .faq-contents .right-contents {
	text-align: left;
	width: 1055px;
	padding: 30px 0 0 30px;
	box-sizing: border-box;
}

.faq .faq-contents .right-contents .question {
	background-image: url(../img/recruit/faq_line.png), url(../img/recruit/faq_q.png);
	background-position: left bottom, left 2px;
	background-repeat: repeat-x, no-repeat;
	font-size: 24px;
	font-weight: bold;
	color: #fc2078;
	padding-left: 40px;
	height: 50px;
}

.faq .faq-contents .right-contents .answer {
	background-image: url(../img/recruit/faq_a.png);
	background-position: left 2px;
	background-repeat: no-repeat;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.7;
	color: #373737;
	padding-left: 40px;
}

/*treatment*/
.treatment {
	background: url(../img/recruit/treatment_bg.jpg) no-repeat;
	padding: 115px 0 65px;
}

.treatment .inner {
	background: url(../img/recruit/treatment_bg.png) no-repeat;
	margin: 0 auto;
	padding: 50px 0;
	width: 1440px;
}

.treatment .inner .treatment-list .item {
	position: relative;
	background: url(../img/recruit/treatment_bg2.png) no-repeat;
	margin: 0 30px;
	width: 402px;
	height: 404px;
}

/*campaign*/
.campaign .inner {
	position: relative;
	width: 1440px;
	margin: 50px auto 0;
}

.campaign .inner .campaign-list .item {
	position: relative;
	background: url(../img/recruit/campaign_bg.png) no-repeat;
	margin: 0 20px 30px;
	width: 502px;
	height: 534px;
}

.campaign .inner .campaign-list .item .campaign-ov {
	position: absolute;
	top: -10px;
	left: -10px;
}

.campaign .inner .campaign-list .item::before {
	content: url(../img/recruit/campaign_ov.png);
	display: block;
	position: absolute;
	top: 10px;
	left: 10px;
}

.campaign .inner .ov-left {
	position: absolute;
	top: 170px;
	left: 0px;
}

.campaign .inner .ov-right {
	position: absolute;
	bottom: 190px;
	right: 0px;
}

/*entry*/
.entry .bg {
	background: url(../img/recruit/entry_bg.png.png);
	width: 1040px;
	box-shadow: 0px 4px 2px 0px rgba(1, 1, 1, 0.3);
	margin: 50px auto 0;
	border-radius: 20px;
	padding: 20px;
}

.entry .bg .bg-inner {
	background: #fffce9;
	margin: 0 auto;
	padding: 30px 0 50px;
	border-radius: 20px;
	box-shadow: 0px 4px 2px 0px rgba(1, 1, 1, 0.3);
}

.entry .bg .bg-inner .mail {
	margin: 0 20px;
}

/*form*/

/*table*/
.entry input, .entry textarea {
	font-family: "メイリオ", ＭＳ Ｐゴシック, Osaka, Serif, sans-serif;
}

.entry form table {
	text-align: left;
	width: 90%;
	margin: 30px auto;
}

.entry form .form-list .label {
	box-sizing: border-box;
	width: 25%;
	padding-top: 30px;
	font-size: 20px;
	font-weight: bold;
	text-align: left;
}

.entry form .form-list .label span {
	color: #FF0004;
}

.entry form .form-list .value {
	box-sizing: border-box;
	width: 75%;
	padding: 15px 0;
	vertical-align: top;
}

.entry form .form-list .value input {
	height: 50px;
	border: 1px solid #fc63ae;
	padding: 5px;
	box-sizing: border-box;
	font-size: 18px;
}

.entry form .form-list .value textarea {
	height: 200px;
	border: 1px solid #fc63ae;
	padding: 5px;
	box-sizing: border-box;
	font-size: 18px;
}

/*button*/
.entry form button {
	background: 0 0;
	padding: 0;
	border: none;
	cursor: pointer;
	font-size: 18px;
	text-align: center;
	line-height: 1.6;
}

.entry form .reset {
	margin-left: 50px;
}