@charset "utf-8";

/*全体の設定
---------------------------------------------------------------------------*/
body {
	color: #000;
	font-size:14px;
}


/*ヘッダ
---------------------------------------------------------------------------*/
header {
	min-height:400px;
	background-image:url(../images/header2.jpg);
	background-size:cover;
}
header .inner {
	max-width:1280px;
	height:112px;
	margin:0 auto;
}
header #logo {
	float:left;
	width:304px;
	padding:20px 0px;
	font-size:19px;
	font-weight:bold;
	color:#000;
	
}
header #logo img {
	height:40px;
	margin-left:15px;
	margin-right:10px;
}
header .inner2 {
	text-align:center;
}
header .inner2 h2 {
	margin-top:60px;
	font-size:56px;
	color:#fff;
	line-height:1.3;
}
header .inner2 h2 div {
	font-size:20px;
	color:#fff;
}
header #entry {
	display:block;
	position:absolute;
	top:0;
	right:0;
	width:114px;
	height:92px;
	padding-top:25px;
	text-align:center;
	color:#fff;
	background-color:#D11E79;
}
header #entry:hover {
	background-color:#AD2673;
}


/*メインメニュー
---------------------------------------------------------------------------*/
#menubar {
	float:right;
	margin-right:100px;
	margin-top:45px;
	font-size:16px;
}
#menubar ul {
}
#menubar li {
	float:left;
	height:16px;
	margin:0px 15px;
}
#menubar a,
.menu a {
	position:relative;
	color:#000;
	text-decoration:none;
}
#menubar a:after,
.menu a:after {
	position: absolute;
	bottom: -4px;
	left: -5%;
	content: '';
	width: 105%;
	height: 1px;
	background: #000;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform .3s;
}
#menubar a:hover::after,
.menu a:hover::after {
	transform: scale(1, 1);
}


/*コンテンツ
---------------------------------------------------------------------------*/


/*メインコンテンツ
---------------------------------------------------------------------------*/
section {
	margin-top:115px;
}
section .inner {
	width:1000px;
	margin:0 auto;
}
section .inner2 {
	width:800px;
	margin:0 auto;
}
section h2 {
	margin-bottom:30px;
	font-size:56px;
	text-align:center;
	color:#FFD500;
}
section h2 div {
	font-size:20px;
	color:#000;
}
section h2 p {
	margin-top:30px;
	font-size:30px;
	color:#000;
}
section h3 {
	margin-bottom:25px;
	font-size:20px;
	text-align:center;
}

.company1{
	width: 1000px!important;
	 display: flex;
	 justify-content: space-around;
	 margin-bottom: -20px!important;
}
.company1 img{
	 width: 50%;
	 height: auto;
}
.job1{
	width: 1000px!important;
	 display: flex;
	 justify-content: space-around;
}
.job1 article{
	 width: 40%!important;
	 height: auto;
}
.job1 img{
	 width: 100%!important;
	 height: auto;
}

@media (max-width:767px){
	.company1{
		width: 100%!important;
	flex-wrap: wrap;
}
.company1 img{
	 width: 100%;
	 height: auto;
}
.job1{
	width: 100%!important;
	 flex-wrap: wrap;
}
.job1 article{
	 width: 90%!important;
	 height: auto;
}
}

	
/*フッタ
---------------------------------------------------------------------------*/
footer {
	text-align:center;
}
footer a {
	color:#000 !important;
}
.footer_inner {
	width:1200px;
	margin:0 auto;
	padding-top:80px;
	padding-bottom:80px;
}
footer .logo {
}
footer .name {
	margin-top:25px;
	font-size:25px;
	font-weight:bold;
}
footer address {
	margin-top:15px;
	font-style:normal;
}
footer .tel {
	font-size:19px;
}
footer .tel a {
	font-size:27px;
	font-weight:bold;
}
footer #footer_menu {
	padding:14px 0px;
	background-color:#606060;
}
footer #footer_menu ul {
}
footer #footer_menu li {
	display:inline-block;
	margin:0px 15px;
}
footer #footer_menu li a {
	color:#fff !important;
}
footer #copyright {
	font-size:14px;
	padding:25px 0px;
	color:#fff;
	background-color:#231815;
}

/*PAGE TOP
---------------------------------------------------------------------------*/
.pagetop {
	position:fixed;
	bottom:0px;
}
.pagetop a {
	float: right;
}

/*その他
---------------------------------------------------------------------------*/
.images {
	margin-top:15px;
}
.images span {
	float:left;
}
.images span div {
	margin-top:5px;
	text-align:right;
}

.required {
	display:inline-block;
	width:46px;
	margin-left:10px;
	padding:2.5px 0;
	font-size:14px;
	text-align:center;
	background-color:#FFD500;
	line-height:1;
}

.mail {
	text-decoration:underline;
}

.thanks {
	font-size:30px;
	padding:100px 0px;
	text-align:center;
}

input[type="text"],
textarea {
	padding:11.5px 10px;
	border:solid 1px #808080;
	border-radius:3px;
}
input[type="radio"] {
	margin-left:25px;
	margin-right:10px;
}
input[type="radio"]:first-child {
	margin-left:45px;
}


/*トップ
---------------------------------------------------------------------------*/
body#top header {
	background-image:url(../images/top/header3.jpg);
	background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
	aspect-ratio: 20 / 9;
}
@media (max-width:767px){
	body#top header{
	 aspect-ratio: 0 / 1;
	 background-image:url(../images/top/header4.jpg);
}
}

body#top header .inner2 p {
	width:206px;
	height:181px;
	margin:0 auto;
	margin-top:18vh;
	padding-top:20px;
	background-color:#FFD500;
	font-size:30px;
	text-align:center;
}
body#top header .inner2 .name {
	margin-top:20px;
	font-size:30px;
	font-weight:bold;
	color:#000;
}
body#top header .inner2 .name2 {
	margin-top:15px;
}

body#top .sub_menu {
	width:1000px;
	margin:0 auto;
	margin-top:10px;
}
body#top .sub_menu a {
	display:block;
	float:left;
	position:relative;
	width:50%;
	height:92px;
	padding:12px 0px 12px 50px;
	color:#fff;
	background-size:cover;
}
body#top .sub_menu a:nth-child(1) {
	background-image:url(../images/top/menu_president_on.png);
}
body#top .sub_menu a:nth-child(2) {
	background-image:url(../images/top/menu_employee_on.png);
}
body#top .sub_menu a:nth-child(3) {
	background-image:url(../images/top/menu_company_on.png);
}
body#top .sub_menu a:nth-child(4) {
	background-image:url(../images/top/menu_recruitment_on.png);
}
body#top .sub_menu a img {
	position:absolute;
	left:0;
	top:0;
}
body#top .sub_menu a span {
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	transform:translateY(-50%) translateX(-50%);
	-webkit- transform:translateY(-50%) translateX(-50%);
	width:100%;
	text-align:center;
}
body#top .sub_menu a:hover > img {
	animation: imgOn 0.5s 1 forwards;
}
body#top .sub_menu a > img {
	animation: imgOff 0.5s 1 forwards;
}

body#top section#job {
	background-color:#FFE600;
	padding-top:70px;
	padding-bottom:50px;
}
body#top section#job .inner {
	width:1280px;
	background-image:url(../images/top/job_back.jpg);
	background-repeat:no-repeat;
}
body#top section#job h2 {
	color:#fff;
}
body#top section#job h2 div,
body#top section#job h2 p {
	color:#000;
}
body#top section#job article {
	float:left;
	width:224px;
	margin-top:35px;
	margin-left:60px;
	text-align:center;
}
body#top section#job article:first-child {
	margin-left:0px;
}
body#top section#job article strong {
	display:block;
	font-size:33px;
}
body#top section#job article img {
	margin-top:15px;
}
body#top section#job article p {
	margin-top:15px;
	font-size:14px;
	text-align:left;
	line-height:1.8;
}

body#top section#president .inner2 p {
	float:left;
	width:370px;
	line-height:1.7;
}
body#top section#president .inner2 .president {
	float:right;
}
body#top section#president .inner2 .name {
	margin-top:30px;
	margin-bottom:75px;
	margin-left:120px;
}

body#top section#employee article {
	height:400px;
	margin-bottom:40px;
}
body#top section#employee article .profile {
	float:left;
	width:500px;
	height:100%;
	background-color:#FFD500;
}
body#top section#employee article:nth-child(2n+1) .profile {
	float:right;
}
body#top section#employee article .description {
	padding:25px 40px;
}
body#top section#employee article .name {
	margin-top:5px;
	font-size:24px;
}
body#top section#employee article .message {
	float:right;
	width:500px;
	height:100%;
	padding:45px 50px;
	background-color:#EAEAEA;
}
body#top section#employee article:nth-child(2n+1) .message {
	float:left;
}
body#top section#employee article .message strong {
	display:block;
	font-size:30px;
}
body#top section#employee article .message p {
	margin-top:25px;
	padding:0px 5px;
	line-height:2;
}

body#top section#company p {
	float:left;
	width:370px;
}
body#top section#company .image {
	
}
body#top section#company table {
	margin-top:110px;
	margin-bottom:120px;
}
body#top section#company th,
body#top section#company td {
	padding:15px 60px;
	border:solid 1px #919191;
}
body#top section#company th {
	width:240px;
	font-weight:normal;
	background-color:#FFE600;
}
body#top section#company td {
	width:760px;
}
body#top section#company h2 {
	margin-bottom:0px;
}

body#top section#recruitment {
	padding-top:55px;
	padding-bottom:65px;
	text-align:center;
	color:#fff;
	background-image:url(../images/top/recruitment_back2.jpg);
	background-size:cover;
}
body#top section#recruitment h2 {
	margin-bottom:10px;
	font-size:30px;
	font-weight:normal;
	color:#fff;
}
body#top section#recruitment p {
	line-height:2;
}
body#top section#recruitment .link {
	margin-top:65px;
}
body#top section#recruitment .link a {
	position:relative;
	display:inline-block;
	width:332px;
	height:92px;
	margin:0px 50px;
	font-size:21px;
	color:#fff;
	background-image:url(../images/top/recruitment.png);
	border:solid 2px #fff;
}
body#top section#recruitment .link a:hover {
	color:#000;
}
body#top section#recruitment .link a img {
	position:absolute;
	left:0;
	top:0;
}
body#top section#recruitment .link a div {
	position:absolute;
	left:0;
	top:32px;
	width:100%;
}
body#top section#recruitment .link a:hover > img {
	animation: imgOff 0.5s 1 forwards;
}
body#top section#recruitment .link a > img {
	animation: imgOn 0.5s 1 forwards;
}


/*募集要項
---------------------------------------------------------------------------*/
body#recruitment section#movie {
	text-align:center;
}
body#recruitment section#movie a {
	display:block;
	margin-top:15px;
}

body#recruitment section#recruitment h2 {
	font-size:30px;
	font-weight:normal;
	color:#000;
}
body#recruitment section#recruitment .menu {
	font-size:21px;
	text-align:center;
}
body#recruitment section#recruitment .menu li {
	display:inline-block;
	width:170px;
	font-size:21px;
	font-weight:bold;
}
body#recruitment section#recruitment .menu a {
	color:#000;
}
body#recruitment section#recruitment .menu a:after {
	background: #000;
}
body#recruitment section#recruitment article {
	margin-top:120px;
}
body#recruitment section#recruitment article#new {
	margin-top:70px;
}
body#recruitment section#recruitment article h3 {
	height:236px;
	padding-top:60px;
	padding-left:50px;
	font-size:56px;
	color:#fff;
	text-align:left;
}
body#recruitment section#recruitment article h3 div {
	font-size:25px;
	color:#fff;
	letter-spacing:10px;
}
body#recruitment section#recruitment article#new h3 {
	background-image:url(../images/recruitment/new2.jpg);
}
body#recruitment section#recruitment article#mid h3 {
	background-image:url(../images/recruitment/mid2.jpg);
}
body#recruitment section#recruitment article th,
body#recruitment section#recruitment article td {
	padding:25px 0px;
	border:solid 1px #919191;
}
body#recruitment section#recruitment article th {
	width:240px;
	font-weight:normal;
	background-color:#E5E5E5;
}
body#recruitment section#recruitment article td {
	width:760px;
	padding-left:60px;
	line-height:2;
}

body#recruitment section#flow h2 {
	padding:21px 0px;
	font-size:26px;
	color:#fff;
	background-color:#000;
}
body#recruitment section#flow .step div {
	float:left;
	width:210px;
	height:126px;
	padding-top:50px;
	font-size:18px;
	text-align:center;
	background-color:#FFD500;
}
body#recruitment section#flow .step strong {
	display:block;
	float:right;
	width:790px;
	height:63px;
	padding-top:25px;
	padding-left:90px;
	font-weight:normal;
	background-color:#EAEAEA;
}
body#recruitment section#flow .step p {
	float:right;
	width:790px;
	padding-top:25px;
	padding-left:90px;
}
body#recruitment section#flow .arrow {
	margin:30px 0px;
	text-align:center;
}

body#recruitment section#entry h2 div {
	font-size:30px;
}

body#recruitment section#policy {
	margin-top:80px;
}
body#recruitment section#policy .inner {
	padding:45px 40px;
	border:solid 1px #979797;
}
body#recruitment section#policy h2 {
	font-size:20px;
	color:#000;
	text-align:left;
}
body#recruitment section#policy dt {
	margin-top:40px;
	font-size:17px;
	font-weight:bold;
}
body#recruitment section#policy dd {
	margin-top:15px;
	line-height:1.7;
}

form {
	padding:50px 0px 30px 0px;
	background-color:#EAEAEA;
}
form table {
	width:100%;
}
form th {
	font-weight:normal;
	text-align:left;
}
form td {
	padding:5px 0px 25px 0px;
}
form .input {
	width:100%;
}
form .policy {
}
.form_control {
	margin-top:90px;
}
.form_control a {
	display:inline-block;
	width:250px;
	padding:15.5px 0px;
	color:#000;;
	background-color:#FFD500;
}
.form_control a#back {
	color:#fff;;
	background-color:#0079B0;
}
.form_control a#send {
	color:#fff;;
	background-color:#231815;
}

body#recruitment2 form th {
	padding:25px 0px 5px 0px;
}
body#recruitment2 form td {
	margin:5px 0px 25px 0px;
	padding:11.5px 10px;
	background-color:#fff;
	border-radius:3px;
}

.you{
    margin:0 auto;
    width:500px;
    margin-top: 15px;
}

.you2{
    text-align: center;
    margin-top: 15px;
}

.you3{
    margin:0 auto;
    width:500px;
    margin-top: 15px;
    margin-bottom: 50px;
}