/*.topctgName { margin: 20px auto; padding: 0 30px; font-size: 3.0rem; font-weight: 700; width: 100%; height: 65px; line-height: 65px; border: 2px solid #cecece; box-sizing: border-box; position: relative; }*/
.topctgName { margin: 20px auto; padding: 0.5em; font-size: 3.0rem; font-weight: 700; width: 100%; height:; line-height: 1.5em; border: 2px solid #cecece; box-sizing: border-box; position: relative; }
.topctgName::after { content: ''; margin: auto; width: 100%; height: 100%; background: #efefef; display: block; position: absolute; top: 5px; left: 5px; z-index: -1; }
.topctgName.webservice::after { background: #e6e6fa; }
.topctgName.faq::after { background: #efffef; }
.topctgName.product::after { background: #fff0f5; }

/*============================================================================
	ctgMenulistWrap
=============================================================================*/
.ctgMenulistWrap { margin: 0 auto 40px; }
.ctgMenulistWrap.topCtg h2 { font-size: 3.0rem; }
.ctgMenulistWrap h2 { padding: 15px 10px 12px; font-size: 2.0rem; font-weight: 700; line-height: 1; border: 1px solid #cecece; background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%); background: -webkit-linear-gradient(top, #ffffff 0%, #f2f2f2 100%); background: linear-gradient(to bottom, #ffffff 0%, #f2f2f2 100%); }
.ctgMenulistWrap .ctglistBox { padding: 20px 20px 0; background: #eef7ff; border-left: 1px solid #cecece; border-right: 1px solid #cecece; border-bottom: 1px solid #cecece; }
.ctgMenulistWrap .ctglistBox ul li { margin-bottom: 10px; padding-left: 20px; width: 50%; float: left; background: url("../img/common/arrow01.png") no-repeat left top 4px; box-sizing: border-box; }
@media (max-width: 480px) { .ctgMenulistWrap .ctglistBox ul li { width: 100%; float: none; } }
.ctgMenulistWrap .ctglistBox ul:after { content: ""; display: block; clear: both; }
.ctgMenulistWrap + .ctgMenulistWrap { margin-top: 20px; }

/*============================================================================
	categoryBlock
=============================================================================*/
.categoryBlock h2 { margin: 0 auto 20px; font-size: 2.4rem; font-weight: 700; line-height: 1; }
.categoryBlock .entryListBox h3 { margin: 0 auto 20px; padding-left: 40px; font-size: 1.8rem; font-weight: 700; height: 40px; line-height: 40px; border: 1px solid #cecece; background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%); background: -webkit-linear-gradient(top, #ffffff 0%, #f2f2f2 100%); background: linear-gradient(to bottom, #ffffff 0%, #f2f2f2 100%); box-sizing: border-box; position: relative; }
.categoryBlock .entryListBox h3::before { content: ''; margin: auto; width: 12px; height: 12px; background: url("../img/common/arrow01.png") no-repeat left top; display: block; position: absolute; top: 0; left: 20px; bottom: 0; }
.categoryBlock .entryListBox ul { margin: 0 0 0 20px; }
.categoryBlock .entryListBox ul li { padding-left: 20px; background: url("../img/common/arrow02.png") no-repeat left top 4px; box-sizing: border-box; }
.categoryBlock .entryListBox ul li + li { margin-top: 10px; }
.categoryBlock .entryListBox + .entryListBox { margin-top: 40px; }
.categoryBlock + .categoryBlock { margin-top: 50px; }
.categoryBlock:last-of-type { margin-bottom: 50px; }

/*============================================================================
	entryWrap
=============================================================================*/
#entryWrap { padding: 20px; border-radius: 5px; border: 1px solid #cecece; background: #f6f6f6; }
#entryWrap h2 { margin: 10px auto 10px; font-size: 2.0rem; font-weight: 700; }
#entryWrap ul { margin: 0 0 1em 1.5em; padding: 0;list-style-type: disc; } /* 追記20230524 */
#entryWrap ol { margin: 0 0 1em 1.5em; padding: 0;list-style-type: decimal; } /* 追記20230524 */
#entryWrap > div { padding: 20px; border: 1px solid #cecece; background: #FFFFFF; box-sizing: border-box; }
#entryWrap > div p + p { margin-top: 1em; }
#entryWrap > div .section { margin: 20px auto; width: 95%; }
#entryWrap > div .section h3 { margin: 0 auto 10px; font-size: 1.8rem; font-weight: 700; }

#entryNavi { margin: 40px auto; padding: 10px 0; border-top: 1px dashed #cecece; border-bottom: 1px dashed #cecece; }
#entryNavi p + p { margin-left: 10px; }
#entryNavi p + p::before { content: '/'; margin-right: 10px; }

#relationList { border: 1px solid #cecece; }
#relationList h3 { padding: 5px 10px; font-size: 1.8rem; font-weight: 700; border-bottom: 1px solid #cecece; background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%); background: -webkit-linear-gradient(top, #ffffff 0%, #f2f2f2 100%); background: linear-gradient(to bottom, #ffffff 0%, #f2f2f2 100%); }
#relationList ul { margin: 20px; }
#relationList ul li { padding-left: 20px; background: url("../img/common/arrow02.png") no-repeat left top 4px; box-sizing: border-box; }
#relationList ul li + li { margin-top: 10px; }
