@charset "utf-8";
/* CSS Document */


#main{
	width: 100%;
  position: relative;
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
}

#main_inner{
	width: 100%;
	overflow: hidden;
}


#first{
    width: 1200px;
    padding: 40px 0 120px;
	margin: 0 auto;
	position: relative;
    overflow-y: hidden;
}

#first p{
	width: 520px;
	margin: 0 auto;
	text-align: left;
	line-height: 4;
	font-weight: 600;
	margin-bottom: 70px;
}

#first p:last-of-type{
	margin-bottom: 0;
}

#first p span{
	font-size: 25px;
	letter-spacing: 0.3em;
	font-weight: 800;
}


#service{
	width: 100%;
    height: 400px;
    background: url(../images/top/service_bg_01_pc.jpg) no-repeat top center;
    background-size: cover;
}

#service ul{
    display: table;
    padding: 125px 0 0;
    box-sizing: border-box;
    margin: 0 auto;
}

#service li{
    background: url(../images/top/service_btn_01_pc.png) no-repeat top center;
    background-size: cover;
    display: inline-block;
		letter-spacing: 0.2em;
		font-size: 33px;
		line-height: 1;
		font-weight: 600;
}

#service li:first-child{
	margin-right: 80px;
}

#service li span{
	font-size: 16px;
	font-weight: 900;
    letter-spacing: 0.1em;
}

#service li a{
	width: 400px;
    height: 150px;
	display: block;
	color: #000;
    padding: 40px 0;
    box-sizing: border-box;
}


#service li:hover{
    background-color: rgba(255,255,255,0.5);
}

h2{
	line-height: 0.8;
	font-weight: 600;
	margin-bottom: 60px;
	font-size: 40px;
	letter-spacing: 0.2em;
}


#interview h2 ,#special h2{
	letter-spacing: 0.1em;
}

h2 span {
    font-family: "メイリオ", sans-serif;
    letter-spacing: 0.3em;
    font-size: 20px;
}

.coming_tt{
    font-family: "メイリオ", sans-serif;
    font-weight: 900;
    letter-spacing: 0.1em;
    font-size: 25px;
    line-height: 1.3;
}

#interview,#special{
	background-color: #000000;
	color: #fff;
	padding: 80px 0;
}



#workplace{
	background-color: #bebebe;
	padding: 80px 0;
}

#workplace .naname_btn{
	max-width: 400px;
	display: inline-block;
	vertical-align: middle;
}

#workplace .naname_btn.naname_btn_last{
	margin-left: 30px;
}

.naname_btn_column{
	margin: 80px auto 0;
}

#workplace .naname_btn p{
	width: 400px;
	letter-spacing: -0.01em;
}

#careers{
    background: url(../images/top/careers_bg_01_pc.jpg) no-repeat center 85%;
    background-size: cover;
    padding: 80px 0;
}

.naname_btn_gray{
	margin-bottom: 30px;
}



#first_img_01{
    position: absolute;
    top: 57px;
    right: 120px;
	z-index: 1;
}

#first_img_02{
	position: absolute;
	top: 484px;
	left: -20px;
	z-index: 1;
}

#first_img_03{
    position: absolute;
    bottom: 180px;
    right: 10px;
	z-index: 1;
}

#bg_01{
    position: absolute;
    top: 21px;
    right: 30px;
	z-index: -1;
}

#bg_02{
    position: absolute;
    top: 243px;
    right: 30px;
	z-index: -1;
}

#bg_03{
	position: absolute;
    top: 0;
    right: 30px;
	z-index: -1;
}







.loopSliderWrap_pc {
    top: 0;
    left: 0;
    height: 350px;
    overflow: hidden;
    position: absolute;
}

.loopSlider_pc {
	margin: 80px auto 0;
    width: 100%;
    height: 350px;
    text-align: left;
    position: relative;
    overflow: hidden;
}

.loopSlider_pc ul {
    width: 100%;
    height: 350px;
    float: left;
    overflow: hidden;
}

.loopSlider_pc ul li {
    width: 260px;
    height: 350px;
    float: left;
    display: inline;
    overflow: hidden;
	margin-right: 20px;
}

.loopSliderWrap_pc:after {
    content: "";
    display: none;
    clear: none;
}

.naname_btn.naname_btn_white{
	background-color: #fff;
	margin-top: 50px;
}

.naname_btn.naname_btn_white{
	max-width: 400px;
}

.naname_btn.naname_btn_white p{
	width: 400px;
}

.naname_btn.naname_btn_white a{
	color: #000;
  padding: 15px 0px;
	font-weight: 500;
}

.naname_btn.naname_btn_white:before{
	content:"";
    position: absolute;
    top: 23px;
    right: 30px;
    width: 8px;
	height: 15px;
	transform: skewX(35deg);
	background:url(../images/naname_white_btn_arrow_white_pc.png) no-repeat top center;
	background-size:cover;
}

.naname_txt {
	color: #fff;
    font-size: 18px;
    background-color: #000;
    display: inline-block;
    position: relative;
    vertical-align: bottom;
    box-sizing: border-box;
    text-align: center;
}

.naname_txt p {
    transform: scaleY(1) perspective(.37em) rotateX(1.5deg);
    transform-origin: bottom left;
    line-height: normal;
}



#movie{

	    height: 100%;
	    overflow: hidden;
}

#movie video{
	position: absolute;
	    left: 50%;
	        top: 0;
	    transform: translate(-50%, 0);
	    width: 100%;
	    height: auto;
}

#movie .naname_btn.naname_btn_white {
    max-width: 400px;
    position: absolute;
    bottom: 6%;
    margin-top: 0;
    right: 5%;
}

#movie .naname_txt.pc_only{
    display: inline-block;
    display: inline-block;
    width: auto;
    background-color: transparent;
}

#movie .naname_txt.sp_only{
	display: none;
}


.movie_list{
    display: table;
    margin: 75px auto 0;
}


.movie_list iframe{
	display: inline-block;
    vertical-align: bottom;
}

.special_txt{
	font-size: 30px;
	font-weight: bold;
	margin: 40px auto;
}

.naname_txt_outer{
transform:translate3d(0,0,0);
}

.special_img_01 a img:hover{
	opacity: 0.8;

}

@media screen and (max-width: 768px) {

#content {
    padding: 0;
}

#main{
	height: auto;
	margin-top: 0;
	padding-bottom: 0;
}

#movie {
    margin-top: 0;
		position: relative;
    width: 100%;
    padding-top: 100%;
		overflow: hidden;
}

#movie video {
	position: absolute;
	top: 0;
	left: 50%;
	width: auto;
	transform: translate(-50%, 0);
	height: 100% !important;
}

#movie .naname_btn.naname_btn_white {
    right: -10px;
		width: 54%;
		max-width: 300px;
}

#movie .naname_btn.naname_btn_white a {
    padding: 5px 0px;
}

#movie .naname_btn.naname_btn_white:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    width: 6px;
    transform: translate(0, -50%) skew(35deg);
    height: 12px;
}

#first,#first p{
	width: 100%;
}

#first {
    margin: 0 auto;
    padding: 7% 0 49%;
}

#first p{
    width: 82%;
    font-size: 12px;
    line-height: 2.8;
    letter-spacing: -0.01em;
    margin-bottom: 5%;
}

#first p.first_txt{
    margin-top: 2%;
}

#first p:last-of-type{
    margin-bottom: 0;
}

#first p span {
    line-height: 1.4;
	font-size: 20px;
}

.first_tt_img{
    width: 82%;
}

.first_tt_img img{
    width: 93.66%;
}

#service {
    height: auto;
}

#service li {
    width: 40%;
    font-size: 20px;
	background: url(../images/top/service_btn_01_pc.png) no-repeat top right;
    background-size: cover;
}

#service li span {
    font-size: 12px;
}

#service li a {
    width: 100%;
    height: auto;
    padding: 20% 0;
}

#service ul {
    padding: 8% 0;
    display: flex;
    justify-content: center;
}

#service li:first-child {
    margin-right: 5%;
}

h2 {
    margin-bottom: 6%;
		line-height: 1;
    font-size: 20px;
}

h2 span {
    font-size: 12px;
}

#interview, #special {
    background-color: #000000;
    color: #fff;
}

#interview, #special,#workplace,#careers{
    padding: 8% 0;

}

#interview p.coming_tt,#workplace p.coming_tt,#special p.coming_tt {
    font-size: 14px;
}

#interview p,#special p,#workplace p{
	font-size: 12px;
}

#interview p{
    letter-spacing: 0.1em;
}

.naname_btn_gray {
    margin-bottom: 3%;
}

#first_img_01 {
    position: absolute;
    top: 17%;
    right: 0;
    z-index: 1;
    width: 31.334%;
}

#first_img_02 {
    position: absolute;
    top: auto;
    bottom: 7%;
    left: 0;
    z-index: 1;
    width: 38.934%;
}

#first_img_03 {
    position: absolute;
    bottom: 38%;
    right: 0;
    z-index: 1;
    width: 32%;
}

#bg_01,#bg_02,#bg_03{
	width: 100%;
	top: 0;
	left: 0;
    z-index: -1;
}








.loopSliderWrap_sp {
    top: 0;
    left: 0;
    height: 250px;
    position: absolute;
}

.loopSlider_sp {
	margin: 10% auto 0;
    width: 100%;
    height: 250px;
    text-align: left;
	overflow: hidden;
    position: relative;
}

.loopSlider_sp ul {
    width: 100%;
    height: 250px;
    float: left;
	overflow: hidden;
}

.loopSlider_sp ul li {
    float: left;
    display: inline-block;
    width: auto;
    height:250px;
    margin-right: 2%;
}

.loopSlider_sp ul li img{
    width: auto;
    height: 250px;
}
.loopSliderWrap_sp:after {
    content: "";
    display: none;
    clear: none;
}



#workplace,#special{
	padding: 8% 6.667%;
}


.movie_list {
    position: relative;
    width: 100%;
    margin: 10% auto 0;
    padding-top: 50.25%;
}

.movie_list iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}


.naname_btn.naname_btn_white {
    max-width: 100%;
    width: 64%;
}

.naname_btn.naname_btn_white p {
    width: 100%;
}

#workplace .naname_btn {
	max-width: 100%;
    display: block;
    width: 85%;
}

#workplace .naname_btn:before {
    content: "";
    position: absolute;
    top: 19px;
    right: 5%;
}

#workplace .naname_btn p {
    width: 100%;
}

#workplace .naname_btn.naname_btn_last {
    margin-left: auto;
    margin-top: 5%;
}

.naname_btn.naname_btn_white:before {
    content: "";
    position: absolute;
    top: 20px;
    right: 13px;
    width: 6px;
    height: 12px;
}

.naname_btn_column {
    margin: 6% auto 0;
}

#special .special_txt{
    font-size: 14px;
}

#movie .naname_txt.pc_only{
	display: none;
}

#movie .naname_txt.sp_only{
    display: block;
    margin-top: 0;
    width: 100%;
    transform: none;
    font-size: 14px;
}

.naname_txt p {
    transform: none;
    padding: 2% 0;
}

}


@media screen and (max-width: 320px) {

#first p {
    font-size: 11px;
}

#first_img_03 {
    bottom: 32%;
}
}
