
/* ヘッダー
------------------------ */
header{
	width:100%;
	height:100px;
	border-top:solid 1px #f6f6f6;
	border-bottom:solid 1px #f6f6f6;
	background:url(../img/common/header_bg.gif) no-repeat left center;
	vertical-align:middle;
	position:relative;
	background:#fff;
}

#recruit header {
height:auto;
}

header h1{
	position:absolute;
	top:20px;
	left:30px;

}

header .sp{
	display:none;
}


@media screen and (max-width:1280px) {		/*タブレット用CSS*/
header{
	width:auto;
	height:auto;
  	position:static;
}

header h1{
  position:static;
  width:100%;
  text-align:center;
  margin:15px 0;
}

header h1 img{
	max-width:40%;
	margin:0 15px 0 0;
}

header .sp{
	display:inherit;
}

}

@media screen and (max-width:768px) {		/*スマホ用CSS*/
header h1 img{
	max-width:96%;
}
}

/* メイン画像
------------------------ */

#main{
	background:url(../img/common/main_bg.jpg);
	background-size:100%;
    padding-top: 31.09%;	/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
	position:relative;
}

#main h2{
	position:absolute;
	left:0;
	right:0;
	bottom:-115px;
	margin:0 auto;
	z-index:10;
	text-align:center;
	line-height:225%;
	font-size:30px;
}

#main h2 span{
	font-size:64px;
	color:#7da6da;
	background: -webkit-linear-gradient(0deg,#7d7dc5, #7dbee6);
	 -webkit-background-clip: text;
	 -webkit-text-fill-color: transparent;
	 font-weight:bold;
	filter: drop-shadow(2px 2px 2px rgba(0,0,0,0.3));
}

#main h2 span::after{
			content: "\A" ;
			white-space: pre ;
}

#contents{
	width:100%;
	padding-bottom:30px;
}

.inner1280{
	width:1280px;
	margin:0 auto;
}

.inner100{
	width:100%;
}

.main_bg{
	margin-bottom:80px;
	padding:150px 0 30px;
	background-color:#FFF;
	filter: drop-shadow(3px 3px 3px rgba(0,0,0,0.4));
}

@media screen and (max-width:1280px) {		/*タブレット用CSS*/
.inner1280{
	width:100%;
	margin:0 auto;
}

.inner100{
	width:90%;
	margin:0 5%;
}
}

@media screen and (max-width:768px) {		/*スマホ用CSS*/
#main h2{
	width:100%;
	bottom:-65px;
	line-height:150%;
	font-size:24px;
}

#main h2 span{
	font-size:38px;
}

#main h2.line2{
	font-size:18px;
	bottom:-45px;
	line-height:120%;
}

#main h2.line2 span{
	font-size:28px;
	 -webkit-text-fill-color:#7d89cb;
	 line-height:120%;
}

.main_bg{
	padding:100px 0 30px;
	background-color:#FFF;
	filter:none;
}

#main h2 .break::after{
		content: "\A" ;
		white-space: pre ;
}
}

/* フッター
------------------------ */

#pagetop a{
	text-align:center;
	display:block;
	padding:40px 0;
}

footer #f-menu{
	background-color:#2d2f33;
	padding:40px 0 55px;
}

footer #f-menu ul{
	width:50%;
	float:left;
}

footer #f-menu li{
	margin-bottom:20px;
}

footer #f-menu li a{
	color:#7da6da;
	font-size:18px;
	background: -webkit-linear-gradient(0deg,#7d7dc5, #7dbee6);
	 -webkit-background-clip: text;
	 -webkit-text-fill-color: transparent;
	 font-weight:bold;
}

footer #f-menu li a:hover{
	 -webkit-text-fill-color: white;
}

footer #f-menu #information{
	width:375px;
	float:right;
	text-align:right;
	font-size:18px;
	color:#FFF;
}

footer #f-menu #information a{
	color:#FFFFFF;
}

footer #f-menu #information span{
	font-size:14px;
	line-height:160%;
	padding:20px 0;
}


footer #f-menu #information .bnr{
	margin-top:60px;
	text-align:center;
	float:left;
}

footer #f-menu #information .bnr:nth-of-type(1){
	margin-right:15px;
}

footer #f-menu #information .bnr a{
	display:block;
	width:180px;
	height:50px;
	color:#FFF;
	font-weight:bold;
	padding:8px 20px;
	box-sizing:border-box;
	text-align:center;
	background: linear-gradient(90deg, #7d7dc5, #7dbee6);
}

footer #f-menu #information .bnr a:hover{
	color:#313131;
	text-decoration:none;
}

footer #copyright{
	font-size:18px;
	background: linear-gradient(90deg, #7d7dc5, #7dbee6);
	text-align:center;
	color:#FFF;
	padding:30px 0;
}



@media screen and (max-width:768px) {		/*スマホ用CSS*/
#pagetop a{
	padding:20px 0;
}

footer #f-menu ul{
	width:100%;
	float:none;
}

footer #f-menu #information{
	width:100%;
	float:none;
	text-align:left;
	font-size:18px;
	color:#FFF;
}

footer #f-menu #information .bnr{
	width:49%;
	margin-top:20px;
	text-align:center;
	float:left;
}

footer #f-menu #information .bnr a{
	width:100%;
	padding:18px 20px;
}

footer #f-menu #information .bnr:nth-of-type(1){
	margin-right:2%;
}

footer #copyright{
	font-size:14px;

}
}

/* その他
------------------------ */

/*グラデ背景白文字*/
.btn{
	background: linear-gradient(90deg, #7d7dc5, #7dbee6);
	text-align:center;
	font-weight:bold;
	margin-top:70px;
}

.btn a{
	display:block;
	font-size:20px;
	padding:20px 0;
	color:#FFF;
}


/*グラデborder白背景*/
.btn2{
	margin:40px 0 0;
	background: linear-gradient(90deg, #7d7dc5, #7dbee6);
	padding:4px;
	font-size:18px;
	font-weight:900;
	text-align:center;
}

.btn2 a{
	display:block;
	background-color:#FFF;
	padding:25px 50px;
	box-sizing:border-box;
}

.btn2 a:hover{
	text-decoration:none;
}

.disnon {
display:none;
}

@media screen and (max-width:1280px) {		/*タブレット用CSS*/
.btn2 a{
	text-decoration:none;
}
}


@media screen and (max-width:768px) {		/*スマホ用CSS*/
.btn{
	margin-top:30px;
}

.btn a{
	font-size:14px;
	padding:15px 0;
}

.btn2{
	margin:40px auto 0;
}
}


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

 /*リクルートページ*/

/*--------------------------------------------------------*/
#rNav nav li:nth-of-type(3){
/*
  【TYで働く人たち】
  社員紹介のリンクを無効にした。20230727*/
  pointer-events: none;
}



main#contents {
background:#fff;
}

/* navigation--------------------*/
#rNav,
#rNav ul {
display:flex;
justify-content:space-between;
}

#rNav h1 {
position:relative;
top:auto;
left:auto;
margin: 20px auto 0 30px;
width:30%;
}

#rNav nav {
width:65%;
box-sizing:border-box;
}

#rNav nav li {
width:17%;
box-sizing:border-box;
}

#rNav nav a {
box-sizing:border-box;
display:block;
text-align:center;
width:100%;
font-size:75%;
font-weight:bold;
position:relative;
padding:1.5em 0;
border-left:1px solid #dedada;
}



#rNav nav a:hover::after {
height:100%;
}

@media screen and (min-width:1281px) {		/*PC用CSS*/

#rNav nav a:after {
position:absolute;
top:0;
left:0;
width:100%;
height:0;
content:"";
transition:.2s all;
background: #b8c6df; /* Old browsers */
background: -moz-linear-gradient(top, #9ab1d8 0%, #547f9ee6 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,#9ab1d8 0%,#547f9ee6 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #9ab1d8 0%,#547f9ee6 100%)/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */;
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b8c6df', endColorstr='#6d88b7',GradientType=0 ); /* IE6-9 */

}
#rNav nav a:hover {
color:#fff;
text-decoration:none;
z-index:1;
}

#rNav nav a:hover::after {
height:100%;
z-index:-1;
}
}

@media screen and (max-width:1280px) {		/*タブレット用CSS*/
#rNav,
#rNav nav ul {
flex-wrap:wrap;
}
#rNav h1 {
width:80%;
margin: 1em auto 1em;
}

#rNav nav {
width:100%;
margin-right:0px;
position:relative;
z-index:999;
}


#rNav nav a {
text-decoration:none;
}
#rNav nav li {
width:16%;
}

#rNav nav li a {
font-size:90%;
}
}

@media screen and (max-width:768px) {		/*スマホ用CSS*/
#rNav nav ul li {
width:33%;
border-top:1px solid #ccc;
}
#rNav nav li:first-child a,
#rNav nav li:nth-of-type(4) a {
border-left:none;
}
a:hover{
opacity:1 !important;
}
}

@media screen and (max-width:320px) {		/*スマホ用CSS*/
#rNav nav li:last-child a {
font-size:80%;
}
}

/* contents--------------------*/

main#contents {
width:94%;
max-width:1200px;
display:block;/*IE対策*/
margin: 4em auto 0em;
}

main a {
transition:.3s all;
}

main a:hover {
opacity:.5;
}




@media screen and (max-width:320px) {		/*スマホ用CSS*/
#main h2 span {
font-size:140%;
}
}