/*
hazecho
Last Updated: 2025-12-02
Author matsu
*/
@charset "utf-8";


/*----------------------------------------
	text
----------------------------------------*/
body{
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ ゴシック', sans-serif;
}
p{ line-height: 2; }
.text_yu_min{ font-family:'游明朝体', 'Yu Mincho', YuMincho, 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro','ＭＳ Ｐ明朝','ＭＳ 明朝',serif; }
.text_15{ font-size: clamp(1.3rem,1.442vw,1.5rem);}
.text_16{ font-size: clamp(1.4rem,1.538vw,1.6rem); }
.text_18{ font-size: clamp(1.5rem,1.731vw,1.8rem); }
.text_28{ font-size: clamp(2rem,2.43vw,2.8rem); }
.text_36{ font-size: clamp(2.2rem,3.13vw,3.6rem); }

.ttl_560 img {
    max-width: 560px;
}
.ttl_430 img {
    max-width: 430px;
}
.ttl_300 img {
    max-width: 300px;
}
.ttl_250 img {
    max-width: 250px;
}
.gochi {
    max-width: 80px;
}
.ttl_center{
	margin-right: auto;
	margin-left: auto;
}

.text_center{
	text-align: center;
}


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

.inner_frame{
	width: 100%;
	max-width: 1190px;
	padding-right: 20px;
	padding-left: 20px;
	margin-right: auto;
	margin-left: auto;
	box-sizing: border-box;
}
@media screen and (max-width: 1000px) {

	.inner_frame{
		padding-right: 2.5%;
		padding-left: 2.5%;
	}

}/*END*/

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

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

}/*END*/

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

	.inner_frame{
		padding-right: 4.5%;
		padding-left: 4.5%;
	}

}/*END*/


/*----------------------------------------
	map
----------------------------------------*/
.map{
	position: relative;
	overflow: hidden;
	width: 100%;
	padding: 45% 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; }
}/*END*/

.bg_color{
	background: #fbf4db;
}
.abs{
	position: absolute;
}


/*----------------------------------------
	mv
----------------------------------------*/
/* .mv_bg{
	background-color: #f5f9e2;
} */


/*----------------------------------------
	concept
----------------------------------------*/
.m_t120{
	margin-top: 120px;
}
.sp_mt30{
	margin-top: 30px;
}

@media screen and (max-width: 768px){
	.m_t120{
		margin-top: 60px;
	}
}

@media screen and (max-width: 599px) {
	.m_t120{
		margin-top: 30px;
	}
	.sp_mt30{
		margin-top: 0px;
	}
}

.m_r7p{
	margin-right: 7%;
}

/*----------------------------------------
	plan
----------------------------------------*/
.w_90{
	max-width: 90%;
}

@media screen and (max-width: 599px) {
    .sp_grid_two {
        display: grid;
        grid-template-columns: 1fr;
    }
	/* .text_right{
		text-align: center;
	} */
	.w_90{
		max-width: 100%;
	}
}


/*----------------------------------------
	contact set
----------------------------------------*/
.contact_set{
	background-image: url(../../images/land_of_sale/land/hazecho/contact_bg.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.contact_set ul{
	display: grid;
	height: auto;
	grid-template-columns: repeat(3,1fr);
	gap: 50px;
}
.contact_set a{
	display: block;
}

@media screen and (max-width: 768px){
	.contact_set ul{
		gap: 30px;
	}
}/*END*/

@media screen and (max-width: 599px){
	.contact_set ul{
		display: block;
		max-width: 350px;
		margin-left: auto;
		margin-right: auto;
	}
	.contact_set ul li{
		margin-bottom: 20px;
	}
}/*END*/


/*----------------------------------------
	spec
----------------------------------------*/
.spec_point{
	display: grid;
	height: auto;
	grid-template-columns: repeat(3,1fr);
	gap: 50px;
}
.spec_list{
	display: grid;
	height: auto;
	grid-template-columns: repeat(4,1fr);
	gap: 50px;
}
.spec_bnr{
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
}

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

	.spec_list{
		gap: 30px;
	}
	.spec_point{
		gap: 30px;
	}

}/*END*/

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

	.spec_point{
		display: block;
	}
	.spec_point li{
		margin-bottom: 30px;
	}
	.spec_list{
		grid-template-columns: repeat(2,1fr);
		gap: 20px;
	}

}/*END*/


/*----------------------------------------
	location
----------------------------------------*/

.locaion_bg{
	background: var(--ao-color01)
}
.location_list > div{
	display: flex;
	justify-content: space-between;
	padding: 1em 10px;
	border-bottom: 1px solid #739f2d;
}
.location_list > div:first-of-type {
    border-top: 1px solid #739f2d;
}

.location_bottm{
	display: grid;
	grid-template-columns: 1fr auto;
}
@media screen and (max-width: 599px) {
	.location_bottm{
		grid-template-columns: 1fr;
		row-gap: 20px;
	}
	.sp_m_b20{
		margin-bottom: 20px;
	}
}
/*----------------------------------------
	access
----------------------------------------*/
@media screen and (max-width: 599px) {
	.sp_m_b30{
		margin-bottom: 30px;
	}
}

/*----------------------------------------
	outline
----------------------------------------*/
.outline_l{
	float: left;
	width: 47.82%;
}
.outline_r{
	float: right;
	width: 47.82%;
}
#outline table{
	line-height: 2;
	width: 100%;
	border-top: 1px solid #d9d9d9;
}
#outline th {
    font-weight: normal;
    text-align: left;
    background: #f6e9cf;
    border-bottom: 1px solid #d9d9d9;
    padding: 4px 10px;
    box-sizing: border-box;
    width: 150px;
}
#outline td{
	border-bottom: 1px solid #d9d9d9;
	padding: 4px 10px;
	box-sizing: border-box;
}

@media screen and (max-width: 599px){
	.outline_l,
	.outline_r{
		float: none;
		width: 100%;
	}
	.kigen th,
	.kigen td{
		display: block;
		width: 100% !important;
	}
	#outline td,
	#outline th{
		font-size: 1.3rem;
	}
	#outline th{
		width: 120px;
	}

}/*END*/

/* grid,flex */
.grid_two,
.grid_three,
.grid_four{
	display: grid;
	column-gap: 3.5%;
	row-gap: 30px;
}
.grid_two{
	grid-template-columns: repeat(2,1fr);
}
.grid_three{
	grid-template-columns: repeat(3,1fr);
}
.grid_four{
	grid-template-columns: repeat(4,1fr);
}
@media screen and (max-width: 599px) {
	.grid_two,
	.grid_three{
		grid-template-columns: repeat(1,1fr);
	}
	.grid_four{
		grid-template-columns: repeat(2,1fr);
	}
}
.flex_two{
	display: flex;
	justify-content: space-between;
}
.flex_two2{
	display: flex;
	justify-content: space-between;
}
.flex_two2 > div{
	width: 48.5%;
}
.flex_two.reverse{
	flex-direction: row-reverse;
}
.flex_two.al_center{
	align-items: center;
}
.flex_two > div{
	width: 48.5%;
}
.flex_access{
	display: flex;
	justify-content: space-between;
}
.flex_access > div{
	width: 45.5%;
}
.flex_location{
	display: flex;
	justify-content: space-between;
}
.flex_location > div{
	width: 47.5%;
}

@media screen and (max-width: 599px) {
	.flex_two,
	.flex_two.reverse{
		flex-direction: column;
		row-gap: 30px;
	}
	.flex_two2{
        flex-direction: column-reverse;
		row-gap: 30px;
	}
	.flex_two > div{
		width: 100%;
	}
	.flex_two2 > div{
		width: 100%;
	}
	.sp_dis_contents{
		display: contents;
	}
	.flex_location{
		flex-direction: column;
	}
	.flex_location > div{
		width: 100%;
	}
	.flex_access{
		flex-direction: column;
	}
	.flex_access > div{
		width: 100%;
	}
}

.sp_archive_link_layout{
	display: flex;
	flex-direction: column-reverse;
	position: relative;
}

@media screen and (max-width: 599px) {
	.sp_archive_link_layout{
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	.sp_archive_link_layout_text{
		width: 55%;
	}
	.sp_archive_link_layout_img{
		width: 42%;
	}
}

.parent {
	display: flex;
	width: 100%;
	height: auto;
	position: relative; /* 相対配置（念のため） */
}
.full_width {
	flex-grow: 1; /* 親の幅いっぱい */
	order: 1; /* 後に配置 */
}
.partial_width {
	width: 39.63%;
	order: 2; /* 前に配置 */
	margin-left: auto; /* 右側へ移動 */
}
.spec_bnr{
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (max-width: 768px){
	.spec_point{
		gap: 30px;
	}
}/*END*/

@media screen and (max-width: 599px){
	.spec_point{
		display: block;
	}
	.spec_point li{
		margin-bottom: 30px;
	}
	.soraene_img,
	.soraene_text{
		float: none;
		width: 100%;
	}
	.chouki_frame .soraene_text{
		margin-left: auto;
		margin-right: auto;
		width: 90%;
	}
}/*END*/



.flexbox {
	display: flex;
	justify-content: center;
	gap: 3em;
}
.plan_haze {
	max-width: 550px;
	width: 100%;
}
.plan_inner {
	width: 50%;
}
.plan_inner img {
	display: block;
	margin: 0 auto;
}
.merit {
	display: block;
	max-width: 750px;
	width: 100%;
	margin: 0 auto;
}
.location_copy{
	max-width: 500px;
	width: 100%;
}
.text_12 {
	font-size: 1.2rem;
}
.access_train {
	max-width: 511px;
	width: 100%;
}
.al_start{
	align-items: flex-start;
}
.outline_inner {
	width: 50%;
}
.contact_ttl {
	display: block;
	max-width: 600px;
	width: 100%;
	margin: 0 auto;
}
.sp_none {
	display: block;
}
.spec_copy {
	display: block;
	max-width: 500px;
	width: 100%;
	margin: 0 auto;
}
.concept_ttl {
	display: block;
	max-width: 550px;
	width: 100%;
	margin: 0 auto;
}
@media screen and (max-width: 599px){
	.sp_none {
		display: none;
	}
	.flexbox {
		flex-direction: column;
	}
	.outline_inner,
	.plan_inner {
		width: 100%;
	}
	.location_copy {
		width: 160%;
	}
}