
/***********************************************************************************************************************

city.css

***********************************************************************************************************************/

.mx700{
	width: 100%;
	max-width: 700px;
	margin: 0 auto;
}

.mx800{
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}


.sec_edo{
	position: relative;
	margin: 5% 0 0;
}
.sec_redevelop{
	margin-top: 8%;
}
.develop_box{
	margin-top: 8%;
}



@media screen and (max-width: 767px) {
.sec_edo{
	margin: 8% 0 0;
}
.sec_redevelop{
	margin-top: 15%;
}
.develop_box{
	margin-top: 15%;
}
}



/*** hd **********************************/
.hd{
	position: relative;
}
.hd figure{
	position: relative;
}
.hd figure figcaption{
	position: absolute;
	right: 0.5em;
	bottom: 0.5em;
	color: #fff;
	text-align: right;
}
.hd img{
	width: 100%;
	height: auto;
}
.hd .pc{}
.hd .sp{ display: none;}


@media screen and (max-width: 767px) {
.hd .pc{ display: none;}
.hd .sp{ display: block;}
}



/*** h1〜  **********************************/
h1.h1_ttl{
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 96%;
	font-size: 26px;
	font-size: clamp(15px, 2.6vw, 26px);
	color: #fff;
	text-align: center;
}
h1.h1_ttl .en{
	display: block;
	font-size: 180%;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0.15em;
}
h1.h1_ttl .jp{
	display: inline-block;
	padding-bottom: 0.2em;
	border-bottom: 1px solid #fff;
}

h2.h2_ttl{
	font-size: 32px; /*36px*/
	font-size: clamp(22px, 3.2vw, 32px); /* clamp(22px, 3.6vw, 36px) */
	font-weight: 500;
	text-align: center;
	line-height: 1.6em;
	letter-spacing: 0.1em;
	margin-bottom: 1em;
	padding-bottom: 0.5em;
	border-bottom: 1px solid #000;
}

h3.h3_city{
	font-size: 26px; /*24px*/
	font-size: clamp(20px, 2.6vw, 26px); /*clamp(20px, 2.4vw, 24px)*/
	font-weight: 500;
	text-align: center;
	line-height: 1.6em;
	letter-spacing: 0.1em;
	color: #2f4571;
	padding-bottom: 0.5em;
	margin-bottom: 1em;
	border-bottom: 1px solid #000;
}

h3.h3_city .num{
	display: block;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 200%; /*120%*/
	color: #000;
	margin-bottom: 0.2em;
}
h3.h3_city .num.skyblue{ color: #54c3f1;}
h3.h3_city .num.pink{ color: #df7ea9;}
h3.h3_city .num.orange{ color: #f08300;}
h3.h3_city .num.green{ color: #72a57a;}
h3.h3_city.clr_000{ color: #000;}



h3.h3_effect{
	font-size: 26px;
	font-size: clamp(20px, 2.6vw, 26px);
	font-weight: 500;
	text-align: center;
	line-height: 1.6em;
	letter-spacing: 0.5em;
	color: #2f4571;
	margin-bottom: 1em;
}

h4.h4_atsumeki{
	font-size: 22px;
	font-size: clamp(18px, 2.2vw, 22px);
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.1em;
	margin-bottom: 1em;
}

h4.h4_effect{
	font-size: 20px;
	font-size: clamp(16px, 2.0vw, 20px);
	font-weight: 500;
	line-height: 1.6em;
	letter-spacing: 0.1em;
	color: #fff;
	padding-bottom: 0.6em;
	margin-bottom: 0.8em;
	border-bottom: 1px solid rgba(255,255,255,0.6);
}

p.p_lead{
	font-size: 18px;
	font-size: clamp(16px, 1.8vw, 18px);
	line-height: 2em;
	text-align: center;
}
p.p_cate{
	text-align: justify;
	padding-top: 0.5em;
}

.clr_fff{
	color: #fff;
}
.shadow{
	text-shadow: 0 0 5px #000,0 0 5px #000,0 0 5px #000;
}



@media screen and (max-width: 767px) {
h3.h3_effect{
	letter-spacing: 0.3em;
}
p.p_lead{
	text-align: justify;
}
p.p_lead .resp_autowrap{
	display: inline;
}
}



/*** map_edo **********************************/
.map_edo{
	position: relative;
	/*margin-top: -15%;*/
}
/*.map_edo .inner{
	position: absolute;
	top: 15%;
	left: 50%;
	transform: translateX(-50%);
	width: 60%;
	max-width: 620px;
	box-shadow: 10px 10px 10px rgba(0,0,0,0.3);
}*/
.map_edo img{
	width: 100%;
	height: auto;
}

.map_edo figcaption{
	position: absolute;
	right: 0.5em;
	bottom: 0.5em;
}



@media screen and (max-width: 767px) {
/*.map_edo{
	margin-top: 10%;
}
.map_edo .inner{
	top: 0;
	width:70%;
}*/
}



/*** fig_develop **********************************/
.fig_develop{
	position: relative;
	margin-top: 3%;
}
.fig_develop figcaption{
	position: absolute;
	right: 0.5em;
	bottom: 0.5em;
}
.fig_develop figcaption.outside{
	position: relative;
	right: auto;
	bottom: auto;
	text-align: right;
	padding-top: 0.5em;
}



/*** place_box **********************************/
.place_box{
	display: flex;
	justify-content: space-between;
	flex-flow: wrap;
	margin-top: 5%;
}
.place_box_map{
	width: 56.640625%;
}
.place_box_txt{
	width: 40.0390625%;
}


@media screen and (max-width: 767px) {
.place_box{
	margin-top: 10%;
}
.place_box_map{
	width:100%;
}
.place_box_txt{
	width: 100%;
	padding-top: 2em;
}
}



/*** list_place **********************************/
.list_place{
	margin-top: 0.5em;
}
.list_place li{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 16px;
	font-size: clamp(14px, 1.6vw, 16px);
	padding-bottom: 0.5em;
}
.list_place li .num{
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	line-height: 1.2em;
	color: #fff;
	text-align: center;
	margin-right: 0.2em;
	border-radius: 50%;
	background-color: #000;

}



/*** fig_hanrei **********************************/
.fig_hanrei{
	width: 100%;
	max-width: 410px;
	padding: 2em 0 1.5em;
}



/*** atsumeki_box **********************************/
.atsumeki_box{
	position: relative;
	margin-top: 5%;
	background-color: #fff;
}
.atsumeki_box .inner{
	width: 90%;
	max-width: 970px;
	margin: 0 auto;
	padding: 3em 0 2em;
}

@media screen and (max-width: 767px) {
.atsumeki_box .inner{
	padding: 2em 0 0;
}

}


/*** list_atsumeki **********************************/
.list_atsumeki{
	display: flex;
	justify-content: space-between;
	flex-flow: wrap;
}
.list_atsumeki li{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 14px;
	font-size: clamp(12px, 1.4vw, 14px);
	margin-bottom: 1em;
}
.list_atsumeki li.col2{
	width: 48.762886%;
}
.list_atsumeki li ul{
	display: flex;
	justify-content: space-between;
	flex-flow: wrap;
}
.list_atsumeki li ul li.col2_sub{
	width: 47.568710%;
}

.list_atsumeki li figure{
	position: relative;
}
.list_atsumeki li figure figcaption{
	position: absolute;
	top: 1em;
	left: 1em;
	font-size: 80%;
	color: #fff;
	padding: 0.2em 0.4em;
	background-color: #000;
}


@media screen and (max-width: 767px) {
.list_atsumeki li.col2{
	width: 100%;
}
}




/*** effect_wrap **********************************/
.effect_wrap{
	margin-top: 6%;
}

@media screen and (max-width: 767px) {
.effect_wrap{
	margin-top: 10%;
}
}




/*** list_effect **********************************/
.list_effect{
	display: flex;
	justify-content: space-between;
	flex-flow: wrap;
}
.list_effect li{
	width: 32.03125%;
	background-color: #2f4571;
}
.list_effect li .inner{
	padding: 1.6em;
}
.list_effect li .photo{
	position: relative;
}
.list_effect li .photo figcaption{
	position: absolute;
	right: 0.5em;
	bottom: 0.5em;
}

.list_effect li p{
	text-align: justify;
}
.list_effect li img{
	width: 100%;
	height: auto;
}



@media screen and (max-width: 767px) {
.list_effect li{
	width: 100%;
	margin-top: 8%;
}
.list_effect li:first-child{
	margin-top: 0;
}
}




/*** fig_cg **********************************/
.fig_cg{
	position: relative;
	margin-top: -10%;
}
.fig_cg figcaption{
	position: absolute;
	right: 0.5em;
	bottom: 0.5em;
}
.fig_cg img{
	width: 100%;
	height: auto;
}




/*************************************************************************************
*************************************************************************************

print

*************************************************************************************
**************************************************************************************/

@media print {

}