@charset "utf-8";

/*----------------------------------------
	全体
----------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&family=Zen+Maru+Gothic:wght@400;500;700;900&display=swap');
html{
	/* font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif; */
	font-family: "Zen Maru Gothic", 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; }
img {
    image-rendering: -webkit-optimize-contrast;
}
/* .yumin {
	font-family: '游明朝体', "Yu Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Sawarabi Mincho", serif;
} */
.yugo{
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic;
}
.kaku{
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	font-style: normal;
}
.maru {
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 500;
	font-style: normal;
}
.noto{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
}
.poppins{
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-style: normal;
}
a{
	color:#f08044;
	transition: all 0.4s;
}
a:hover{
	color:#ffb085;
	transition: all 0.4s;
}
a img:hover{
	opacity: 0.7;
}
.blue{background: #083B6D}
.skyblue{background: #7ECEF4}
.gray{background: #e6e7e7}
.dark_gray{background-color: #434343}
.beige{background: #E5DDCB}
.max_respon{max-width: 100%;}
.bg_black{background-color: #000;}
.bg_gray{background: #f2f2f2}
.bg_white{background: #fff}
/*----------------------------------------
	text
----------------------------------------*/

p{ line-height: 2; }
.text_bold{ font-weight: bold; }
.text_normal{ font-weight: normal; }

.text_gray{ color: #7a7b7b; }
.text_red{ color: #9d2330; }
.text_d_red{ color: #b02727; }
.text_black{color: #000;}
.text_white{color: #fff;}

:root {
	--text11: clamp(1.1rem, 1.0vw, 1.1rem);
	--text12: clamp(1.2rem, 1.1vw, 1.2rem);
	--text13: clamp(1.3rem, 1.25vw, 1.3rem);
	--text14: clamp(1.4rem, 1.34vw, 1.4rem);
	--text15: clamp(1.4rem, 1.4vw, 1.5rem);
	--text16: clamp(1.4rem, 1.5vw, 1.6rem);
	--text18: clamp(1.5rem, 1.7vw, 1.8rem);
	--text20: clamp(1.6rem, 1.9vw, 2rem);
	--text21: clamp(1.7rem, 2vw, 2.1rem);
	--text22: clamp(1.7rem, 2.1vw, 2.2rem);
	--text24: clamp(1.8rem, 2.3vw, 2.4rem);
	--text25: clamp(1.8rem, 2.35vw, 2.5rem);
	--text26: clamp(1.9rem, 2.5vw, 2.6rem);
	--text28: clamp(1.9rem, 2.6vw, 2.8rem);
	--text30: clamp(2rem, 2.8vw, 3rem);
	--text32: clamp(2rem, 3vw, 3.2rem);
	--text34: clamp(2rem, 3.2vw, 3.4rem);
	--text35: clamp(2rem, 3.25vw, 3.5rem);
	--text36: clamp(2rem, 3.3vw, 3.6rem);
	--text38: clamp(2.1rem, 3.4vw, 3.8rem);
	--text40: clamp(2.2rem, 3.8vw, 4rem);
	--text50: clamp(2.7rem, 4.8vw, 5rem);
	--text60: clamp(3.2rem, 5.7vw, 6rem);
	--text78: clamp(4.1rem, 7.2vw, 7.8rem);
	--text90: clamp(4.5rem, 8.5vw, 9rem);
	--text100: clamp(5rem, 9.5vw, 10rem);
}
.text_11 { font-size: var(--text11); }
.text_12 { font-size: var(--text12); }
.text_13 { font-size: var(--text13); }
.text_14 { font-size: var(--text14); }
.text_15 { font-size: var(--text15); }
.text_16 { font-size: var(--text16); }
.text_18 { font-size: var(--text18); }
.text_20 { font-size: var(--text20); }

.text_21 { font-size: var(--text21); }
.text_22 { font-size: var(--text22); }
.text_24 { font-size: var(--text24); }
.text_25 { font-size: var(--text25); }
.text_26 { font-size: var(--text26); }
.text_28 { font-size: var(--text28); }
.text_30 { font-size: var(--text30); }
.text_32 { font-size: var(--text32); }
.text_34 { font-size: var(--text34); }
.text_35 { font-size: var(--text35); }
.text_36 { font-size: var(--text36); }
.text_38 { font-size: var(--text38); }
.text_40 { font-size: var(--text40); }
.text_50 { font-size: var(--text50); }
.text_60 { font-size: var(--text60); }
.text_78 { font-size: var(--text78); }
.text_90 { font-size: var(--text90); }
.text_100 { font-size: var(--text100); }
/*line-height*/
.lh_06{ line-height: 0.6; }
.lh_08{ line-height: 0.8; }
.lh_09{ line-height: 0.9; }
.lh_10{ line-height: 1.0 !important; }
.lh_11{ line-height: 1.1 !important; }
.lh_12{ line-height: 1.2 !important; }
.lh_13{ line-height: 1.3 !important; }
.lh_14{ line-height: 1.4 !important; }
.lh_15{ line-height: 1.5 !important; }
.lh_16{ line-height: 1.6 !important; }
.lh_17{ line-height: 1.7 !important; }
.lh_18{ line-height: 1.8 !important; }

/*letter-spacing*/
.ls_no{letter-spacing: normal;}
.ls_-3{ letter-spacing: -3px; }
.ls_-2{ letter-spacing: -2px; }
.ls_-125{ letter-spacing: -1.25px; }
.ls_-1{ letter-spacing: -1px; }
.ls_-025{ letter-spacing: -0.25px; }
.ls_-02{ letter-spacing: -0.25px; }
.ls_01{ letter-spacing: 0.1px; }
.ls_02{ letter-spacing: 0.2px; }
.ls_025{ letter-spacing: 0.25px; }
.ls_03{ letter-spacing: 0.3px; }
.ls_04{ letter-spacing: 0.4px; }
.ls_05{ letter-spacing: 0.5px; }
.ls_06{ letter-spacing: 0.6px; }
.ls_07{ letter-spacing: 0.7px; }
.ls_08{ letter-spacing: 0.8px; }
.ls_09{ letter-spacing: 0.9px; }
.ls_1{ letter-spacing: 1px; }
.ls_12{ letter-spacing: 1.2px; }
.ls_13{ letter-spacing: 1.3px; }
.ls_14{ letter-spacing: 1.4px; }
.ls_2{ letter-spacing: 2px; }
.ls_3{ letter-spacing: 3px; }
.ls_-01em{ letter-spacing: -0.1em; }
.text_r{text-align:right;}

a.link_tex{ color: #0199cc; }
a.link_tex:hover{ opacity: 0.7; }

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

	/*line-height*/
	.lh_19{ line-height: 1.9 !important; }
	.lh_20{ line-height: 2 !important; }
	.lh_21{ line-height: 2.1 !important; }
	.lh_22{ line-height: 2.2 !important; }
	.lh_23{ line-height: 2.3 !important; }
	.lh_24{ line-height: 2.4 !important; }
	.lh_25{ line-height: 2.5 !important; }
	.lh_26{ line-height: 2.6 !important; }
	.lh_28{ line-height: 2.8 !important; }
	.lh_30{ line-height: 3 !important; }
	.lh_32{ line-height: 3.2 !important; }
	.lh_34{ line-height: 3.4 !important; }
	.lh_36{ line-height: 3.6 !important; }

	/*letter-spacing*/
	.ls_4{ letter-spacing: 4px; }
	.ls_5{ letter-spacing: 5px; }
	.ls_6{ letter-spacing: 6px; }
	.ls_7{ letter-spacing: 7px; }
	.ls_8{ letter-spacing: 8px; }

}/*END*/

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

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

	/*line-height*/
	.lh_19,
	.lh_20,
	.lh_21,
	.lh_22,
	.lh_23,
	.lh_24,
	.lh_25{
		line-height: 1.8 !important;
	}

}/*END*/

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

	/*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_center{text-align: center;}
.text_left{ text-align:left; }
.text_right{ text-align:right; }
.clear{ clear:both; }

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

@media screen and (max-width: 599px){
	.text_center{text-align: left;}
	.text_right{ text-align:left; }
}/*END*/


/*----------------------------------------
	footer
----------------------------------------*/
.pc_menu {
	display: block;
    width: fit-content;
    position: fixed;
    right: -60px;
    bottom: 5vh;
    transition: .3s;
    z-index: 100;
    width: clamp(40px, 13vw, 60px);
}
.sp_menu{
	display: none;
}
.pc_menu,.sp_menu{
	z-index: 20;
}
.logo{
	max-width: 358px;
	width: 80%;
}
.tel{
	max-width: 284px;
	width: 75%;
}
@media screen and (max-width: 599px){
	.pc_menu{
		display: none;
	}
	.sp_menu{
		display: flex;
		position: fixed;
		bottom: -100px;
		transition: .3s;
	}
}
/*----------------------------------------
	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: 50px;
}
.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: 1.5rem;
	color: #fff;
	text-decoration: none;
	padding: 15px;
	line-height: 1.5;
}
.drawer ul li a:hover{
	animation: drawer 1.4s;
	color: #e1f2fa;
}
@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);
}
@media screen and (max-width: 768px){
	.drawer ul li a{
		font-size: 1.4rem;
	}


}/*END*/


.btn_menu_works{
    position: fixed;
    width: 50px;
    height: 50px;
    right: 15px;
    top: 15px;
    cursor: pointer;
    transition: all 0.5s;
    z-index: 51;
    background: #ee4300;
    border-radius: 50%;
    display: none;
}
.btn_menu_works span {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 50%;
    height: 1px;
    background: #fff;
    transition: all 0.4s;
    transform-origin: center;
}
.btn_menu_works span:nth-child(1) {
    transform: translate(-50%, -5px);
}
.btn_menu_works span:nth-child(2) {
    transform: translate(-50%, 5px);
    width: 40%;
    left: 55%;
}
.open .btn_menu_works{
    background: transparent;
}
.open .btn_menu_works span{
    top: 50%;
    left: 50%;
    width: 50%;
}

.open .btn_menu_works span:nth-child(1){
    transform: translate(-50%, -50%) rotate(45deg);
}
.open .btn_menu_works span:nth-child(2){
    transform: translate(-50%, -50%) rotate(-45deg);
}

@media screen and (max-width: 749px){
    .btn_menu_works {
        right: 10px;
    }
}
@media screen and (max-width: 549px){
    .btn_menu_works {
        width: 40px;
        height: 40px;
    }
	.btn_menu_works span:nth-child(1) {
    transform: translate(-50%, -3px);
	}
	.btn_menu_works span:nth-child(2) {
		transform: translate(-50%, 3px);
	}
}


/* ----------------------------------------------------------------------------------------- */
/* ---------------------- 
	common
 ---------------------- */

.inner_frame{
	max-width: 1080px;
	width: 100%;
	position: relative;
	box-sizing: border-box;
	margin-inline: auto;
	padding-right: 20px;
	padding-left: 20px;
}
.inner_frame1350{
	max-width: 1350px;
	width: 100%;
	margin-inline: auto;
}
.form_frame{
	max-width: 760px;
	width: 100%;
	margin-inline: auto;
}
.inner_frame_modal{
    max-width: 1220px;
    width: 100%;
    margin-inline: auto;
    box-sizing: border-box;
    padding-right: 20px;
    padding-left: 20px;
}
@media screen and (max-width: 768px){

	.inner_frame,.inner_frame_modal{
		padding-right: 3.5%;
		padding-left: 3.5%;
	}

}/*END*/

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

	.inner_frame,.inner_frame_modal{
		padding-right: 4.3%;
		padding-left: 4.3%;
	}

}/*END*/
 /* レイアウト */
#container{
	overflow: hidden;
}
.rela{
	position: relative;
}
.z_-1{
	z-index: -1;
}
.z_0{
	z-index: 0;
}
.z_1{
	z-index: 1;
}
.z_2{
	z-index: 2;
}
.z_3{
	z-index: 3;
}
.flex{
	display: flex;
}
.flex_wrap{
    display: flex;
    flex-wrap: wrap;
}
.flex_column{
    display: flex;
    flex-direction: column;
}
.j_between{
    justify-content: space-between;
}
.j_around{
    justify-content: space-around;
}
.al_center{
	align-items: center;
}
.al_end{
	align-items: end;
}
.gap2{
	gap: 2%;
	row-gap: 20px;
}
.gap3{
	gap: 3%;
	row-gap: 30px;
}
.gap4{
	gap: 4%;
	row-gap: 40px;
}
.gap1em{
	gap: 1em;
}
.grid2{
	display: grid;
	grid-template-columns: repeat(2,1fr);
}
.grid3{
	display: grid;
	grid-template-columns: repeat(3,1fr);
}
.grid4{
	display: grid;
	grid-template-columns: repeat(4,1fr);
}
.grid6{
	display: grid;
	grid-template-columns: repeat(6,1fr);
}
.w30{
	width: 30%;
}
.w40{
	width: 40%;
}
.w50{
	width: 50%;
}
.w60{
	width: 60%;
}
.w70{
	width: 70%;
}
.w80{
	width: 80%;
}
.w90{
	width: 90%;
}
.m_auto{
	margin: auto;
}
.m_inline{
	margin-inline: auto;
}
.block{
	display: block;
}

.block_768{
	display: none!important;
}
.sp_block{
	display: none;
}
.pc_block{
	display: block;
}
@media screen and (min-width: 600px) and (max-width: 768px){
	.block_768{
		display: block!important;
	}
}
@media screen and (max-width: 599px){
	.sp_mt_none{
		margin-top: 0!important;
	}
	.flex{
		flex-direction: column;
	}
	.w30,
	.w40,
	.w50,
	.w60,
	.w70,
	.w80,
	.w90{
		width: 100%;
	}

	.flex.reverse{
		flex-direction: column-reverse;
	}
	.grid2,.grid3{
		grid-template-columns: 1fr;
	}
	.grid4{
		grid-template-columns: repeat(2,1fr);
	}
	.grid6{
		grid-template-columns: repeat(3,1fr);
	}
	.between{
		flex-direction: column;
	}
	.sp_block{
		display: block;
	}
	.pc_block{
		display: none;
	}
}
/* 文字 */
.nowrap{
	white-space: nowrap;
}
.vertical {
   writing-mode: vertical-rl; /* 縦書き、右から左 */
   text-orientation: upright; /* 文字を正立させる */
}
.vertical_en {
   writing-mode: vertical-rl; /* 縦書き、右から左 */
}
.kakko_left {
    margin-left: -6px;
    margin-right: -2px;
}
.kakko_right {
	margin-left: -2px;
    margin-right: -6px;
}
span.block{
	display: block;
}
.text_orange{
	color: #fc6501;
}
.text_yellow{
	color: #fffd79;
}
.text_lightblue{
	color: #0d9ce5;
}
.text_gray{
	color: #707070;
}
.text_gray2{
	color: #6e6d6d;
}
.b_radius{
    border-radius: 9999px;
    width: max-content;
    padding: 3px 1em;
    box-sizing: border-box;
}
.f_w500{
	font-weight: 500;
}
/* 文字装飾 */
.emphasis {
    position: relative;
    width: fit-content;
    margin: auto;
}

.emphasis::before,
.emphasis::after {
	content: "";
    width: 35px;
    height: 1px;
    background: #fc6501;
    position: absolute;
    bottom: 44%;
}

.emphasis::before {
	transform: rotate(55deg);
    left: -1.5em;
}

.emphasis::after {
	transform: rotate(-55deg);
    right: -1.5em;
}
.b_dotted {
    position: relative;
    width: fit-content;
    margin-inline: auto;
    padding: 0 0.5em;
}
.b_dotted::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: -6px;
	width: 100%;
	height: 6px;
	background-image: radial-gradient(#fc6501 3px, transparent 3px);
	background-size: 12px 6px;
	background-repeat: repeat-x;
}
/* 背景 */
.bg_blue{
	background: #0677b1;
}
.bg_lightblue{
	background: #3ebdff;
}
.bg_whiteblue{
	background: #f4fcff;
}
.bg_whiteblue2{
	background: #f0faff;
}
.bg_orange{
	background: #f87c17;
}
/* デコレーション */
.deco{
	position: absolute;
}
/* ---------------------- 
	intro
 ---------------------- */
.intro_now img {
    max-width: 201px;
    width: 50%;
}
/* ---------------------- 
	choose
 ---------------------- */
.choose_bg{
	background: url(../images/choose_bg.jpg);
	background-size: cover;
}
.choose_deco {
	width: 10%;
	top: 1%;
	right: 1%;
}
/* ---------------------- 
	property
 ---------------------- */
.gochi{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	color: #fff;
	background: #f89117;
    padding: 7px 14px;
	box-sizing: border-box;
}
.check{
	position: absolute;
	bottom: 5px;
    right: 5px;
	max-width: 31px;
	width: 100%;
	aspect-ratio: 1/1;
}
.cat{
	gap: 10px;
}
.cat span{
	color: #0677b1;
	background: #fff;
	border: 2px solid #0677b1;
	padding: 3px 1em;
	box-sizing: border-box;
}
.property_deco01{
    width: 9.3%;
    top: -16%;
    left: 5%;
}
.property_deco02{
	width: 6.8%;
    top: 0%;
    right: 7%;
}
/* タブ */
.tab_box{
	display: grid;
    grid-template-columns: repeat(5, 1fr);
    border: 1px solid;
}
.tab_box li{
	padding: 1.5% 2%;
    border-right: 1px solid;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    cursor: pointer;
    min-height: 50px;
}
.tab_box li:last-child{
	border-right: unset;
}
.tab_box li.active{
	background: #000;
	color: #fff;
}
/* 物件一覧 */
.propery_grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 3%;
    row-gap: 5em;
	position:relative;
}
.propery_grid .grid_line{
    grid-column: 1 / -1;
    height: 20px;
    background-repeat: repeat-x;
    background-size: 25px 20px;
}
.propery_grid .grid_line.is-even{
    background-image: radial-gradient(#fc6501 3px, transparent 3px);
}
.propery_grid .grid_line.is-odd{
    background-image: radial-gradient(#0a8ed2 3px, transparent 3px);
}
.property_name_price{
	display: flex;
	gap: 5px;
	justify-content: space-between;
	align-items: end;
	min-height: 4em;
	font-weight: bold;
	border-bottom: 3px solid #0a8ed2
}
/* モーダルと背景の指定 */
.madori_modal{
	position: fixed;
    inset: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0, 0, 0, 50%);
    padding: 40px 0;
    overflow: auto;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    box-sizing: border-box;
}
.madori_modal.is-active{
	opacity: 1;
	visibility: visible;
}
.madori_modal_container{
	display: inline-block;
	position: relative;
	vertical-align: middle;
	max-width: 1350px;
	width: 100%;
	background: #fff;
}
.madori_btn_close {
	position: absolute;
	top: 0%;
	right: 0%;
	transform: translate(0%, -100%);
}
.js-modal-open{
	cursor: pointer;
}
/* モーダル：物件の詳細 */
.property_overview{
display: flex;
    flex-direction: column;
    max-width: 548px;
    width: 50%;
}
.property_overview > div:nth-child(1){
	background: #d9f2ff;
	padding: 3.5em 2em 1.5em 2em;
	box-sizing: border-box;
}
.property_overview > div:nth-child(2){
	background: #f0faff;
	padding: 2em;
	box-sizing: border-box;
}
.hashtag{
    background: #fff;
    padding: 1em 1.5em;
    box-sizing: border-box;
    display: flex;
	justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    max-width: 478px;
    width: 100%;
    margin-inline: auto;
}
.price_box{
    display: flex;
    gap: 10px;
    justify-content: space-between;
    align-items: end;
    border-bottom: 2px solid #0677b1;
    padding-bottom: 5px;
    margin-bottom: 10px;
    box-sizing: border-box;
}
.price_box > p:nth-child(1){
    border: 1px solid #0072ac;
    color: #0072ac;
    width: 100%;
    max-width: 60px;
    height: 100%;
    box-sizing: border-box;
    padding: 0.5em;
    margin: 0.5em;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.price_box > p:nth-child(2){
    line-height: 1;
    font-weight: 600;
    color: #f87c17;
    white-space: nowrap;
}

.price_frame{
	max-width: 380px;
    margin-inline: auto;
    width: 100%;
}
@media screen and (max-width: 768px){
	.propery_grid{
		grid-template-columns: repeat(2, 1fr);
		row-gap: 3em;
	}
	.madori_modal .flex{
		flex-direction: column;
	}
	.madori_modal .flex > .property_overview {
		max-width: 100%;
		width: 100%;
	}
	.madori_modal .flex > .w60{
		width: 100%;
	}
}
@media screen and (max-width: 599px){
	.cat{
		gap: 5px;
	}
	.cat span{
		padding: 3px 6px;
	}

	.propery_grid {
		row-gap: 1.5em;
	}
    .tab_box{
        grid-template-columns: repeat(2, 1fr);
    }
    .tab_box li:first-child{
        grid-column: 1 / -1;
        border-bottom: 1px solid #000;
        border-right: unset;
    }
	.tab_box li:nth-child(2),.tab_box li:nth-child(3){
		border-bottom: 1px solid #000;
    }
	.tab_box li:nth-child(3){
		border-right: unset;
	}
	.propery_grid .grid_line {
		height: 10px;
		background-size: 15px 10px;
	}
	.property_name_price {
        flex-wrap: wrap;
        min-height: 4.5em;
    }
	
	.price_frame .text_right{
		text-align: right!important;
	}
	.property_overview > div:nth-child(1) {
		padding: 3.5em 4.3% 1.5em 4.3%;
	}
	.property_overview > div:nth-child(2){
		padding: 2em 4.3%;
	}
}
@media screen and (max-width: 450px){
	.property_deco01 {
		left: 0%;
	}
	.property_deco02 {
		right: 0%;
	}
    .propery_grid {
        grid-template-columns: repeat(1, 1fr);
	}
	.property_name_price {
        min-height: unset;
    }
}
/* ---------------------- 
	merit
 ---------------------- */
.merit_bg{
	background: url(../images/merit_bg.jpg);
	background-size: cover;
}
.merit {
    position: absolute;
    top: 0;
    z-index: 1;
    padding: 5px 15px;
    box-sizing: border-box;
    line-height: 1;
}
.merit_bg .flex >div:nth-child(1) .merit{
	left: 0%;
}
.merit_bg .flex > div:nth-child(2) .merit{
	right: 0%;
}
.merit_box{
    padding: 5% 3%;
	box-sizing: border-box;
}
.merit_deco01 {
    width: 21.1%;
    bottom: 8%;
    right: 0%;
}
.merit_deco02{
    width: 11.2%;
    bottom: 1%;
    left: -9%;
}
.merit_deco03{
    width: 11.3%;
    bottom: 1%;
    right: -10%;
}
@media screen and (max-width: 1300px){
	.merit_deco02{
		left: 3%;
	}
	.merit_deco03{
		right: 3%;
	}
}
@media screen and (max-width: 599px){
	.merit_box.center{
		text-align: left;
	}
	.merit_bg .flex > div:nth-child(2) .merit{
		right: unset;
		left: 0%;
	}
}
/* ---------------------- 
	FAQ
 ---------------------- */
.faq_deco01 {
    width: 5.5%;
    bottom: 11%;
    left: 16%;
}
.faq_deco02{
	width: 7.3%;
    bottom: 13%;
    right: 17%;
}
/* 質問 */
.faq_box p{
    display: flex;
    font-weight: bold;
    gap: 10px;
}
.faq_q{
	font-size: clamp(1.7rem, 2.5vw, 2.6rem);
    color: #fff;
    line-height: 1.0;
    cursor: pointer;
    position: relative;
    padding: 2.5rem 4.5rem 2.5rem 2rem;
    background: #0677b1;
    align-items: center;
    display: flex;
    gap: 0.5em;
	box-sizing: border-box;
}
.faq_q::before,
.faq_q::after{
	content: "";
	position: absolute;
	right: calc(4.5rem / 2);
	top: 50%;
	width: 16px;
	height: 3px;
	background: #fff;
	transition: transform .3s;
	transform-origin: center;
}
/* ∨ */
.faq_q::before{
	transform: translateY(-50%) rotate(45deg);
	margin-right: 10px;
}

.faq_q::after{
	transform: translateY(-50%) rotate(-45deg);
}

/* ∧ */
.faq_q.is-open::before{
	transform: translateY(-50%) rotate(-45deg);
}

.faq_q.is-open::after{
	transform: translateY(-50%) rotate(45deg);
}
.faq_q,.faq_a{
	border: 1px solid #0677b1;
}
.faq_a{
	display: none;
	font-size: var(--text18);
    line-height: 1.5;
    padding: 3rem;
	box-sizing: border-box;
}
.qa_icon{
	width: 60px;
	flex-shrink: 0;
}
.faq_a span{
    margin-top: -0.5em;
}
.faq_a p{
	line-height: 1.5;
}
@media screen and (max-width: 599px){
	.faq_deco01 {
		width: 8%;
		left: 3%;
	}
	.faq_deco02 {
		width: 10.6%;
		right: 3%;
	}
	/* 質問 */
	.faq_q{
		padding: 15px 35px 15px 10px;
		line-height: 1.5;
	}
	.faq_box p {
		gap: 5px;
	}
	.faq_a {
		padding: 15px 10px;
	}
	.faq_q::before, .faq_q::after {
		width: 10px;
		right: 10px;
	}
	.faq_q::before {
		margin-right: 6px;
	}
	.qa_icon{
		width: 30px;
	}
}