@charset "UTF-8";

/*----------------------------------------

	- content
	- pc（1281px〜）
	- sp（〜640px）

-----------------------------------------*/

/*----------------------------------------
	header
-----------------------------------------*/

header {
  background: none;
  background: url(/recruit/fresh/common/img/common_overlay01.png) repeat left top;
}

/*
header ul#header_r01 li:nth-child(3) a:link,
header ul#header_r01 li:nth-child(3) a:visited {
  background: url(/recruit/fresh/common/img/common_bg01.png) no-repeat left bottom;
}

header ul#header_r01 li:nth-child(3) ul li a:link,
header ul#header_r01 li:nth-child(3) ul li a:visited,
header ul#header_r01 li ul li:nth-child(3) a:link,
header ul#header_r01 li ul li:nth-child(3) a:visited {
  background: url(/recruit/fresh/common/img/common_overlay01.png) repeat left top;
}
*/

/*----------------------------------------
	main
-----------------------------------------*/

#main {
  position: relative;
  z-index: 0;
}

#main .text_box {
  width: 760px;
  position: absolute;
  z-index: 2;
  left: 40px;
  bottom: 40px;
}

#main p {
  width: 248px;
  position: absolute;
  z-index: 1;
  right: 60px;
  bottom: 25px;
}

/*----------------------------------------
	info
-----------------------------------------*/

#info {
  padding: 70px 0;
  border-top: solid 8px #ffffff;
  border-bottom: solid 8px #ffffff;
  background: #e8e8e8;
}

#info h3 {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.0;
  text-align: center;
}

#info table {
  display: block;
  width: 800px;
  margin: 0 auto;
  margin-top: 38px;
}

#info table th {
  width: 135px;
  padding: 18px 20px 17px 25px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #4b4b4b;
  background: #ffffff;
  border-bottom: solid 2px #e8e8e8;
  box-sizing: border-box;
}

#info table td {
  width: 665px;
  padding: 18px 25px 17px 0;
  font-size: 16px;
  font-size: 1.6rem;
  background: #ffffff;
  border-bottom: solid 2px #e8e8e8;
  box-sizing: border-box;
}

/*----------------------------------------
	content
-----------------------------------------*/

#content ul li {
  display: block;
  float: left;
  position: relative;
  z-index: 0;
  overflow: hidden;
}

#content ul li span.img01 {
  display: block;
  width: 100%;
  position: relative;
  z-index: 1;
  text-align: center;
}

#content ul li span.img01 img {
  width: 636px;
}

#content ul li:nth-child(odd) {
  width: 50%;
  border-bottom: solid 8px #ffffff;
  border-right: solid 4px #ffffff;
  box-sizing: border-box;
}

#content ul li:nth-child(even) {
  width: 50%;
  border-bottom: solid 8px #ffffff;
  border-left: solid 4px #ffffff;
  box-sizing: border-box;
}

#content ul li span.img02 {
  display: block;
  width: 100%;
  position: absolute;
  z-index: 0;
  left: 0;
  top: 0;
}

#content ul li span.img02 img {
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -ms-transition: 0.5s;
  transition: 0.5s;
}

#content ul li:hover span.img02 img {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}

/*----------------------------------------
	pc（1281px〜）
-----------------------------------------*/
@media only screen and (min-width: 1281px) {
/*----------------------------------------
	content
-----------------------------------------*/

}

/*----------------------------------------
	sp（〜640px）
-----------------------------------------*/
@media only screen and (max-width: 640px) {

/*----------------------------------------
	header
-----------------------------------------*/

header {
  background: #ffffff;
}

/*----------------------------------------
	main
-----------------------------------------*/

#main {
  padding-top: 80px;
}

/* #main h2 { */
#main .text_box {
  width: 90%;
  left: 5%;
  bottom: 5%;
}

#main p {
  width: 45%;
  right: 5%;
  bottom: 22%;
}

/*----------------------------------------
	info
-----------------------------------------*/

#info {
  padding: 10% 0;
  border-top: solid 4px #ffffff;
  border-bottom: solid 4px #ffffff;
}

#info h3 {
  font-size: 18px;
  font-size: 1.8rem;
}

#info table {
  width: 100%;
  margin: 0 auto;
  margin-top: 5%;
}

#info table th,
#info table td {
  display: block;
  width: 100%;
  padding: 10px 15px 0;
  font-size: 14px;
  font-size: 1.4rem;
  box-sizing: border-box;
  border-bottom: none;
  text-align: left;
}

#info table td {
  padding: 5px 15px 10px;
  border-bottom: solid 2px #e8e8e8;
}

#info table td br {
  display: none;
}

#info table td .show {
  display: block;
}

/*----------------------------------------
	content
-----------------------------------------*/

#content ul li {
  float: none;
}

#content ul li span.img01 img {
  width: 75%;
  padding: 10% 0;
}

#content ul li:nth-child(odd),
#content ul li:nth-child(even) {
  width: 100%;
  border-bottom: solid 4px #ffffff;
  border-right: none;
  border-left: none;
}

#content ul li:last-child {
  border-bottom: none;
}
}


/*----------------------------------------
	KYB 360°VIRTUAL TOUR
-----------------------------------------*/
.virtual {
  max-width: 1100px;
  height: 300px;
  margin: 90px auto 0 auto;
  overflow: hidden;
}

@media only screen and (max-width: 640px) {
  .virtual {
    margin: 30px auto 0 auto;
  }
}

.virtual a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}

.virtual .text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

.virtual .text img {
  display: block;
  margin: 0 auto;
}

@media only screen and (max-width: 640px) {
  .virtual .text img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 348px;
  }
}

.virtual a .bg {
  transition: 0.5s;
}

@media only screen and (max-width: 640px) {
  .virtual a .bg {
    object-fit: cover;
    height: 100%;
  }
}

.virtual a:hover .bg  {
  transform: scale(1.1);
}