@charset "utf-8";
/* CSS Document */

.u-flex{
	display: flex;
}
div#header .u-subtitle{
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	font-size: 12px;
	color: #663300;
	padding-left: 1em;
	padding-top: 3px;
}
div#header .u-subtitle .u-sp{
	display: none;
}

div#header div.headerinr{
	padding-top: 0;
}

div#header .l-sp-head{
		display: none;
	}
div#main{
	min-height: 1000px;
}

.f1inr.u-flex{
		justify-content: space-between;
	align-items: center;
	}



.f-txt{
	font-weight: bold;
}
.f-add{
	font-size: 14px;
	margin-bottom: -0.5rem;
}

.f-tel {
font-size: 45px;
color:#960C31;
font-weight:bold;
background: url(images/tel_bg.png) no-repeat left center;
padding: 0 0 0 40px;
background-size:24px;
}

.side2 .u-side-banner-sp{
		display: none;
	}

/*レイアウト*/
@media screen and (max-width: 992px) {
	*{
	box-sizing: border-box;
}
	/*div{
		border: 1px solid #000;
	}*/
	
	
	div#header div.headerinr{
		display: none;
	}
	#navwrapper{
		display: none;
	}
	div#header .l-sp-head{
		display: block;
		height: 70px;
	}
	
	.visualinr{
		max-width: 100%;
	}
	.pointinr{
		max-width: 100%;
	}
	.point ul{
		padding: 0 1em;
		max-width: 100%;
		box-sizing: border-box;
		margin-left: auto;
		display: flex;
	}
	.point ul li{
		width: 23%;
		margin: 0 1%;
	}
	div#contents{
		width: 100%;
	}
	div#contents div.contentsinr{
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
	}
	div#main{
		float: none;
		width: calc(100% - 200px);
		padding-left: 1em;
		padding-right: 1em;
		min-height: auto;
	}
	.tcompany ul{
		margin: 0;
		display: flex;
		flex-wrap: wrap;
		padding-bottom: 1em;
	}
	.tcompany ul li{
		width: 48%;
		margin: 0 1% 1%;
	}
	.center.mt40{
		margin-top: 30px;
	}
	.f1{
		
		background-size: cover;
	}
	.f1inr{
		max-width: 100%;
		padding: 1em;
		display: flex;
		position: static;
		box-sizing: border-box;
		align-items: center;
		flex-direction: column;
		min-height: auto;
		background-size: auto;
		background-position: bottom;
		border-top: 1px solid #ccc;
	}
	.f2inr,.copyrightinr{
		max-width: 100%;
	}
	.f2inr {
		min-height: auto;
		padding: 0.5em;
	}
	.f2inr #globalNav{
		display: flex;
		justify-content: space-around;
	}
	.f2inr #globalNav li a{
		padding: 0;
	}
	
	.h_tel,.h_add{
		position: static;
	}
	#g-nav li .h_tel a{
	color: #960C31;
    font-weight: bold;
		padding: 0;
		letter-spacing:normal;
		}
	
	/*セカンド*/
	body.next div#leftcolum{
		position: static;
		margin-top: -20px;
	}
	.chead .cheadinr{
		width: 100%;
		height: 140px;
		display: flex;
		background-position: left center;
		align-items: center;
		padding: 0;
		justify-content: flex-end;
	}
	
	.chead .cheadinr h2{
		padding: 0;
		margin: 0;
		width: calc(100% - 260px);
	}
	
	.pan{
		width: 100%;
		border-top:1px solid #ccc;
	}
	
}
@media screen and (max-width: 768px) {
/*入居について*/
.guidelist .flow-l{
		font-size: 16px;
	}
}

@media screen and (max-width: 767px) {
	.f2{
		display: none;
	}
}

@media screen and (max-width: 640px) {
	div#contents{
		margin-bottom: 0;
	}
	.point ul li{
		width: 48%;
		text-align: center;
	}
	.point ul li p{
		text-align: left;
	}
	div#contents div.contentsinr{
		flex-direction: column;
	}
	div#main{
		width:100%;
		
	}
	
	div#leftcolum{
		width:100%;
	}
	.sidecontact{
		display: none;
	}
	div#leftcolum .side1,.leftcoluminr,div#leftcolum .u-sp,.leftcoluminr2,.sidebnr{
		display: none;
	}
	.side2 .u-side-banner-sp{
		display: block;
	}
	.side2 .u-side-banner-sp .u-flex {
		justify-content:space-between;
		max-width: 380px;
		margin:0 auto 0.5em;	
		
	}
	.side2 .u-side-banner-sp .u-flex div{
		margin: 0 1% ;
	}
	.side2 .u-side-banner-sp .u-saiyo{
		margin:0 auto 10px;
		padding: 0 1%;
		max-width: 380px;
	}
	.h_tel{
		font-size: 24px;
		padding-left: 45px;
		background-size: 24px;
		background-position: left 10px center;
		text-align: left;
	}
	
	/*セカンド*/
	body.next div#leftcolum{
		margin-top: 0px;
		width: 100%;
	}
	.chead .cheadinr{
		height: 100px;
		background-size: cover;
	}
	.chead .cheadinr h2{
		padding: 0;
		margin: 0;
		width: calc(100% - 200px);
		font-size: 18px;
	}
	
	
}

@media screen and (max-width: 480px) {
	div#header .u-subtitle .u-sp{
	display: block;
}
	
	h1.logo{
		padding: 0 0.5rem 0.5rem 0.5rem;
	}
	h1.logo img{
		width: 45%;
	}
	.point ul{
		flex-wrap: wrap;
	}
	.point ul li{
		max-width: 100%;
		width: 100%;
		margin-bottom: 1rem;
	}
	.tcompany ul{
		flex-direction: column;
	}
	.tcompany ul li{
		width: 100%;
		margin: 0;
	}
	.f-add{
		font-size: 12px;}
	.tn_list dl dt{
		float: none;
	}
	/*入居について*/
.guidelist .flow-l,.guidelist .flow-r{
		float: none;
	width: 100%;
	}
	.guidelist .flow-r{
		padding: 0.5rem;
	}
	.guidelist li:after{
		margin: 1% auto;
	}
	
}
@media screen and (max-width: 400px) {
	.h_tel{
		font-size: 20px;
		padding-left: 35px;
		background-size: 20px;
		background-position: left 5px center;
		text-align: left;
	}
	.h_add{
		font-size: 13px;
	}
}



/*採用情報*/

#main.page .recruit-content table th{
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background-color: #f6f6f6;
	width: 20%;
	padding: 1em;
	font-weight: bold;
	border-color: #ccc;
	white-space: nowrap;
}

#main.page .recruit-content table td{
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	width: 80%;
	padding: 1em;
	border-color: #ccc;
	
}
#main.page .recruit-content table {
	width: 100%;
	border-top:1px solid #ccc; 
	border-right:1px solid #ccc; 
}

/*ルルドの魅力*/
#main.page .pagearea.u-appeal-wrap ul.u-flex {
	flex-wrap: wrap;
}
#main.page .pagearea.u-appeal-wrap ul.u-flex li{
	width: 50%;
	padding: 10px;
	box-sizing: border-box;	
}
#main.page .pagearea.u-appeal-wrap ul.u-flex li img{
	border-radius: 6px;
	margin-bottom: 1em
}

#main.page .pagearea.u-appeal-wrap .u-photo-wrap{
	max-width: 480px;
	margin: 0 auto;
}
#main.page .pagearea.u-appeal-wrap .u-photo-wrap p{
	width: 50%;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	padding: 0 5px;
	
}
#main.page .pagearea.u-appeal-wrap .u-flex .u-photo{
	width: 50%;
	padding: 10px;
	box-sizing: border-box;
}
#main.page .pagearea.u-appeal-wrap .u-photo-wrap p img,
#main.page .pagearea.u-appeal-wrap .u-flex .u-photo img{
	border-radius: 6px;
}

#main.page .pagearea.u-appeal-wrap .col2,
#main.page .pagearea.u-appeal-wrap .col2.u-flex li{
	margin: 0;
}
.u-f24{
	font-size: 24px;
}
.u-f18{
	font-size: 18px;
}


@media screen and (max-width: 768px) {
	.u-f24{
	font-size: 20px;
}
.u-f18{
	font-size: 16px;
}
}



/*ご利用手続き*/

.u-guide-wrap .u-sp{
	display: none;
}
.u-guide-wrap .u-table-scroll table td{
 white-space: nowrap;
}

.u-guide-wrap .u-btn a{
	display: inline-block;
	background-color: #663300;
	color: #fff;
	padding: 0.5rem 1.5rem;
	border-radius: 50vh;
	font-weight: bold;
}
.u-guide-wrap .u-btn a:hover{
	text-decoration: none;
	opacity: 0.6;
	transition: 0.2s;
}


@media screen and (max-width: 767px) {
.u-guide-wrap .u-table-scroll{
	overflow-x: auto;
}
.u-guide-wrap .u-table-scroll table{
	min-width: 600px;
	margin-bottom: 1em;
}
	.u-guide-wrap .u-sp{
	display: block;
}
	.u-guide-wrap .u-table-scroll table th,
	.u-guide-wrap .u-table-scroll table td{
 white-space: nowrap;
}
}



/*spメニュー*/
#g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 9999;
    /*ナビのスタート位置と形状*/
	top:-120%;
    left:0;
	width:100%;
    height: 100vh;/*ナビの高さ*/
	background:#f4f3ee;
    /*動き*/
	transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    top: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}

/*リストのレイアウト設定*/

#g-nav li{
	list-style: none;
    text-align: center; 
}

#g-nav li a{
	color: #50281d;
	text-decoration: none;
	padding:10px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
    z-index: 10000;/*ボタンを最前面に*/
	top:15px;
	right: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
	/*border: 1px solid #663300;*/
	border-radius: 6px;
	background-color:#fff;
}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #663300;
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;	
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}
