.main_contents {
	padding: 0;
}
.case_left {
	align-items: stretch;
}

.case_section h2 {
	font-size: 1.5em!important;	
}

.clumn_wrap {
	background: #f4f6fb;
	padding-top: 30px;
}

.clumn_wrap article {
	background: #FFF;
	padding: 40px 50px;
}

.case_main_ttl {
	font-size: 2em;
	color: #12347C;
	margin: 15px 0;
}

.narrow_case {
	max-width: 950px!important;
}

#case-point {
	background: #c3dcba;
	border-radius: 15px;
	padding: 5px 30px 25px 30px;
	margin-top: 40px;
}

#case-point h2 {
	background: transparent;
	border-bottom-width: 0px;
	color: #000;
	text-align: center;
	margin: 5px 0;
	font-size: 1.2em;
	vertical-align: text-top;
}

#case-point h2 span {
	color: #FFF;
	background: #43a748;
	padding: 3px 8px 5px 12px;
	margin-right: 10px;
	font-size: 0.8em;
	vertical-align: 0.1em;
}

#case-point ul {
	border: 2px solid #000;
	border-radius: 15px;
	background: #FFF;
	padding: 20px 30px 20px 25px;
	font-weight: bold;
}

#case-point ul li {
	display: flex;
	line-height: 2em;
	padding: 5px 0;
}

#case-point ul li div {
	width: 100%;
	border-bottom: 2px dotted #C3DCBA;
	padding-bottom: 5px;
}

#case-point ul li:before {
  content: '';
  width: 20px;
  height: 10px;
  border-left: 3px solid #25AF01;
  border-bottom: 3px solid #25AF01;
  transform: rotate(-45deg);
  margin-top: 8px;
  margin-right: 12px;
}

.case_section p {
	padding: 20px;
	text-align: justify!important;
}

.case_section p ~ p {
	padding-top: 0px!important;
}

.case_video {
	padding: 4px;
	margin: 30px 0;
	background: #CCC;
	border-radius: 5px;
}

#case-company, #case-faq-header {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 40px;
}

#case-company h2, #case-faq-header h2 {
	border-bottom-width: 0!important;
	color: #000!important;
	font-size: 1.8em!important;
	margin-bottom: 0!important;
	padding: 10px!important;
	background: transparent!important;
}
#case-company strong, #case-faq-header strong {
	color: #12347C;
	font-weight: normal!important;
}

.photo_twin .item img {
	border: 1px solid #CCC;
	border-radius: 10px;
	object-fit: contain!important;
	max-height: 320px;
}



.case_section dt {
	color: #12347C;
	font-weight: bold;
	padding: 10px 0;
}

.case_section dd {
	padding-left: 10px;
}

.interview-q {
  font-weight: bold;
  color: #317bb1;
}

.interview-q::before {
  content: "― ";
}

.case-talker {
  font-weight: bold;
}

.case-talker::after {
  content: "：";
}

.case-figure img {
  border-radius: 10px;
  max-width: 600px;
  user-select: none;
  border: 1px solid #CCC!important;
}

.case-figure {
  text-align: center;
  margin-bottom: 40px;
}

.case-figure figcaption {
  font-size: 1em !important;
}

em.marker_underline {
  background: linear-gradient(transparent 60%, yellow 30%);
}

#related_case {
	border: 2px solid #93b1c8;
	padding: 20px;
	margin: 30px 0;
}

#related_case a {
	color: #0073D1;
	text-decoration: underline;
}

#related_case h2 {
	margin: 0;
	margin-bottom: 8px;
	background: #FFF;
	border-bottom-width: 0;
	color: #000;
	padding: 0;
	font-size: 1.1em!important;
}
#related_case h2:after {
	display: inline!important;
	position: static!important;
	content: "：";
	border-width: 0;
	background: transparent;
}

#case-faq {
	background: #F4F7FF;
	border-radius: 15px;
	padding-bottom: 10px;
	margin-top: 50px;
}

#case-faq dl {
	border: 1px solid #000;
	background: #FFF;
	margin: 0 auto 30px auto;
	max-width: 800px;
	padding: 0 20px;
}

#case-faq dl dt {
	border-bottom: 2px dashed #CCC;
	font-weight: bold;
}
#case-faq dl dt, #case-faq dl dd {
	display: flex;
	padding: 10px 10px;
}
#case-faq dl div {
	padding-left: 5px;
}

#case-faq dl dt b {
	color: #12347C;
}

#case-faq dl dd b {
	color: #F04751;
}

.right_h2 {
	background: #12347C!important;
	color: #FFF!important;
	font-size: 1.2em!important;
	padding: 10px!important;
	margin: 0!important;
}

.right_h2:after {
	display: none!important;
}


#sticky_area nav {
	border: 2px solid #000;
	margin: 20px;
	margin-bottom: 40px!important;
	padding: 30px;
	position: relative;
	background: transparent!important;
}

#sticky_area nav ul li {
	line-height: 2em;
	font-weight: bold;
}
#sticky_area nav ul li:before {
	content: "■";
	padding-right: 5px;
}

#sticky_area nav h2 {
	color: #000!important;
	background: #F4F6FB;
	margin: 0!important;
	padding: 0!important;
	position: absolute;
	top: -20px;
	left: calc(50% - 40px);
	width: 80px;
}

#sticky_area nav h2:after {
	display: none!important;
}

#sticky_area section {
	background: #FFF;
	margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
	.clumn_wrap {
		padding: 0;	
	}
	.case_main_ttl {
		font-size: 1.5em!important;
	}
	.narrow_case {
		padding: 30px 5px!important;
	}
	#case-point {
		padding: 10px;
	}
	#case-point h2 span {
		display: block!important;
		margin-bottom: 20px;
	}
	#case-point ul {
		padding: 20px;
	}
	.case-figure img {
		width: 100%;
	}
}

@media screen and (max-width: 1200px) {
	#sticky_area nav {
		padding: 10px;
	}
}

