/* **************************************************
<!--Rev. 250218 P23056 hsc-->
***************************************************** */
:root {
  --color-red1:#E60025;
  --color-gray1:#333333;
  --color-gray2:#F2F2F2;
  --color-gray3:#575757;
}
#Contents.case .GridSet{
	max-width:965px;
  margin: auto;
}
#Contents.case .IndexTitleStyle .GridSet,#Contents.case .PageTitleStyle .GridSet{
	padding:0 0 2rem;
}
#Contents .bg{
	background:var(--color-gray2);
}
#Contents .bg2{
	background:var(--color-gray3);
}
#Contents.case .Grid4 > .Section{
	padding:0 15px;
}
#Contents img{
	width:100%;
}
#Contents.case h2,#Contents.case h3,#Contents.case h4{
	background:inherit;
	border:inherit;
	color:inherit;
}
#Contents.case h4{
	padding:0;
}
#Contents a{
	text-decoration:none;
	padding-right:2rem;
	background-repeat:no-repeat;
	background-position:right 0.5rem center;
	background-size:1em;
}
#Contents a:hover{
	text-decoration:underline;
	background-position:right 0.4rem center;
}
#Contents .ButtonStyle a{
	background-color:var(--color-red1);
	color:#fff;
	text-decoration:none;
  font-weight: bold;
	box-sizing: border-box;
	padding:0.7rem 3rem 0.7rem 2rem;
	border-radius:3px;
	display:inline-block;
	background-size:2em;
	text-align:center;
  line-height: 1.3;
}
#Contents .ButtonStyle a:hover{
	background-position:right 0.5rem center;
	transition:ease 0.3s;
	opacity:0.7;
}
#Contents a{background-image:url("/image/jp/r1/icon/icon_link_right_l_hd.gif");}
#Contents a[target^="_blank"]{background-image:url("/image/jp/r1/icon/icon_new_window_hd.gif");}
#Contents a[href$=".pdf"]{background-image:url("/image/jp/r1/icon/icon_pdf_hd.gif");}
#Contents .ButtonStyle a{background-image:url("/image/jp/r1/icon/icon_link_right_l_white_hd.gif");}
#Contents .ButtonStyle a[target^="_blank"]{background-image:url("/image/jp/r1/icon/icon_new_window_white_hd.png");}
#Contents .ButtonStyle a[href$=".pdf"]{background-image:url("/image/jp/r1/icon/icon_pdf_white_hd.png");}
#Contents .ButtonStyle.Large{
	text-align:center;
	margin:2rem 0;
}
#Contents .ButtonStyle.Large a{
	max-width:625px;
	width:100%;
}
#Contents .ButtonStyle.Large a span{
	font-size:1.5rem;
}
#Contents .IndexTitleStyle h1{
	margin-bottom:2rem;
}
#Contents .IndexTitleStyle h1:before ,#Contents .category:before {
	content:"";
	display:block;
	background:var(--color-gray2);
	width:100%;
	position: absolute;
	left: 0;
}
#Contents .IndexTitleStyle h1 span{
	font-size:1.75rem;
}
#Contents .category span {
	font-size:1.125rem;
}
#Contents .IndexTitleStyle h1 span,#Contents .category span {
	font-weight:bold;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-gray1);
  color: #fff;
  position: relative;
}
#Contents.case h1 {
	line-height:1.3;
	font-weight:bold;
}
#Contents.case .SubTitle {
	margin:0 0 1rem;
	font-size:1.25rem;
  font-weight: bold;
}
#Contents .RelatedLink{
	border:1px solid var(--color-red1);
	margin:2rem 0;
}
#Contents .ListStyle1{
	font-size:inherit;
	margin:0;
}
#Contents .RelatedLink a{
	color:var(--color-gray1);
}
#Contents .RelatedLink .title{
	font-size:1.25rem;
	font-weight:bold;
	border-bottom:none;
	margin-bottom:0.5rem;
}
#Contents h2{
	font-weight:bold;
	text-align:center;
	position:relative;
	padding:0 0 2.5rem 0;
}
#Contents.case h2:before{
	position:absolute;
	left:0;
	bottom:0;
	z-index:1;
	content:"";
	display:block;
	background-image:url("/image/hitle/case/title01.svg");
	background-repeat:no-repeat;
	background-position: center;
	height:24px;
  width:100%;
}
#Contents.case .bg2 h2:before{
	background-image:url("/image/hitle/case/title01w.svg");
}
#Contents.case .bg2 *{
	color:#fff;
}
#Contents.case h2:after{
	position:absolute;
	left:0;
	bottom:0;
	z-index:2;
	content:"";
	display:block;
	background-image:url("/image/hitle/case/title02.svg");
	background-repeat:no-repeat;
	height:24px;
  width:45px;
}
#Contents.case h3{
	position:relative;
	font-weight:bold;
}
#Contents.case h3:after{
	position:absolute;
	left:0;
	bottom:0;
	content:"";
	display:block;
	background:url("/image/hitle/case/title03.svg") no-repeat;
	height:5px;
  width:100px;
}
#Contents.case h3 span{
	font-size:1rem;
}
#Contents.case .summary{
	font-size:0.875rem;
}

#Contents .num{
	counter-reset: titlenum;
}
#Contents .num .title{
	padding-left:2.5rem;
}
#Contents .num .title:nth-child(n+2){
	margin-top:2rem;
}
#Contents .num .title:before{
	color:var(--color-red1);
	position:absolute;
	left:0;
	top:0;
	font-family:Arial;
	counter-increment: titlenum;
  content:counter(titlenum,decimal-leading-zero);
}
#Contents.case h4 a{
	background-image:url("/image/jp/r1/icon/icon_link_right_l_hd.gif");
	color:inherit;
	padding-right:1.5em;
}
#Contents .ColumnFlex{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	gap: 1.5rem;
	margin:1.5rem 0;
}
#Contents .bg .ColumnFlex .Column{
	background-color:#fff;
}
#Contents .ColumnFlex .Column{
	width:48.5%;
	background-color:var(--color-gray2);
	padding:1.5rem;
	box-sizing: border-box;
	box-shadow: 0 3px 6px #00000040;
	position:relative;
}
#Contents .ColumnFlex .Column .title{
	font-size:1.125rem;
	font-weight:bold;
}
#Contents .ColumnFlex .Column .ColumnBox{
	margin-top:1rem;
}
#Contents .ColumnFlex .Column .ColumnBox > .title{
	font-size:1rem;
}
#Contents .ColumnFlex .Column a.ColumnLink{
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 5;
  left: 0;
  top: 0;
  padding-right:0;
  background-size: 1.5em;
}
#Contents .BoxStyle.Column{
	padding:2rem 3rem 2rem 2rem;
	margin:0;
}
/*
#Contents .ColumnFlex .Column a.ColumnLink:hover{
	background-color:#fff;
	opacity:0.2;
	transition:ease 0.3s;
}
*/
#Contents.case .lead{
	font-weight:bold;
}
#Contents .BoxStyle{
	box-shadow: 0 3px 6px #00000040;
	position:relative;
	background: #fff;
}
#Contents .BoxStyle.next{
	margin-bottom:4rem;
}
#Contents .BoxStyle.next:after{
	position: absolute;
	bottom: -4rem;
	content: "";
	display: block;
	background: url(/case/images/arrow_down.svg) no-repeat;
	height: 4rem;
	width: calc(100% - 4rem);
	background-position: center;
}
#Contents .BoxStyle:last-child{
	margin-bottom:0;
}
#Contents .indentList{
	margin:1rem 0;
	text-indent:-1em;
	padding-left:1em;
}



@media screen and (max-width: 1304px) {
}
@media screen and (min-width: 995px) {
	#Contents .ColumnFlex .Column{
		width:48.5%;
	}
}
@media screen and (max-width: 994px) {
	#Contents .ColumnFlex .Column{
		width:100%;
	}
	.JS #Contents,.JS .Grid4{
		padding:0;
	}
	.JS #Contents .IndexTitleStyle,.JS #Contents .PageTitleStyle,.JS #Contents .PageEndStyle{
		margin:0 15px;
	}
}
@media screen and (min-width: 768px) {
	#Contents.case .GridSet{
		padding:5rem 0;
	}
	#Contents.case .PageEndStyle .GridSet{
		padding:2rem 0;
	}
	#Contents .IndexTitleStyle h1:before,#Contents .category:before,#Contents .category span {
		height:100px;
	}
	#Contents .IndexTitleStyle h1 span{
		height:130px;
	  width: 190px;
	}
	#Contents .category span {
	  width: 190px;
	}
	#Contents.case .PageTitleStyle h1 {
		font-size:2.125rem;
		margin:2rem 0 0;
	}
	#Contents h2{
		font-size:1.875rem;
		margin-bottom: 2rem;
	}
	#Contents.case h3{
		font-size:1.5rem;
	  padding-bottom: 0.5rem;
	}
	#Contents .RelatedLink{
		padding:2rem;
	}
	#Contents .BoxStyle{
		padding:2rem;
		margin:1rem;
	}
}
@media screen and (max-width: 767px) {
	#Contents.case .GridSet{
		padding:2.5rem 0;
	}
	#Contents.case .PageEndStyle .GridSet{
		padding:1rem 0;
	}
	#Contents .IndexTitleStyle h1:before,#Contents .category:before,#Contents .category span {
		height:60px;
	}
	#Contents .IndexTitleStyle h1 span{
		font-size:1.125rem; 
		height:80px;
	}
	#Contents .IndexTitleStyle h1 span,#Contents .IndexTitleStyle h1 span,#Contents .category span {
	  width: 150px;
	}
	#Contents.case h1 {
		font-size:1.75rem;
		margin:1rem 0 0;
	}
	#Contents.case .IndexTitleStyle h1{
		margin:0 0 2rem;
	}
	#Contents h2{
		font-size:1.5rem;
		line-height:1.3;
		margin-bottom: 1.5rem;
	}
	#Contents.case h3{
		font-size:1.375rem;
	  padding-bottom: 1rem;
	}
	#Contents .RelatedLink{
		padding:1rem;
	}
	#Contents .BoxStyle{
		padding:1.5rem;
		margin:1rem 0;
	}
}
@media screen and (min-width: 576px) {
}
@media screen and (max-width: 575px) {
}
@media screen and (max-width: 399px) {
}
