@charset "UTF-8";
/* CSS Document */
/*========= base ===========*/
@font-face{
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-style: normal;
	font-weight: 400;
	src:local("YuMincho");
}


html{
	font-size: 62.5%;/*16px×62.5%=10px*/
}
body{
	color: #5d5d5d;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	-webkit-font-smoothing:antiliased;
	-moz-osx-font-smoothing:grayscale;
	font-size: 1.6rem;
}
a{
	color: #5d5d5d;
}

a:hover { 
 transition: .3s;
 opacity: 0.6;
}

img{
	max-width: 100%;
	height: auto;
}

/*=========header===========*/

.header{
	width: 100%;
}

.header_all{
	display: flex;
	height: 100px;
	justify-content: space-between;
	align-items: center;
}

.name-1{
	font-size: 25px;
	margin-left: 100px;
}

.menu{
	display: flex;
}

.menu li{
	margin-right: 50px;
}

/*=========header===========*/


/*=========main===========*/
.main{
	position: relative;
}
.main_photo img{
	height: 500px;
	width: 70%;
	object-fit: cover;
	margin-left: 30%;
}

.bg1{
	background-color: #CDCDCD;
	height: 700px;
	width: 50%;
	position: absolute;
	top: -100px;
	z-index: -1;
}

.main_photo h2{
	position: absolute;
	top: 38%;
	left: 17%;
	font-size: 50px;
	background-color: rgba(255, 255, 255, 0.6);
	padding: 30px 100px;	
}

/*=========main===========*/

/*=========about===========*/

.middle{
	display: flex;
	margin-top: 250px;
	width: 100%;
    justify-content: space-between;
    align-items: center
}

.middle_photo img{
	height: 400px;
	object-fit: cover;
}

.text{
	text-align: center;
	width: 38%;
	height: auto;
	line-height: 25px;
	margin: 0 auto;
}

.about{
	font-size: 20px;
	padding: 0 0 30px;
}

.about_text{
	text-align: left;
}
/*=========about===========*/

/*=========business===========*/

.business{
	position: relative;
	margin-top: 200px;
}

.content h2{
	position: absolute;
	width: 100%;
	background-color: #cdcdcd;
	height: 250px;
	font-weight: bold;
	font-size: 20px;
	text-align: center;
	padding-top: 70px;
	z-index: -1;
}

.content_photo{
	width: 400px;
	height: 400px;
}

.title{
	font-size: 20px;
	padding-top: 20px;
}

.business_text{
	line-height: 30px;
	padding-top: 20px;
}
.business_photo{
	display: flex;
	padding: 150px 40px 0;
	justify-content: space-between;
}

/*=========business===========*/

/*=========news===========*/

.news{
	font-size: 20px;
	font-weight: bold;
	width: 100%;
	text-align: center;
	padding-top: 150px;
	padding-bottom: 50px;
}

.news_time{
	width: 70%;
	margin: 0 auto;
	padding-bottom: 100px;
}

.time_text{
	border-bottom: 1px solid #dedede;
	padding: 20px;
	text-align: center;
}

.time_text time{
	padding-right: 100px;
}

/*=========news===========*/

/*=========recruit===========*/

.recruit{
	position: relative;
}

.recruit img{
	width: 70%;
	height: 400px;
	margin-top: 70px;
}

.recruit h2{
	position: absolute;
	background: rgba(255, 255, 255, 0.6);
	top: 50%;
    left: 25%;
    padding: 30px 100px;
    font-size: 20px;
}

.bg2{
	background-color: #cdcdcd;
	width: 50%;
	height: 400px;
	z-index: -1;
	position: absolute;
    left: 50%;
	top: 0;
}
/*=========recruit===========*/

/*=========footer===========*/

.footer_company{
	display: flex;
	padding: 50px 0;
	justify-content: space-between;
	align-items: center;
}

.company{
	text-align: left;
	line-height: 25px;
	margin-left: 90px;
}
.company h2{
	font-size: 20px;
}

.overview ul{
	display: flex;
}

.overview ul li{
	margin-right: 50px
}

.XXCo{
	text-align: center;
	font-size: 0.75rem;
	margin: 0;
	line-height: 100px;
	color: #333;
	background-color: #e8e7e7;
}
/*=========footer===========*/

/*=========Company Profile===========*/

.office{
	background-image: url("../images/ali-yahya-ytNFYf4d_30-unsplash.jpg");
	width: 100%;
	height: 350px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.office h1{
	text-align: center;
	padding-top: 170px;
	color: #fff;
	font-size: 20px;
}

/*=========Company Profile===========*/

/*=========Manufacturing===========*/

.web{
	background-image: url("../images/laptop-1205256_1920.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	width: 70%;
	height: 400px;
}

.web_all{
	display: flex;
	margin-top: 200px;
}

.explanation h2{
	font-size: 20px;
	padding-bottom: 30px;
	text-align: center;
}

.web_text{
	line-height: 30px;
	text-align: left;
	padding: 0 70px;
}

/*=========Manufacturing===========*/

/*=========table===========*/

.company-profile{
	margin: 120px 0;
}

table.company_all{
	width: 100%;
	margin: 0 auto;
	border-top: 1px solid #e8e7e7;
}

table.company_all th{
	background-color: #e8e7e7;
	box-sizing: border-box;
	padding: 20px;
	width: 30%;
	text-align: left;
	border-bottom: 1px solid #fff;
}

table.company_all td{
	text-align: left;
	box-sizing: border-box;
	padding: 20px;
	border-bottom: 1px solid #e8e7e7;
	line-height: 1.5rem;
}

/*=========table===========*/

/*=========work===========*/

.work_all{
	margin-top: 150px;
	display: flex;
	position: relative;
}

.work_photo{
	width: 70%;
	height: 310px;
}

.work_photo img{
    height: 400px;
    width: 90%;
    object-fit: cover;
	margin-left: 100px;
}

.work_title{
	background-color: #fff;
	height: 350px;
	width: 50%;
	position: absolute;
	top: 170px;
    z-index: 1;
    left: 550px;
}
.work_title h2{
	font-size: 20px;
	text-align: center;
	padding: 50px 0 30px;
	font-weight: bold;
}

.work_title p{
	line-height: 1.5rem;
	padding: 0 50px;
}

.work_all_nth{
	margin: 300px 0;
	display: flex;
	position: relative;
	justify-content: flex-end
}

.work_photo_nth{
	width: 70%;
	height: 310px;
}

.work_photo_nth img{
    height: 400px;
    width: 90%;
    object-fit: cover;
}

.work_title_nth{
	background-color: #fff;
	height: 350px;
	width: 50%;
	position: absolute;
	top: 170px;
    z-index: 1;
    right: 550px;
}

.work_title_nth h2{
	font-size: 20px;
	text-align: center;
	padding: 50px 0 30px;
	font-weight: bold;
}

.work_title_nth p{
	line-height: 1.5rem;
	padding: 0 50px;
}

.work_all_tth{
	display: flex;
	position: relative;
	margin-bottom: 200px;
}

/*=========work===========*/

/*=========募集要項===========*/

.table{
	margin: 150px 0 80px;
}

table{
  width: 100%;
  border-collapse: collapse;
}

table tr{
  border-bottom: solid 2px #5d5d5d;
}

table tr:last-child{
  border-bottom: none;
}

table th{
  position: relative;
  text-align: left;
  width: 30%;
  background-color: #e8e7e7;
  padding: 20px;
}

table th:after{
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  position: absolute;
  top:calc(50% - 10px);
  right:-10px;
  border-left: 10px solid #e8e7e7;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

table td{
  text-align: left;
  width: 70%;
  background-color: #eee;
  padding: 20px;
}

/*=========募集要項===========*/

/*=========contact===========*/

.name{
	margin-left: 0;
}
.form {
  margin: 80px 0;
}
.form dl {
  display: flex;
  padding: 20px 0;
  border-bottom: 1px dotted #676767;
}
.form dl:first-of-type {
  border-top: 1px dotted #676767;
}
.form dt {
  width: 300px;
  box-sizing: border-box;
  padding: 20px 0 20px 10px;
  line-height: 1em;
  font-size: 16px;
}
.form dd {
  width: calc(100% - 300px);
  box-sizing: border-box;
}
.form dd input,
.form dd select,
.form dd textarea {
  font-size: 1rem;
  color: #777;
  border: 1px solid #555;
  background-color: #f5f5f5;
  box-sizing: border-box;
}
.form dd input,
.form dd select {
  line-height: 60px;
  height: 60px;	
  padding: 0 20px;
}
.form dd textarea {
  height: 140px;
  line-height: 2em;
  padding: 20px;
}
.form dl.name dd {
  padding: 0 0 0 25px;
}
.form dl.name dd span {
  margin: 0 20px 0 0;
  font-size: 16px;
}
.form dl.name dd input {
  width: 350px;
}
.form dl.name dd input:first-of-type {
  margin: 0 50px 0 0;
}
.form dl.furigana dd {
  padding: 0 0 0 10px;
}
.form dl.furigana dd span {
  margin: 0 20px 0 0;
}
.form dl.furigana dd input {
  width: 350px;
}
.form dl.furigana dd input:first-of-type {
  margin: 0 30px 0 0;
}
.form dl.mail dd input {
  width: calc(100% - 20px);
}
.form dl.tel dd input {
  width: 200px;
}
.form dl.tel dd span {
  margin: 0 20px;
}
.form dl.zip dd input {
  width: 200px;
}
.form dl.zip dd span {
  margin: 0 20px;
}
.form dl.pref dd select {
  width: 200px;
}
.form dl.address dd input {
  width: calc(100% - 20px);
}
.form dl.multi-text dd textarea {
  width: calc(100% - 20px);
}
.form .form-button {
  display: flex;
  justify-content: center;
  margin: 50px auto 0 auto;
}
.form .form-button input {
  display: block;
  width: 250px;
  line-height: 50px;
  text-align: center;
  color: #fff;
  background-color: #353535;
  border: 1px solid #353535;
  margin: 0 15px;
  cursor: pointer;
  transition: .3s ease all;
}
.form .form-button input:hover {
  background-color: transparent;
  color: #444;
  transition: .3s ease all;
}


/*=========contact===========*/