@charset "utf-8";
@media screen and (max-width : 767px) {

	.pc{display: none;}
	.pc_in{display: none;}
	.sp{display: block;}
	.sp_in{display: inline;}

/* 共通 */
#content #mv{
	width: 100%;
	height: auto;
	aspect-ratio: 400 / 165;
}

#content #mv .inn h1{
    font-size: 1.8rem;
    padding-top: 2.0em;
}

.page-top {
    height: 50px;
    width: 50px;
}

#content section{
	width: 100%;
}

#content section .inn{
	width: 92%;
	padding: 0 4%;
}

#contact{
	padding: 4.0rem 0;
	background-image:url(../images/contact_back_sp.jpg) ;
	background-size: cover;
}

#contact h2.contact_ttl{
	font-size: 2.3rem;
}

#contact .read{
	font-size: 1.3rem;
	line-height: 1.8em;
}

#contact  a.contact_link{
	margin: 0 auto;
	width: 80%;
	max-width: 240px;
	height: 4.0em;
	font-size: 1.3rem;
	background-size: auto 40%;
	background-position: 10% center;
}

#contact  a.contact_link > p{
	padding-left: 2.0em;
}

/* footer */

footer .address{
	display: block;
	padding: 3.0rem  0;
	text-align: center;
}

footer .address a{
	width: 50%;
	margin: 0 auto;
	display: block;
}

footer .address p{
	font-size: 1.2rem;
	line-height: 1.6em;
	margin: 2.0em auto;
}

footer .sitemap{
	padding: 0 0 2.0rem;
}

footer .sitemap > ul{
	display: block;
}

footer .sitemap > ul  > li {
	width: 100%;
	border: none;
	padding: 0.6em 0;
}

footer .sitemap > ul > li a {
	width: auto;
	display: block;
	margin: auto;
	padding: 0.4em 0;
}

footer .sitemap .privacy_link{
	padding: 3.0em 0 1.0em;
}

footer .sitemap .privacy_link > a{
	width: auto;
	display: block;
	margin: auto;
	padding: 0.4em 0;
}

footer .copy{
	font-size: 1.2rem;
}

#breadcrumbs{
	padding: 20px 0;
}

#breadcrumbs ul{
    align-items: center;
    display: flex;
    flex-wrap: wrap;
}

#breadcrumbs ul li{
	list-style: none;
	font-size: 1.4rem;
	font-weight: 500;
}

#breadcrumbs ul li a{
	text-decoration: underline;
}

#breadcrumbs ul > li:last-child:before{
    content: ">";
    display: inline-block;
    margin: 0 1.2em 0 1em;
}


/*


/* TOPページ */

#contact .pamphlet{
	display: flex;
	justify-content: center;
	padding: 2.0rem 2% 0 0 ;
}

#contact .pamphlet a{
	width: 40%;
}

#contact .pamphlet a:hover{
	box-shadow: 5px 5px 2px 1px rgba(0, 0, 255, 0.2);
}

#contact .pamphlet > img{
	width: 40%;
}

#content.top h3{
	width: 96%;
	padding: 0 2%;
	font-size: 1.7rem;
	line-height: 1.7em;
}

#content.top .view_more{
	width: 100%;
	text-align: center;
	margin: 30px auto 5px;
}

#content.top section{
	padding: 2.0rem 0!important;
}

#content.top section .inn .ttl{
	width: 100%;
	padding: 0 0 3.0rem;
	display: block;
	position: relative;
}

#content.top section .ttl h2{
	width: 45%!important;
	min-width: 135px!important;
	margin: 0 auto 3.0rem!important;
	position: relative!important;
	top: 0!important;
	right: 0!important;
}

#content.top section .inn .ttl .read{
	width: 100%!important;
}

#content.top #why .inn .support > div img{
	width: 100%;
}

#content.top #why .inn .hotel_like h4{
	font-size: 1.4rem;
}

#content.top #why .inn .hotel_like > div{
	padding: 1.5rem 0;
}

#content.top #solution{
	background-image: url(../images/top_solution_back_sp.jpg);
	background-size: cover;
}

#content.top #solution .inn .ttl{
	padding: 0 0 2.0rem;
}

#content.top #solution .bubble img{
	margin: 5px 0;
}

#content.top #amenity{
	background-image: url(../images/top_amenity_back_sp.jpg);
	background-position: center top;
	background-size: 100% auto;
	background-repeat: no-repeat;
}

#content.top #amenity .inn .article{
	display: block;
}

#content.top #amenity .inn .article > div{
	width: 100%;
	max-width: none;
	margin-top: 3.0rem;
	overflow: hidden;
}

#content.top #amenity .inn .article > div p{
	font-size: 1.3rem;
}

#content.top #amenity .inn .article > div p.brand_txt{
	font-size: 1.5rem;
}

#content.top #space_produce{
	background-image: url(../images/top_space_produce_back_sp.jpg);
	background-position: center top;
	background-size: 100% auto;
	background-repeat: no-repeat;
}

#content.top #space_produce .inn .article{
	width: 100%;
	max-width: none;
	padding: 20px 0;
	overflow: hidden;
}

#content.top #space_produce .inn .article > p{
	font-size: 1.3rem;
	line-height: 1.6em;	
}

#content.top #space_produce .inn .article > div{
	max-width: none;
}

#content.top #space_produce .inn .article .article_01 > div p.cap{
	font-size: 1.3rem;
	line-height: 1.2em;
	padding: 0.5em 0 2.0em;
}

#content.top #space_produce .inn .article .view_more{
	text-align: center;
	margin: 0 0 2.0rem;	
}

#content.top #training_program{
	padding: 3.0rem 0;
}

#content.top #training_program .inn .ttl .read p{
	font-size: 1.3rem;
	line-height: 1.7em;
}

#content.top #training_program .inn .article .article_01 > div{
	width: 46%;
}

#content.top #training_program .inn .article .article_01 > div img{
	width: 100%;
	 height: auto;
}

#content.top #training_program .inn .article .article_01 > div p.cap{
	font-size: 1.3rem!important;
	line-height: 1.2em!important;
	padding: 0.5em 0 2.0em!important;
}

#content.top #training_program .inn .article .view_more{
	text-align: center;
	margin: 0 0 2.0rem;	
}

#content.top #food_menu{
	padding: 3.0rem 0;
}

#content.top #food_menu .inn .ttl .read p{
	font-size: 1.3rem;
	line-height: 1.7em;
}

#content.top #food_menu .inn .article > div {
	width: 100%;
}

#content.top #food_menu .inn .article > div p{
	text-align: justify;
	font-size: 1.3rem;
	line-height: 1.4em;
	padding: 0.5em 0 2.0em;
}

/* 取り扱いブランドのご紹介 */
	#content.amenity #mv{
	background-image: url(../images/amenity_mv_sp.jpg);
}

#content.amenity section.read{
	padding: 3.0rem 0;
}

#content.amenity section.read .inn p{
	font-size: 1.3rem;
	line-height: 1.4em;
	text-align: left;
}

#content.amenity #brand_list .inn{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#content.amenity #brand_list .inn > div{
	width: 46%;
	max-width: none;
	margin-bottom: 4.0rem;
}

#content.amenity #brand_list .inn > div h3{
	font-size: 1.4rem;
	line-height: 2.0em;
}

#content.amenity #brand_list .inn > div p{
	font-size: 1.3rem;
	line-height: 1.4em;
}

#contact .prospe{
	padding: 4.0rem 10% 0 ;
}

#contact .prospe a{
	width: 55%;
	max-width: none;
}

#contact .prospe > img{
	width: 45%;
	max-width: none;
}

/* 空間プロデュース事例のご紹介 */
#content.space_produce{
}

#content.space_produce section{
	padding: 0;
}

#content.space_produce #mv{
	background-image: url(../images/space_produce_mv_sp.jpg);
}

#content.space_produce section .anker{
	position: absolute;
	bottom:0.0rem!important;
}

#content.space_produce .page_navi{
	padding: 2.0rem 0;
	text-align: center;
}

#content.space_produce .page_navi .anker{
	position: absolute;
	bottom:5.0rem!important;
}


#content.space_produce .page_navi .inn > ul{
	display: block;
}

#content.space_produce .page_navi .inn > ul  > li {
	width: 100%;
	border: none;
	padding: 0.6em 0;
}

#content.space_produce .page_navi .inn > ul  > li a{
	width: auto;
	display: block;
	margin: auto;
	padding: 0.4em 0;
}

#content.space_produce .case .produce_slider{
	width: 100%;
	height: auto;
}

#content.space_produce .case .slick-dots{
	justify-content: center!important;
	margin: 3.0rem auto;
}

#content.space_produce .case .slick-dots li{
	width: 10px;
	height: 10px;
	border-radius: 5px;
	margin: 0 5px!important;
	background: #999;
	opacity: 1.0;
	cursor: pointer;
}

#content.space_produce .case .slick-dots li.slick-active{
	background: #EA638B;
	opacity: 1.0;
}

#content.space_produce .case .slick-dots li img{
	display: none;
}

#content.space_produce .case .detail{
	display: block;
	margin: 0 auto 7.0rem;
}

#content.space_produce .case .detail .name{
	width: 100%;
	max-width:  none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	height: auto;
	padding: 1.0rem 0;
}

#content.space_produce .case .detail .name > div{
	width: 36%;
	text-align: center;
}

#content.space_produce .case .detail .name > div img{
	width: 40%;
}

#content.space_produce .case .detail .name > div p{
	font-size: 1.0rem;
	line-height: 1.2em;
	padding: 0 0.3em;
}

#content.space_produce .case .detail .name h2{
	text-align: left;
	font-size: 1.6rem;
	line-height: 1.2em;
	padding: 0 0 0 0.5em;
}

#content.space_produce .case .detail .area{
	width: 100%;
	max-width: none;
	padding-top: 3.0rem;
}

#content.space_produce .case .detail .area .read h3, h3.small{
	color: #fff;
	display: flex;
	background-color: #808080;
	font-size: 1.3rem!important;
	line-height: 1.3em!important;
	font-weight: 200;
	padding: 0.7em 0.5em 0.7em 1.0em;
}

#content.space_produce .case .detail .area .read p{
	font-size: 1.3rem;
	line-height: 1.4em;
	padding: 1.0em 0;
}

#content.space_produce .case .detail .area .point{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	font-size: 1.3rem;
	padding: 1.2em 0 0;
}

#content.space_produce .case .detail .area .point img{
	width: 20%;
	max-width: 100px;
	height: auto;
	margin-top: 0;
}

#content.space_produce .case .detail .area .point p{
	width: 75%;
	max-width: none;
	font-size: 1.3rem;
	line-height: 1.4em;
}

#content.space_produce .case .detail .area .point ul{
	width: 75%;
	max-width: none;
	font-size: 1.3rem;
	line-height: 1.4em;
}



/* 研修・人材教育メニュー */
#content.training_program section{
	padding: 0 0 3.0rem;
	margin-top: 3.0rem!important;
}

#content.training_program #mv{
	background-image: url(../images/training_program_mv_sp.jpg);
}

#content.training_program section .inn h2{
    font-size: 1.8rem;
    line-height: 1.2em;
    margin: 0 0 1.3em 0;
    padding: 0.5em;
}

#content.training_program section.cleaning .inn h2{
    line-height: 2.4em!important;
}

#content.training_program section .inn .program{
	display: block;
}
	
#content.training_program section .inn .program > div{
	width: 100%;
	max-width: none;
}

#content.training_program section .inn .program > div:nth-child(2){
	margin-top: 5.0rem;	
}

#content.training_program section .inn .program > div h3{
    font-size: 1.7rem;
    line-height: 2.0em;
    margin: 0 0 1.0em 0;
}

#content.training_program section .inn .program > div img{
	width: 100%;
	height: auto;
}

#content.training_program section .inn .program > div p.read{
	font-size: 1.3rem;
	line-height: 1.4em;
	text-align: justify;
	padding: 0.7em 0 0;
	height: auto;
	min-height: 0;
}

#content.training_program section .inn .program > div > div{
	padding-bottom: 5.0rem;
	margin: 2.0rem auto 0;
    min-height: 0;
}

#content.training_program section .inn .program > div > div h4{
    font-size: 1.6rem;
    line-height: 2.0em;
}

#content.training_program section .inn .program_list{
	padding: 20px 3%;
}

#content.training_program section .inn .program_list p{
	font-size: 1.2rem;
	line-height: 1.3em;
}

#content.training_program section .inn .program_list p.list-ttl{
	font-size: 1.2rem;
	line-height: 1.3em;
}

#content.training_program section .inn .program_list ul{
	list-style: none;	
	font-size: 1.2rem;
	line-height: 1.3em;
	padding: 0 0 1.5em 1.0em;
}

#content.training_program section .inn .program > div > div > p{
 	width: 94%;
   font-size: 1.6rem;
    line-height: 1.2em;
    padding: 0.3em 0;
    bottom: 2.0rem;
    left: 3%;
}

#content.training_program section .inn > p{
	font-size: 1.2rem;
	line-height: 1.4em;
	padding: 1.6em 0;
}

/* 資料請求･お問い合わせ */

#content.contact #mv{
	background-image: url(../images/contact_mv_sp.jpg);
}

#content.contact #form .progres{
	padding: 35px 0;
}

#content.contact #form .progres ul{
    display: flex;
	height: 40px;
}

#content.contact #form .progres li p{
    font-size: 1.6rem;
}

#content.contact #form form{
	font-family: "ヒラギノ角ゴ Pro W3","Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体",  "メイリオ", sans-serif;
	font-size: 1.8rem;
	font-weight: 400;
	width: 100%;
	max-width: 820px;
	margin: 0 auto;
}

#content.contact #form form > div{
	display: block;
	margin:  0 0 18px;
}

#content.contact #form form > div > div:first-child{
	width: 100%;
	max-width: none;
	margin-bottom: 0.5em;
}

#content.contact #form form > div > div:last-child{
	width: 100%;
	min-width: 0;
	padding: 0;
}

#content.contact #form form > div > div:last-child input{
	border: none;
    border-radius: 5px;
    letter-spacing: 0.1em;
    line-height: 1.0em;
    padding: 17px 2%;
    position: relative;
    width: 96%;
}

#content.contact #form form > div > div:last-child textarea {
    border: none;
    height: 5.0em;
    padding: 17px 2%;
    width: 96%;
}

#content.contact #form form div.tel > div:last-child{
	justify-content: space-between;
}

#content.contact #form form div.tel > div:last-child input{
    width: 27%;
}

#content.contact #form form .consent_txt {
	display: block;
    text-align: center;
	font-size: 1.4rem;
    line-height: 1.6em;
    margin: 50px 0 ;
}

#content.contact #form form .consent_check{
	font-size: 1.8rem;
}

#content.contact .submit{
	display: block;
	width: 100%;
}

#content.contact .submit input[type=submit]{
    width: 80%;
    margin: 20px 10%;
}

#content.contact .submit input[type=button]{
    width: 80%;
    margin: 20px 10%;
}

#content.contact #form.confirm form > div > div:last-child > p{
	background-color: #e6e6e6;	
	border: none;
    border-radius: 5px;
    letter-spacing: 0.1em;
    line-height: 1.0em;
    padding: 17px 18px;
    position: relative;
    width: 93%;
}

#content.contact #thanks{
	padding: 80px 0;
}

#content.contact #thanks h2{
	font-family: "ヒラギノ角ゴ Pro W3","Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体",  "メイリオ", sans-serif;
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.8em;
	font-weight: 600;
	padding-bottom: 3.0em;

}

#content.contact #thanks p{
	text-align: justify;
	font-size: 1.6rem;
	line-height: 1.8em;
	max-width: 600px;
	margin: 0 auto;
}

}
