@charset "UTF-8";
@import url(cmn.css);
@import url(foundation.css);

header nav ul li:nth-of-type(2) a{
	color: #79726e !important;
}
#lv .txt p.p1{
	border-bottom:none!important;
}
/*--------------------*/

#concept{
	position: relative;
	margin-top: 30px;
}
#concept:before{
	content: "";
	width: 50%;
	height: calc(100% - 20px);
	/*background: #F1E8BE;*/
	display: block;
	position: absolute;
	top: 20px;
	left: 25%;
	z-index: 1;
}
#concept .wrapper{
	position: relative;
	z-index: 3;
}
#concept h2{
	margin-bottom: 60px;
}

#concept2 .num{
	font-size:3em!important;
	font-style: italic!important;
}

#concept .textleft{
	text-align:left!important;
}
#concept2 .textleft{
	text-align:left!important;
}
#concept .flex1{
	align-items: flex-start;
	position: relative;
	margin-bottom: 90px;
}
#concept .flex1 .c1{
	position: relative;
	z-index: 1;
}
#concept .flex1 .c1:after{
	content: "";
	display: block;
	width: 80px;
	height: 1px;
	/*background: #3a3c49;*/
	position: absolute;
	top: 20px;
	left: -20px;
	transform: rotate(-45deg);
}
#concept .flex1 .c1 img:nth-of-type(2){
	width: 50%;
	margin: -50px 0 0 40px;
}
#concept .flex1:nth-of-type(2n) .c1 img:nth-of-type(2){
	margin: -50px 0 0 calc(50% - 40px);
}
#concept .c2{
	align-self: flex-end;
	padding-top: 150px;
	padding-left: 50px;
	padding-bottom: 50px;
}
#concept .flex1:nth-of-type(2n) .c2{
	padding-left: 0;
	padding-right: 50px;
}
#concept .c2>span{
	position: absolute;
	top: 40px;
	left: 0;
	width: 100%;
	text-align: center;
	font-family: 'Josefin Sans', "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	font-size: 9rem;
	color: #CCAC00;
	line-height: 1;
	z-index: 2;
	text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;
	opacity: 0.2;
}
#concept .c2 p{
	margin-bottom: 20px;
}
#concept .c2 p:last-child{
	margin-bottom: 0;
}
#concept h4{
	text-align: left;
	margin-bottom: 20px;
}
@media screen and (max-width: 1100px){
	#concept:before{
		width: 70%;
		height: calc(100% - 20px);
		top: 20px;
		left: 15%;
	}
	#concept .c2{
		padding-left: 0 !important;
		padding-right: 0 !important;
		padding-bottom: 0 !important;
	}
}
@media screen and (max-width: 900px){
	#concept .flex1 .c1 img:nth-of-type(2){
		margin-top: -30px !important;
	}
	#concept .c2{
		padding-top: 100px;
	}
	#concept .c2>span{
		font-size: 9vw;
		top: 20px;
	}
}
@media screen and (max-width: 700px){
	#concept h2{
		margin-bottom: 40px;
	}
	#concept .c1{
		margin-bottom: 30px;
	}
	#concept .flex1 .c1 img:nth-of-type(2){
		margin: -30px 0 0 calc(50% - 30px) !important;
	}
	#concept .c2{
		padding-top: 0;
	}
	#concept .c2>span{
		font-size: 14vw;
		top: 75vw;
		z-index: 1;
	}
	#concept .c2>h4,
	#concept .c2>p{
		position: relative;
		z-index: 2;
	}
}
@media screen and (max-width: 500px){
	#concept h2{
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 400px){
	#concept h2{
		margin-bottom: 10px;
	}
	#concept .flex1{
		margin-bottom: 50px;
	}
}

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

#requirements h2{
	text-transform: none;
}
#requirements .img{
	margin-bottom: 30px;
	text-align: center;
}
#requirements p{
	text-align: center;
	margin-bottom: 20px;
}
#requirements p:last-child{
	margin-bottom: 0;
}
@media screen and (max-width: 500px){
	#requirements p{
		text-align: justify;
	}
	#requirements p .no{
		display: none;
	}
}

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

#recruite{
	border-top: 1px solid #e4dcd4;
}

#part-shop .c1{
	width: 40%;
	order: 2;
}
#part-shop .c2{
	width: 57%;
	order: 1;
}
#part-shop h4{
	text-align: left;
	margin-bottom: 20px;
}
#part-shop h4+p{
	margin-bottom: 20px;
}
#part-shop dl{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	align-content: flex-start;
	justify-content: flex-start;
	border-top: 1px solid rgba(180,152,115,0.2);
}
#part-shop dt,
#part-shop dd{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 10px 5px;
	border-bottom: 1px solid rgba(180,152,115,0.2);
}
#part-shop dt{
	width: 180px;
}
#part-shop dd{
	width: calc(100% - 180px);
}
#part-shop .map iframe{
	width: 100%;
	height: 300px;
}
@media screen and (max-width: 850px){
	#part-shop dl{
		font-size: 1.6rem;
	}
	#part-shop dt{
		width: 130px;
	}
	#part-shop dd{
		width: calc(100% - 130px);
	}
}
@media screen and (max-width: 600px){
	#part-shop .wrapper .wrapper{
		padding: 0 0 40px 0;
		margin-bottom: 40px;
	}
}


