@charset "UTF-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cabin:wght@400;500;600;700&display=swap');


#staff,
#info,
#menu,
#concept{
    width:740px;
	margin: 0 auto;
	padding:100px 0;
	overflow: hidden;
}

h2{
text-align: left;
}

h2 .s_font{
font-size: 40%;
	font-weight: 500;
}

.btn{
	box-sizing: border-box;
	font-size:110%;
	margin: 0 auto;
	padding: 11px 0 6px 0;
	text-align: center;
	border: 1px solid #161616;
	font-family: 'Josefin Sans', sans-serif;
}

.btn:hover{
	background: #161616;
	color: #fff;
	transition: 0.5s ease-in-out;
}

.swiper-wrapper {
  width:100%;
}

.swiper-slide {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
  width: 100%;
  height: auto;
	margin-top: 30px;
	margin-bottom: 10px;
}

.slider{
        width:900px;
}

.slider img{
        width: 100%;
}

#concept,
#concept h2{	
	text-align: center;
}

#concept h2 img{
    width:72px;
	margin-bottom: 8px;
}

#concept h3{
  font-size: 160%;
	margin-bottom: 25px;
}

#concept p{
    margin-bottom: 20px;
	line-height: 2.5em;
}

#menu{
	padding-top: 40px;
}

#menu .left{
	float: left;
	margin-top: 60px;
	width:45%;
}

#menu .right{
	float: right;
	margin-top: 60px;
	width:46%;
}

#menu h2{
margin-bottom: 30px;
}

#menu p{
margin-bottom: 12px;
line-height: 1.8em;
}

#menu .btn{
margin-bottom: 10px;
}

.menu_btn{
	margin-top: 27px;
	box-sizing: border-box;	
}

#staff{
	overflow: hidden;
	padding: 120px 0;
}

#staff .left{
float:left;
	width: 20%;
}

#staff .right{
float:left;
	width: 80%;
}

#staff h3{
  font-size: 130%;
	margin-bottom: 25px;
	letter-spacing: 0.1em;
}

#staff ul{
	overflow: hidden;
	margin-top: -5px;
	width: 100%;
}

#staff ul li{
	float:left;
	width:48%;
	margin-right:4%;
	text-align: right;
	line-height: 1.4em;
}

#staff ul li .position{
	font-size: 80%;
	margin-top: 10px;
}

#staff ul li .name{
	letter-spacing: 0.2em;
	display: flex;
    align-items: center;
}

#staff ul li .name:before{
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}

#staff ul li .name:before {
    margin-right: 1rem;
}

#staff ul li:nth-child(2n){
	margin-right: 0;
}

#info .left{
	float: left;
	margin-top: 0;
	width:20%;
}

#info .right{
	float: right;
	margin-top: 0;
	width:80%;
}

#info h2{
	margin-bottom: 30px;
}
#info h3{
	font-size:150%;
	letter-spacing: 0.05em;
	margin-bottom: 10px;
	line-height: 1em;
}

#info p{
	font-size:90%;
	line-height: 1.4em;
	margin-top: 10px;
}

#info .tel {
	font-size:140%;
	letter-spacing: 0.05em;
	font-weight: 600;
	margin-bottom:12px;
	line-height: 1em;
}

#info .tel .m_font{
	font-size:65%;
	letter-spacing: 0;
}

#info table{
	text-align:left;
	line-height: 1.4em;
	width:100%;
	margin-bottom: 50px;
}

#info table tr {
	border-bottom: 1px dotted #999;
	line-height: 1.5em;
}

#info table tr th{
	width:90px;
	font-weight: 500;
	padding: 17px 0 13px 0;
}

#info table tr td{
	padding: 17px 0 13px 0;
}

#info .access{
	font-size: 80%;
	margin-top:5px;
	line-height: 1.3em;
	padding-bottom: 12px;
}

#info .btn{
	width:250px;
	margin: 0 0 10px 0;
}




@media screen and (max-width:920px) {
.slider{
   width:94%;
}
}


@media screen and (max-width:768px) {
	
#staff,
#info,
#menu,
#concept{
   width:86%;
	padding:50px 0;
}
		
.swiper-slide {
	margin-top: 60px;
	margin-bottom: 5px;
}
	
.btn{
	padding: 9px 0 5px 0;
}
	
h2{
	text-align: center;
}

#concept h2 img{
    width:52px;
}

#concept h3{
  font-size: 140%;
	margin-bottom: 15px;
	letter-spacing: 0.05em;
}

#concept p{
    margin-bottom: 10px;
	line-height: 2em;
	letter-spacing: 0;
}
	
#concept {
    padding-bottom: 40px;
}

#concept .btn{
    width:300px;
}
	
#menu{
	padding-top: 0;
}

#menu .left{
		width:100%;
		float: none;
}
	
#menu .right{
		display: none;
}

#menu h2{
	margin-bottom: 20px;
}

#menu p{
margin-bottom: 0;
line-height: 2em;
	text-align: center;
	width: 380px;
	margin-left: auto;
	margin-right: auto;
}

#menu .btn{
margin-bottom: 8px;
	width: 70%;
}

.menu_btn{
	margin-top: 20px;
}
	
#staff .left,
#staff .right{
float:none;
width: 100%;
}

#staff ul{
	overflow: hidden;
	margin-top: 20px;
}	

}

@media screen and (max-width:580px) {
#concept h3{
  font-size: 150%;
	margin-bottom: 15px;
	letter-spacing: 0.05em;
	line-height: 0.75em;
}
	
#info .left{
	float: none;
	width:100%;
}

#info .right{
	float: none;
	width:100%;
}

#info h2{
	margin-bottom: 20px;
}
	
#info h3{
	font-size:130%;
	margin-bottom: 10px;
}

#info table{
	margin-bottom: 30px;
}

#info table tr {
	border-bottom: 1px dotted #999;
	line-height: 1.5em;
}

#info table tr th{
	width:70px;
	padding: 13px 0 8px 0;
}

#info table tr td{
	padding: 13px 0 8px 0;
}

#info .access{
	font-size: 80%;
	margin-top:5px;
	line-height: 1.3em;
	padding-bottom: 12px;
}

#info .btn{
	width:250px;
	margin: 0 0 10px 0;
}
	

#menu p{
		width:100%;
}

#menu .btn{
margin-bottom: 8px;
	width: 99%;
}

	}