/*!
Theme Name: gf-corp
Theme URI: https://goodfriends.co.jp/
Author: MESA
Author URI: https://mesas-design.com/
Description: for "gf corp site" wordpress theme.
Version: 1.0
	
*/

html{
	font-size:62.5%;
	font-family:"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic","ヒラギノ角ゴ ProN W4","Hiragino Kaku Gothic ProN","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	line-height:1.8;
	-webkit-text-size-adjust:100%;
	overflow-x: hidden;
}

body{
	position:relative;
}

p,a,li,td,th,div,figure,figcaption{
	font-size:1.6rem;
	font-weight:500;
}

p{
	color:#343434;
}

img{
	max-width:100%;
	vertical-align: bottom;
}


header#header{
	width:100%;
	background:none;
	height:100px;
	position:absolute;
	z-index:1000;
	top:0;
	left:0;
}

.logoContainer{
	width:92%;
	margin:0 auto;
	height:100px;
	display:flex;
	align-items: center;
	/* justify-content: flex-end; */
	justify-content: flex-start;
}

.logoContainer > a{
	width:260px;
}

.firstView{
	background:center / cover no-repeat url(img/img_fv.jpg);
	width:100%;
	height:100%;
	min-height:100vh;
	position:relative;
}

.firstView:before{
	position:absolute;
	content:"";
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,.3);
	top:0;
	left:0;
}

.fvInner{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

#catchCopy{
	position:absolute;
	width:50vw;
	height:6.59vw;
	right:11.57vw;
	bottom:7.69vw;
	/* margin:auto; */
}

#scroll{
	position:absolute;
	width:2.27vw;
	height:14.49vw;
	left:11.57vw;
	bottom:0;
	/* margin:auto; */
}

.commonSection{
	width:92%;
	margin:0 auto;
	padding:36px 14px 36px;
}

.titleSet{
	width:100%;
	position:relative;
	display:flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.titleSet h2{
	font-size:1.8rem;
	font-weight:600;
	width:50%;
	text-align: right;
	padding-bottom:34px;
}

.titleSet p{
	font-size:2.8rem;
	font-weight:600;
	width:50%;
	padding-bottom:34px;
}

p.content{
	font-size:1.6rem;
	font-weight:500;
	width:100%;
	padding:0;
}

span.line{
	display:block;
	position:absolute;
	width:106%;
	left:-6%;
	height:2px;
	top:52px;
	background:#DFDFDF;
}

.centerList{
	width:100%;
	background:center / cover no-repeat url(img/img_list.jpg);
	position:relative;
}

.centerList li:before{
	position:absolute;
	content:"";
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,.3);
	top:0;
	left:0;
}

.centerList li{
	width:100%;
	height:220px;
	position:relative;
}
.centerList li a,.centerList li > div{
	position:absolute;
	top:0;
	left:0;
	margin:auto;
	display:flex;
	justify-content: center;
	align-items: center;
	flex-wrap:wrap;
	flex-direction:column;
	width:100%;
	height:100%;
	text-decoration:none;
}

.centerList li a img,.centerList li > div img{
	width:50%;
	max-width:380px;
}

.more{
	width:50%;
	max-width:380px;
	text-align:right;
	color:#fff;
	position:relative;
}

.more:after{
	position:absolute;
	content:"";
	width:26px;
	height:6px;
	background:center / contain no-repeat url(img/arrow.png);
	top:0;
	bottom:0;
	right:-30px;
	margin:auto;
}

.titleSet img{
	width:92%;
	max-width:886px;
	display:block;
	margin:32px auto;
}

.afterContents{
	width:100%;
	background:#F3F3F3;
}

.afterContents .inner{
	width:92%;
	max-width:1200px;
	margin:0 auto;
	display:flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap:wrap;
	padding:32px 16px;
}

.acLinks{
	/* width:48%;
	height:380px; */
	width:32%;
	height:280px;
	position:relative;
}

.acLinks:nth-of-type(1){
	/* background:center / cover no-repeat url(img/img_recruit.jpg); */
	/* background:center / cover no-repeat url(img/img_recruit2.jpg); */
	background:center / cover no-repeat url(img/img_company2.jpg);
}

.acLinks:nth-of-type(2){
	/* background:center / cover no-repeat url(img/img_company.jpg); */
	background:center / cover no-repeat url(img/img_recruit3.jpg);
}

.acLinks:nth-of-type(3){
	/* background:center / cover no-repeat url(img/img_company.jpg); */
	background:center / cover no-repeat url(img/img_recruit4.jpg);
}

.acLinks a{
	position:absolute;
	top:0;
	left:0;
	margin:auto;
	display:flex;
	justify-content: center;
	align-items: center;
	flex-wrap:wrap;
	flex-direction:column;
	width:100%;
	height:100%;
	text-decoration:none;
	background-color:rgba(0,0,0,.6);
	transition:all .3s ease;
}

.acLinks a:hover{
	background-color:rgba(0,0,0,.3);
}

.acLinks a *{
	color:#fff;
}

.acLinks h2{
	text-align:center;
	font-size:20px;
}

.acLinks .more{
	position:absolute;
	bottom:32px;
	right:64px;
}

footer#footer{
	background:#F3F3F3;
	text-align: center;
	padding-top:16px;
}

#footer img{
	width:240px;
	display:block;
	margin:0 auto 32px;
}

#catchCopySp{
	display:none;
}

header#header.childPageHeader{
	background:#fff;
	box-shadow:0 3px 10px rgba(0,0,0,.16);
	position:static;
	z-index:10;
}

header#header.childPageHeader .logoContainer{
	width:100%;
	justify-content: center;
}

.pageHeadView{
	width:94%;
	margin-right:0;
	margin-left:auto;
}

.phvInnder{
	background:center / cover no-repeat url(img/img_company_header.jpg);
	width:100%;
	height:384px;
}

.companyCol2{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	display:flex;
}

.col2Child{
	width:48%;
	margin:0 auto;
}

.col2Child table{
	width:100%;
	display:block;
}

.col2Child table tbody{
	width:100%;
}

.col2Child table tr{
	width:100%;
	display:block;
}

.col2Child table td{
	width:100%;
	display:block;
	/* font-size:1.8rem; */
	font-size:1.6rem;
	font-weight:500;
	position:relative;
	padding:12px;
	text-align: left;
}

.col2Child table td:after{
	position:absolute;
	content:"";
	width:50%;
	height:2px;
	background:#DFDFDF;
	left:0;
	bottom:0;
	margin:auto;
}

.col2Child table th{
	width:100%;
	display:block;
	/* font-size:1.8rem; */
	font-size:1.6rem;
	font-weight:600;
	padding:12px;
	text-align: left;
}

.col2Child table th a{
	font-weight:600;
	color:#282828;
	/* font-size:1.8rem; */
	font-size:1.6rem;
}

.col2Child iframe{
	width:100%;
	height:77rem;
}



@media(max-width:768px){
	#catchCopy{
		right:6.57vw;
	}
	.companyCol2{
		flex-wrap: wrap;
	}
	.col2Child{
		width:100%;
	}
	.companyCol2{
		margin-top:-16px;

	}
	.col2Child{
		padding-bottom:32px;
	}
	.acLinks{
		width:100%;
		height:262px;
	}
	.acLinks{
		margin-bottom:14px;
	}
}

@media(max-width:480px){
	#catchCopy{
		display:none;
	}
	#catchCopySp{
		display:block;
		position:absolute;
		width:80vw;
		bottom:19%;
		left:16px;
	}
	#scroll{
		width:31px;
		height:198px;
		right:16px;
		bottom:0;
		left:auto;
		left:initial;
	}
	header#header{
		height:72px;
	}
	.logoContainer{
		height:72px;
		justify-content: flex-start;
		width:calc(100% - 14px);
		margin-left:14px;
	}
	.titleSet{
		display:block;
	}
	.titleSet p{
		text-align:center;
		padding:0;
		text-align: center;
		width:100%;
		font-size:3rem;
	}
	.titleSet h2{
		text-align:center;
		padding:0;
		text-align: center;
		width:100%;
		font-size:1.6rem;
		padding-top:4px;
		margin-bottom:16px;
	}
	p.content{
		text-align:left;
		font-size:1.5rem;
	}
	span.line{
		width:40%;
		left:0;
		right:0;
		top:42px;
		margin:auto;
	}
	.commonSection{
		width:100%;
	}
	.centerList li a img,.centerList li > div img{
		max-width:none;
		width:80%;
	}
	.afterContents .inner{
		flex-wrap: wrap;
	}
	/* .acLinks{
		width:100%;
		height:262px;
	}
	.acLinks:nth-of-type(1){
		margin-bottom:14px;
	} */
	.afterContents .inner{
		width:100%;
	}
	#footer p{
		font-size:1.2rem;
		padding-bottom:1.2rem;
	}
	.centerList{
		background-position-x: 70%;
	}
	header#header.childPageHeader .logoContainer{
		width:100%;
		margin-left:0;
	}
	header#header.childPageHeader .logoContainer a{
		/* height:50px; */
		height:30px;
	}
	header#header.childPageHeader .logoContainer a img{
		width:auto;
		/* height:50px; */
		height:30px;
	}
	.pageHeadView{
		width:100%;
		height:180px;
	}
	.phvInnder{
		width:100%;
		height:180px;
	}
	.companyCol2{
		margin-top: -40px;
	}
	.col2Child table th{
		font-size:1.6rem;
		padding:12px 0;
	}
	.col2Child table td{
		font-size:1.6rem;
		padding:12px 0;
	}
	.col2Child iframe{
		height:320px;
	}
	.logoContainer a{
		display:block;
		height:50px;
		width:auto;
	}
	.logoContainer a img{
		display:block;
		height:30px;
		width:auto;
	}
}


.centerList li > img{
	position:absolute;
	width:100%;
	height:100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE対策*/
}

#gf > img{
	opacity:0;
	transition:all .3s ease;
}

#gf.active > img{
	opacity:1;
}

#pg > img{
	opacity:0;
	transition:all .3s ease;
}

#pg.active > img{
	opacity:1;
}

#uni > img{
	opacity:0;
	transition:all .3s ease;
}

#uni.active > img{
	opacity:1;
}

#poppy > img{
	opacity:0;
	transition:all .3s ease;
	object-position: center 84%;
}

#poppy.active > img{
	opacity:1;
	object-position: center 84%;
}

#leperi > img{
	opacity:0;
	transition:all .3s ease;
	object-position: center 84%;
}

#leperi.active > img{
	opacity:1;
	object-position: center 84%;
}

.firstView{
	background:center / cover no-repeat url(img/bg02.jpg);
	width:100%;
	height:100%;
	min-height:100vh;
	position:relative;
}

@media(max-width:480px){
	.firstView{
		background:center / cover no-repeat url(img/bg03.jpg);
		width:100%;
		height:100%;
		min-height:100vh;
		position:relative;
	}
}

.fixSns{
	display:block;
	background:none;
	position:fixed;
	top:8px;
	right:8px;
	z-index:9999;
}

.fixSns.child{
	top:16px;
}

.fixSns > a{
	display:inline-block;
	width:32px;
	height:auto;
	margin-left:6px;
	box-shadow:0 3px 6px rgba(0,0,0,.16);
	border-radius:100px;
}

.fixSns > a > img{
	width:100%;
	height:100%;
}

.footerSns{
	width:100%;
	margin:0 auto 16px;
	display:flex;
	justify-content: center;
	align-items: center;
}

.footerSns > a{
	display:block;
	width:42px;
	margin:0 3px;
	height:auto;
}

#footer .footerSns > a > img{
	width:100%;
	margin:0 !important;
}

@media(min-width:480px){
	.fixSns{
		top: 26px;
    	right: 16px;
	}
	.fixSns > a{
		width:42px;
	}
	.logoContainer > a{
		text-align:center;
	}
	.fixSns.child{
		top:26px;
	}
}

/* @media(min-width:768px){
	.fixSns{
		top:0;
		bottom:0;
		margin:auto;
		height:138px;
	}
	.fixSns > a{
		display:block;
		margin:0 0 12px;
	}
} */

@media(max-width:480px){
	header#header.childPageHeader .logoContainer{
		justify-content: flex-start;
		padding-left:16px;
	}
}

/* p#leperi_text{
	text-align:center;
	color:#fff;
	font-weight:600;
	font-size:2.2rem;
}

p#leperi_text > span{
	font-size:4.2rem;
}

@media(max-width:480px){
	p#leperi_text{
		font-size:1.6rem;
	}
	p#leperi_text > span{
		font-size:3rem;
	}
} */

/* #newseum > div > p:not([class]){
	color:#fff;
	font-size:24px;
	font-weight:600;
	text-align:center;
	margin-bottom:12px;
}

@media(max-width:480px){
	#newseum > div > p:not([class]){
		font-size:20px;

	}
} */