@charset "utf-8";
sup{
	font-size:.7em;
	vertical-align: super;
}
/*--------------- header ---------------*/
#pHeader {
	width: 100%;
	min-width: 960px;
	height: 320px;
	background: url(../images/casestudy_header.jpg) no-repeat right bottom;
	background-size: cover;
	position: relative;
}

#pHeader h2,
#pHeader2 h2 {
	margin-left: 5%;
	padding: 110px 0 30px;
	font-size: 46px;
	font-weight: 500;
	letter-spacing: 0.05em;
}

#pHeader h2 + p {
	margin-left: 5%;
	font-size: 20px;
}
#pHeader2 sup{
	font-size:.5em;
}
#pHeader2 .note{
	margin-top: 1em;
	text-align: center;
}


/*detail page*/

#pHeader2 h2 {
	margin: 0 auto 60px;
	padding: 90px 0 0;
	text-align: center;
}

#pHeader2 h2 span {
	display: block;
	width: 1.6em;
	margin: 30px auto 0;
	padding-top: 30px;
	font-size: 35px;
	border-top: solid 1px #cec192;
}

#pHeader2 .mincho {
	font-size: 28px;
	text-align: center;
}

@media screen and (max-width:1150px) and (min-width:768px) {
	#pHeader {
		background-position: 70% bottom;
	}
}

@media screen and (max-width:767px) {
	#pHeader {
		min-width: 0;
		background-position: left 45% bottom;
		display: flex;
		flex-flow: column nowrap;
		justify-content: center;
	}

	@media screen and (orientation: portrait) {
		#pHeader {
			height: 30vh;
		}
	}

	@media screen and (orientation: landscape) {
		#pHeader {
			height: 60vh;
		}
	}

	#pHeader h2 {
		margin-bottom: 0.6em;
		padding: 0;
		font-size: 1.8em;
	}

	#pHeader h2 + p {
		font-size: 1em;
	}

	#pHeader2 h2 {
		margin: 0 auto 30px;
		padding: 40px 0 0;
		font-size: 1.8em;
	}

	#pHeader2 h2 > span {
		margin: 0.5em auto 0;
		padding-top: 10px;
		font-size: 0.9em;
	}

	#pHeader2 .mincho {
		font-size: 1.3em;
	}
}


/*--------------- section ---------------*/

/***** caestudy top *****/
#contents {
	padding: 80px 0 0;
}

#contents .lead {
	margin-bottom: 40px;
	text-align: center;
	font-size: 18px;
	line-height: 1.9em;
}

#caseList {
	max-width: 1440px;
	margin: 0 auto;
	padding-bottom: 70px;
}

#caseList .flexBetween {
	width: 90%;
	margin: 0 auto;
}

#caseList .flexBetween > li {
	width: 47%;
	position: relative;
}

#caseList .flexBetween > li:nth-child(n+3) {
	margin-top: 60px;
}

#caseList .thumb {
	width: 100%;
	height: 0;
	padding-top: 53%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

#caseList p.num,
#casestudyNav p.num {
	margin-top: 25px;
	padding-left: 15px;
	border-left: solid 1px #cec192;
	font-size: 23px;
	font-family: 'Roboto Condensed', sans-serif;
	letter-spacing: 0.1em;
}

#caseList h3,
#casestudyNav h3 {
	margin: 20px auto 25px;
	font-size: 18px;
	line-height: 1.6em;
	font-weight: 300;
	letter-spacing: 0.05em;
}
#casestudyNav p.note{
	font-size:.7em;
	line-height: 1.5;
	margin-top: .5em;
}

#caseList h3 br.rsp {
	display: none;
}

.profile li {
	padding: 13px 0;
	font-size: 13px;
	border-bottom: solid 1px #ddd;
	line-height: 1.6em;
}

/***** caestudy detail *****/
#profile {
	margin-bottom: 100px;
	align-items: center;
}

#beforeImg {
	width: 360px;
	margin-right: 60px;
	position: relative;
}

#afterImg {
	width: 95%;
	margin: 0 auto;
	position: relative;
}

#afterImg span {
	width: 30%;
	display: block;
	float: left;
	margin-bottom: 2%;
}

#afterImg span:first-child {
	width: 68%;
	margin-right: 2%;
}

#beforeImg::before,
#afterImg::before {
	width: 4.5em;
	padding: 7px 0;
	line-height: 1;
	color: #fff;
	background-color: #000;
	text-align: center;
	font-size: 1.1em;
	font-family: 'Roboto Condensed', sans-serif;
	position: absolute;
	top: 10px;
	left: 10px;
}

#beforeImg::before {
	content: 'Before';
	font-size: 0.95em;
}

#afterImg::before {
	content: 'After';
}

#comment {
	padding: 90px 0;
}

#comment p {
	width: 700px;
	margin: 0 auto;
	line-height: 2em;
	box-sizing: border-box;
}
#caseList p.note,
#comment p.note{
	font-size:.8em;
	margin-top: 1em;
}
#comment p.question {
	margin: 2em auto 5px;
	padding-left: 2em;
	font-weight: bold;
	position: relative;
}

#comment p.question:first-child {
	margin: 0 auto 5px;
}

#comment p.question::before {
	content: '';
	display: block;
	width: 1.5em;
	height: 1px;
	background-color: #000;
	position: absolute;
	left: 0;
	top: 1em;
}

@media screen and (max-width:767px) {
	#contents {
		padding: 40px 0 0;
	}

	#contents .lead {
		font-size: 1em;
	}

	#caseList {
		padding-bottom: 20px;
	}

	#caseList .flexBetween > li {
		width: 100%;
		margin-bottom: 15%;
	}

	.profile li {
		padding: 10px 0;
		font-size: 0.8em;
	}

	#caseList p.num,
	#casestudyNav p.num {
		margin-top: 15px;
		padding-left: 15px;
		font-size: 1.4em;
	}

	#caseList h3,
	#casestudyNav h3 {
		margin: 15px auto;
		font-size: 1.1em;
	}

	/***** caestudy detail *****/
	#profile .profile {
		width: 90%;
		margin-bottom: 0;
	}

	#beforeImg {
		width: 50%;
		min-width: 230px;
		margin-right: 0;
		margin-bottom: 15px;
	}

	#afterImg span {
		width: 100%;
	}

	#afterImg span:first-child {
		width: 100%;
		margin-right: 0;
	}

	#comment {
		padding: 60px 0;
	}

	#comment p {
		width: 85%;
		margin: 0 auto;
		line-height: 2em;
		box-sizing: border-box;
		font-size: 0.85em;
	}
}


/***** casestudyNav *****/
#casestudyNav {
	background-color: #e8e8e4;
}

#casestudyNav p.num {
	margin-top: 15px;
}

#casestudyNav h3 {
	margin: 15px auto 0;
	font-size: 16px;
}

#casestudyNav li {
	width: 220px;
}

#casestudyNav .now {
	opacity: 0.6;
}

#casestudyNav .now a {
	pointer-events: none;
	display: block;
}

#casestudyNav .now img {
	background-color: #000;
	opacity: 0.8;
}

/***** spNav *****/
#spNav {
	background-color: #fff;
}

@media screen and (max-width:767px) {
	#casestudyNav li {
		margin-bottom: 30px;
	}

	#casestudyNav p.num {
		margin-top: 10px;
		font-size: 1.2em;
	}

	#casestudyNav h3 {
		margin: 10px auto 0;
		font-size: 0.85em;
	}

	#casestudyNav h3 br {
		display: none;
	}

	#casestudyNav li {
		width: 47%;
	}
}
