/*
 * base css 
 * pc width 1000px fixed
 */

@media (max-width: 599px) {
}

@media (min-width: 600px) and (max-width:959px) {
}

@media (min-width: 960px) {
}

@media (max-width: 480px) {
}

@media (min-width: 481px) and (max-width:767px) {
}

@media (min-width: 768px) and (max-width:959px) {
}

@media (min-width: 960px) {
}

@media (max-width: 767px) {
}

@media (min-width: 768px) {
}

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

@media (max-width: 767px) {

}

@media (min-width: 768px) {
	article { padding: 0 1.5em; }
}

/* ---------------------------------------- article h2 */

article h2 {
	position: relative;
	text-align: center;
	margin: 0 0 3em;
}
article h2 em {
	color: #F3f3f3;
	font-family: "Lilita One", sans-serif;
}
article#philosophy h2 em {
	color: #F0D541;
}
article h2 span {
	color: #FC9913;
	font-weight: 600;
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
article#philosophy h2 span {
	color: #000;
}

@media (max-width: 767px) {
	article h2 em {
		font-size: clamp(4.4rem, 1.139rem + 8.05vw, 8rem);
	}
	article h2 span {
		font-size: clamp(1.8rem, 0.678rem + 2.24vw, 2.8rem);
	}
}

@media (min-width: 768px) {
	article h2 em {
		font-size: clamp(7rem, -1.832rem + 12.93vw, 10rem);
	}
	article h2 span {
		font-size: clamp(2.4rem, -0.155rem + 3.45vw, 3.2rem);
	}
}

/* ---------------------------------------- property */

#property .inner-s .inside {
	line-height: 2;
	margin: 0 0 5em;
}
#property .inner-s .inside p + p {
	margin: .5em 0 0;
}

#property table {
	width: 100%;
}
#property table th,
#property table td {
	border-top: 1px #FC9913 solid;
	border-bottom: 1px #FC9913 solid;
	line-height: 2.5;
	font-weight: 500;
	vertical-align: middle;
}
#property table th { font-weight: 600; }
#property table th span { color: #FC9913; }

@media (max-width: 767px) {

	#property { margin: 0 0 5em; }

	#property table {
		border-top: 1px #FC9913 solid;
		font-size: clamp(1.3rem, 0.085rem + 3.64vw, 1.5rem);
	}
	#property table th,
	#property table td {
		display: block;
		line-height: 1.8;
	}
	#property table th {
		padding: 1em;
		border-bottom: none;
		border-top: none;
	}
	#property table td {
		padding: 0 1em 1em 1em;
		border-top: none;
	}
}

@media (min-width: 768px) {

	#property { margin: 0 0 8em; }
	#property .inner-s { max-width: 780px; }
	#property .inner { max-width: 1000px; }

	#property table {
		font-size: clamp(1.3rem, 0.192rem + 1.29vw, 1.6rem);
	}
	#property table th {
		width: 16.5em;
		padding: 1.5em;
	}
	#property table td {
		padding: 1.25em 1em 1.25em 0;
	}
}

#property table td a {
	text-decoration: underline;
	white-space: nowrap;
}

/* ---------------------------------------- case */

#case ul.caselist {
	display: flex;
	flex-wrap: wrap;
}
#case ul.caselist li { text-align: center; }
#case figure img {
	border-radius: 1em;
	margin: 0 0 1em;
}
#case ul.caselist li h3 {
	color: #fff;
	background: #DC000C;
	padding: .5em 1em;
	margin: 0 0 1em;
	border-radius: .5em;
}

@media (max-width: 599px) {

	#case ul.caselist { justify-content: center; }

	#case ul.caselist li:nth-child( n+2 ) { 
		margin-top: 2em;
	}
}

@media (min-width: 600px) and (max-width:767px) {

	#case ul.caselist li { 
		width: 48%;
		margin-right: 4%;
	}
	#case ul.caselist li:nth-child( 2n+2 ) { 
		margin-right: 0;
	}
	#case ul.caselist li:nth-child( n+3 ) { 
		margin-top: 2em;
	}
}

@media (min-width: 768px) {

	#case ul.caselist li { 
		width: 31%;
		margin-right: 3.5%;
	}
	#case ul.caselist li:nth-child( 3n+3 ) { 
		margin-right: 0;
	}
	#case ul.caselist li:nth-child( n+4 ) { 
		margin-top: 2em;
	}
}

/* ---------------------------------------- contact */

#contact { margin: 5em 0 0; }
#contact .inside {
	max-width: 710px;
	background: #FCE879;
	padding: 2em;
	margin: 0 auto;
	border-radius: 1em;
}

#contact h3 {
	position: relative;
	margin: 0 0 3em;
}
#contact h3 em {
	color: #F0D541;
	font-family: "Lilita One", sans-serif;
}
#contact h3 span {
	font-weight: 600;
	position: absolute;
	bottom: 0;
	left: 0;
}

#contact .inside ul {
	line-height: 1.2;
}
#contact .inside ul ul { margin: 0 0 0 1em; }
#contact .inside ul li + li { margin: 1em 0 0; }

@media (max-width: 767px) {
	#contact h3 em {
		font-size: clamp(3.2rem, -4.545rem + 32.73vw, 5rem);
	}
}

@media (min-width: 768px) {

	#contact .inside { 
		width: 71%; 
		padding: 2em 2.5em;
	}
	#contact h3 em {
		font-size: clamp(4.4rem, -0.56rem + 6.9vw, 6rem);
	}
	#contact .inside {
		display: flex;
		justify-content: space-between;
		align-items: start;
	}
	#contact .inside ul li br { display: none; }
}


@media (max-width: 767px) {
}

@media (min-width: 768px) {
}