/*
Title: house freedom allshop lp
Last Updated: 2023-1-24
Author: zeal
*/

/*----------------------------------------
	全体
----------------------------------------*/

html{
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
	font-size:62.5%;
	color: #000;
	-webkit-text-size-adjust:100%;
	line-height:1.5;
	font-weight: 500;
}
body{ font-size:1.4rem; font-size: 1.4em; }
img{ vertical-align: bottom; }
.max_respon{ max-width:100%; }

a{
	color:#000;
	transition: all 0.4s;
	text-decoration: none;
}
a:hover{
	color:#999;
	transition: all 0.4s;
}

.yumin{
	font-family:'游明朝体','Yu Mincho','ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro','ＭＳ Ｐ明朝','ＭＳ 明朝','Sawarabi Mincho',serif;
}

.lato{
	font-family: 'Lato', sans-serif;
}


.text_bold{ font-weight: bold; }
.text_normal{ font-weight: normal; }



/*----------------------------------------
	iframe比率維持
----------------------------------------*/

.map{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
	padding: 70% 0 0;
	text-align: center;
}
.map iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}
.map iframe:not(:target){
	left: 0\9;
	top: 0\9;
}
.map iframe{
	left: 0\9;
	top: 0\9;
}
@media all and (-ms-high-contrast: none) {
.map iframe{
		left: 50%\9 !important;
		top: 50%\9 !important;
	}
}
.map{ z-index: 2; }/*chrome対策*/


/*----------------------------------------
	text
----------------------------------------*/

p{ line-height: 2; }

.text_red{
	color:#e5493e;
}
.text_brown{
	color:#a48036;
}

.text_10{ font-size:1.0rem !important; }
.text_11{ font-size:1.1rem !important; }
.text_12{ font-size:1.2rem !important; }
.text_13{ font-size:1.3rem !important; }
.text_14{ font-size:1.4rem !important; }
.text_15{ font-size:1.5rem !important; }

.ls_-2{ letter-spacing: -2px; }
.ls_-1{ letter-spacing: -1px; }
.ls_1{ letter-spacing: 1px; }
.ls_2{ letter-spacing: 2px; }
.ls_3{ letter-spacing: 3px; }

.lh_14{ line-height: 1.4; }
.lh_16{ line-height: 1.6; }
.lh_17{ line-height: 1.7; }
.lh_18{ line-height: 1.8; }

@media print, screen and (min-width: 770px){

	.text_16{ font-size:1.6rem !important; }
	.text_17{ font-size:1.7rem !important; }
	.text_18{ font-size:1.8rem !important; }
	.text_19{ font-size:1.9rem !important; }
	.text_20{ font-size:2.0rem !important; }
	.text_21{ font-size:2.1rem !important; }
	.text_22{ font-size:2.2rem !important; }
	.text_24{ font-size:2.4rem !important; }
	.text_26{ font-size:2.6rem !important; }
	.text_28{ font-size:2.8rem !important; }
	.text_30{ font-size:3.0rem !important; }
	.text_32{ font-size:3.2rem !important; }
	.text_34{ font-size:3.4rem !important; }
	.text_36{ font-size:3.6rem !important; }
	.text_38{ font-size:3.8rem !important; }
	.text_40{ font-size:4.0rem !important; }
	.text_42{ font-size:4.2rem !important; }
	.text_48{ font-size:4.8rem !important; }

}/*END*/

@media screen and (max-width: 769px){

	.text_16,
	.text_17,
	.text_18{
		font-size: 1.6rem;
	}
	.text_20,
	.text_19{
		font-size: 1.7rem !important;
	}
	.text_21,
	.text_22,
	.text_24{
		font-size: 1.8rem !important;
	}
	.text_26,
	.text_28,
	.text_30,
	.text_32,
	.text_34,
	.text_38,
	.text_36,
	.text_40,
	.text_42{
		font-size: 2rem !important;
	}
	.text_48{
		font-size: 3.2rem !important;
	}

}/*END*/

@media print, screen and (min-width: 660px) and ( max-width: 769px){

	.text_24{
		font-size: 2rem !important;
	}

}/*END*/

@media screen and (max-width: 599px){

	.text_16,
	.text_17,
	.text_18{
		font-size: 1.2rem;
	}
	.text_20,
	.text_19{
		font-size: 1.3rem !important;
	}

	.text_21,
	.text_22{
		font-size: 1.4rem !important;
	}

	.text_24{
		font-size: 1.4rem !important;
	}
	.text_26,
	.text_28,
	.text_30,
	.text_32,
	.text_34{
		font-size: 1.8rem !important;
	}
	.text_38,
	.text_36,
	.text_40,
	.text_42{
		font-size: 2.1rem !important;
	}
	.text_48{
		font-size: 2.8rem !important;
	}

	/*letter-spacing*/
	.ls_4{ letter-spacing: 2px; }
	.ls_5{ letter-spacing: 2px; }
	.ls_6{ letter-spacing: 2px; }
	.ls_7{ letter-spacing: 2px; }
	.ls_8{ letter-spacing: 2px; }

}/*END*/


li{ list-style:none; }
.center{ text-align:center; }
.text_left{ text-align:left; }
.text_right{ text-align:right; }
.left{ float:left; }
.right{ float:right; }
.clear{ clear:both; }

.op:hover{
	filter: alpha(opacity=60);
	-moz-opacity:060;
	opacity:0.60;
	transition: all 0.4s;
}
.op{
	transition: all 0.4s;
}


/*----------------------------------------
	layout
----------------------------------------*/

#container:before {
    content: "";
    position: fixed;
    width: 100%;
    height: 100%;
	left: 0;
    background-image: url(../../img/allshop/background.jpg);
    background-size: contain;
    z-index: -5;
}
#container{
	overflow: hidden;
}
@media screen and (min-width: 750px){
#container{
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
	box-shadow: 0 0 30px 0px rgb(0 0 0 / 30%);}
.sp_menu .clearfix{
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
	}
}
.main_frame{
	width: 100%;
	position: relative;
	box-sizing: border-box;
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
}

.main_inner_frame{
	width: 100%;
	position: relative;
	box-sizing: border-box;
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
	padding-right:4.5%;
	padding-left:4.5%;
}

.main_frame .inner_frame p{
	font-size:1.8rem;
}




.box_l{
	float: left;
	width: 48.5%;
}
.box_r{
	float: right;
	width: 48.5%;
}

.box_l50{
	float: left;
	width: 50%;
	box-sizing: border-box;
}
.box_r50{
	float: right;
	width: 50%;
	box-sizing: border-box;
}


.box_r65{
	width:68%;
	max-width:780px;
	float:right;
}
.box_l65{
	width:68%;
	max-width:780px;
	float:left;
}

.box_r60{
	width:58.5%;
	float:right;
}
.box_l60{
	width:58.5%;
	float:left;
}
.box_r40{
	width:38.6%;
	float:right;
}
.box_l40{
	width:38.85%;
	float:left;
}


.lp_in_frame{
	padding-right: 55px;
	padding-left: 55px;
	box-sizing: border-box;
	/*max-width: 640px;*/
	margin-left: auto;
	margin-right: auto;
}



@media print, screen and (min-width: 770px){

	.inner_frame{
		margin-right: 30px;
		margin-left: 30px;
	}

}/*END*/

@media print, screen and (min-width: 600px){

	.sp_br{
		display: none;
	}

}/*END*/

@media screen and (max-width: 769px){

	.inner_frame{
		margin-right: 25px;
		margin-left: 25px;
	}

}/*END*/

@media screen and (max-width: 599px){

	.inner_frame{
		margin-right: 3%;
		margin-left: 3%;
	}
	.pc_br{
		display: none;
	}

	.main_frame .inner_frame p{
		font-size:1.4rem;
		line-height: 1.8;
	}

	.sp_text_left{
		text-align: left;
	}

	.lp_in_frame{
		padding-right: 6.5%;
		padding-left: 6.5%;
	}


}/*END*/


/*----------------------------------------
	header
----------------------------------------*/

header{
	position: relative;
}
.drawer{
	position: fixed;
	background: rgba(0, 0, 0, 0.8);
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	color: #d0c077;
	display: flex;
	justify-content: center;
	visibility: hidden;
	opacity: 0;
	transform: translateX(100%);
	transition: 0.5s ease-in-out;
	z-index: 50;
}
.drawer ul{
	text-align: center;
	padding-top: 100px;
}
.drawer ul li{
	position: relative;
	transform: translateX(-150px);
	transition: transform 0.5s ease;
}
.drawer ul li:nth-child(2){ transition-delay: 0.15s; }
.drawer ul li:nth-child(3){ transition-delay: 0.25s; }
.drawer ul li:nth-child(4){ transition-delay: 0.35s; }
.drawer ul li:nth-child(5){ transition-delay: 0.45s; }
.drawer ul li:nth-child(6){ transition-delay: 0.55s; }
.drawer ul li:nth-child(7){ transition-delay: 0.65s; }
.drawer ul li:nth-child(8){ transition-delay: 0.4s; }
.drawer ul li:nth-child(9){ transition-delay: 0.45s; }
.drawer ul li:nth-child(10){ transition-delay: 0.5s; }
.drawer ul li:nth-child(11){ transition-delay: 0.55s; }
.drawer ul li:nth-child(12){ transition-delay: 0.6s; }
.drawer ul li a{
	display: inline-block;
	font-size: 2rem;
	color: #eef2c1;
	text-decoration: none;
	padding: 15px;
}
.drawer ul li a:hover{
	animation: drawer 1.4s;
	color: #f8fbdb;
}
@keyframes drawer{
	0%{
		filter: none;
	}
	30%{
		filter: blur(0.8px);
	}
	100%{
		filter: none;
	}
}
.open .drawer{
	visibility: visible;
	opacity: 1;
	transform: translateX(0);
}
.open .drawer ul li{
	transform: translateX(0);
}
.head_lp .drawer_close{
	position: absolute;
	right: 15px;
	top: 15px;
	width: 40px;
	height: 40px;
	cursor: pointer;
}
.head_lp .drawer_close span{
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	background: #fff;
	height: 2px;
	width: 100%;
	transition: all 0.4s;
}
.head_lp .drawer_close span:nth-child(1){
	transform: rotate(45deg);
}
.head_lp .drawer_close span:nth-child(2){
	transform: rotate(-45deg);
}
.head_lp .drawer_close:hover span{
	background: #bd0d23;
}

@media screen and (max-width: 768px){

	.head_lp .drawer_close{
		width: 30px;
		height: 30px;
	}
	.drawer ul li a{
		font-size: 1.8rem;
	}


}



/*END*/




.btn_menu_works{
	position: fixed;
	width: 36px;
	height: 30px;
	right: calc(50% - 220px);
	top: 26px;
	cursor: pointer;
	transition: all 0.5s;
	z-index: 51;
}

.btn_menu_works span{
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background: #000;
	transition: all 0.4s;
}
.btn_menu_works .menu_color{
	background: #fff;
}
.btn_menu_works span:nth-child(1){
	top: 0;
}
.btn_menu_works span:nth-child(2){
	top: 14px;
}
.btn_menu_works span:nth-child(3){
	top: 28px;
}
.open .btn_menu_works span:nth-child(1){
	transform: rotate(45deg);
	top: 15px;
}
.open .btn_menu_works span:nth-child(2){
	opacity: 0;
}
.open .btn_menu_works span:nth-child(3){
	transform: rotate(-45deg);
	top: 15px;
}


.drawer_close{
	position: absolute;
	right: 20px;
	top: 20px;
	width: 40px;
	height: 40px;
	cursor: pointer;
}

.drawer_close span{
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	background: #967c46;
	height: 1px;
	width: 100%;
	transition: all 0.4s;
}
.drawer_close span:nth-child(1){
	transform: rotate(45deg);
}
.drawer_close span:nth-child(2){
	transform: rotate(-45deg);
}
/*END*/

/*----------------------------------------
	contents
----------------------------------------*/
.text_white{
	color: #fff;
}
.text_black{
	color:#000;
}
.text_gray{
	color: #595757;
}
.bg_black{
	background: #000;
}
.bg_white{
	background: #fff;
}

.bg_style{
	background: url(../../img/allshop/bg_stle01.jpg);
	background-size: contain;
}

.bg_brown{
	background: #604c3f;
}

.rela{
	position: relative;
}

.link_btn{
	position: absolute;
    width: 100%;
    text-align: center;
    bottom: 4%;
    left: 0;
}
.link_btn2{
	position: absolute;
    width: 100%;
    text-align: center;
    bottom: 7%;
    left: 0;
}

.border_red{
	border: 4px solid #e83928;
}


.text_break{
	word-break: break-all;
	word-wrap: normal;
}

@media screen and (max-width: 750px){
	.sp_respon90{
		width:90%;
	}
	.sp_respon40{
		width:40%;
	}
	.sp_respon25{
		width:25%;
	}



}/*END*/




@media screen and (max-width: 599px){
	.sp_respon80{
		width:80%;
	}

	.wave_btm{
		position: relative;
		top: -30px;
		z-index: 3;
	}
	.map_nmt{
		top: -15px;
	}

}/*END*/

/* slider */
.slider_float{
	position: absolute;
    bottom: 21%;
	width: 70%;
	height: auto;
	left: 50%;
	-webkit-transform: translate( -50%,0);
	-ms-transform: translate( -50%, 0);
	transform: translate( -50%, 0);
}
.slider_float2{
	position: absolute;
    bottom: 18%;
	width: 70%;
	height: auto;
	left: 50%;
	-webkit-transform: translate( -50%,0);
	-ms-transform: translate( -50%, 0);
	transform: translate( -50%, 0);
}



/*タブ*/
.tab {
	display:flex;
	justify-content: space-between;
}
.tab li {
  float: left;
  cursor: pointer;
  list-style: none;
}

.tab_inner{
  display: none;
}
.tab_inner.show {
  display: block;
}

.tab li:hover{
	transition: all 0.4s;
}

.tab li.show{
	transition: all 0.4s;
}




@media screen and (max-width: 599px) {
	.plan_inner .box_l,
	.plan_inner .box_r{
		width:100%;
	}

}/*END*/

/*access_btns*/
.access_ttl {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.btn_grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	padding: 20% 10% 8% 10%;
	gap: 20px;
}


/*----------------------------------------
	map
----------------------------------------*/

.map{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
	padding: 60% 0 0;
	text-align: center;
}
.map iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}
.map iframe:not(:target){
	left: 0\9;
	top: 0\9;
}
.map iframe{
	left: 0\9;
	top: 0\9;
}
@media all and (-ms-high-contrast: none) {
.map iframe{
		left: 50%\9 !important;
		top: 50%\9 !important;
	}
}
.map{ z-index: 2; }/*chrome対策*/

@media screen and (max-width: 599px) {

	.map{ padding: 60% 0 0; }

}
.map_float{
	position: absolute;
    bottom: 35%;
	width: 85%;
	left: 50%;
	-webkit-transform: translate( -50%,0);
	-ms-transform: translate( -50%, 0);
	transform: translate( -50%, 0);
}



/*----------------------------------------
	footer
----------------------------------------*/

.f_logo{
	max-width:498px;
	width:80%;
}
.copyright{
	background: #ebeae9;
	color: #828283;
	text-align: center;
	padding: 10px 0;
}


.btn_top{
	width: 77.93%;
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.sp_menu{
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 5;
}
.sp_menu .menu_btn{
	padding: 0;
}

.sp_menu .menu_btn li a{
	padding:0;
}
.sp_menu ul{
	width: 100%;
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
}
.sp_menu ul li{
	float: left;
	width: 50%;
	box-sizing: border-box;
	border-right: 1px solid #fff;
}
.sp_menu ul li:last-of-type{
	border-right: none;
}
.footer_btn{
	position: absolute;
    width: 100%;
    text-align: center;
    bottom: 14%;
    left: 0;
}
.footer_btn2{
	position: absolute;
    width: 100%;
    text-align: center;
    bottom: 23%;
    left: 0;
}
/* map 
.map{
	position: absolute;
	margin: 0 auto;
	width: 80%;
	height: 450px;
    bottom: 30%;
    left: 0;
}
*/
.fixed_tel{
	background: rgba(255,255,255,0.9);
	text-align: center;
	padding: 15px 0;
}
.fixed_tel p{
	line-height: 1.2;
}
.fixed_tel a{
	text-decoration: none;
	color: #333;
	font-size: 3rem;
	letter-spacing: 1px;
}
footer.sumai{
	background-color: #fff;
	padding: 8px 0;
}
.ribbon_l{
	position: fixed;
    top: 0;
    left: 0;
    background: url(../../img/allshop/background-rbn_r.png) center top repeat-y;
    background-size: 100%;
    height: 100vh;
    width: 4.5%;
    max-width: 50px;
    box-shadow: 0 0 8px 0px rgb(0 0 0 / 20%);
    z-index: 1;
}
.ribbon_l_02{
	position: fixed;
    top: 0;
    left: 0;
    background: url(../../img/sumaisodan/background-rbn_r.png) center top repeat-y;
    background-size: 100%;
    height: 100vh;
    width: 4.5%;
    max-width: 50px;
    box-shadow: 0 0 8px 0px rgb(0 0 0 / 20%);
    z-index: 1;
}
.ribbon_r{
	position: fixed;
    top: 0;
    right: 0;
    background: url(../../img/allshop/background-rbn_r.png) center top repeat-y;
    background-size: 100%;
    height: 100vh;
    width: 4.5%;
    max-width: 50px;
    box-shadow: 0 0 8px 0px rgb(0 0 0 / 20%);
    z-index: 1;
}
.ribbon_r_02{
	position: fixed;
    top: 0;
    right: 0;
    background: url(../../img/sumaisodan/background-rbn_r.png) center top repeat-y;
    background-size: 100%;
    height: 100vh;
    width: 4.5%;
    max-width: 50px;
    box-shadow: 0 0 8px 0px rgb(0 0 0 / 20%);
    z-index: 1;
}
@media screen and (max-width: 751px){
	.ribbon_l,.ribbon_r,.ribbon_l_02,.ribbon_r_02{
		display: none;
	}
}
@media screen and (max-width: 769px){
	.sp_menu .menu_btn li img{
		display: block;
		margin-left: auto;
		margin-right: auto;
		width: 100%;
	}


}/*END*/

@media screen and (max-width: 599px){
	.copyright{
		font-size: 1.1rem !important;
	}

	.sp_menu .menu_btn li a{
		padding: 0;
	}

}/*END*/
@media screen and (max-width: 768px){
	　.btn_menu_works{
		/*height: 24px;*/
		top: 16px;
		/*background: #aec47f;*/
	}
	.btn_menu_works span:nth-child(2){
		top: 11px;
	}
	.open .btn_menu_works span:nth-child(1){
		top: 20px;
	}
	.open .btn_menu_works span:nth-child(3){
		top: 20px;
	}


	.btn_menu_works{
		width: 46px;
		height: 41px;
		right: 10px;
		top: 13px;
	}

	.btn_menu_works span{
		width: 70%;
		left: 15%;
	}

	.btn_menu_works span:nth-child(1){
		top: 8px;
	}
	.btn_menu_works span:nth-child(2){
		top: 19px;
	}
	.btn_menu_works span:nth-child(3){
		top: 32px;
	}

}/*END*/


.frame{
	background-color: #fff;
}


.frame .aside_bnr_list{
	margin: 0 auto;
	width: 80%;
	padding-bottom: 10px;
}
