#with_side { display: flex; justify-content: space-between; width: 100%; padding: 0 15px; max-width: 1200px; margin: 72px auto 80px auto; }
#side { width: 300px; }
#side .title { background-color: #f0f0f0; color: #7c61ff; padding: 20px 20px 15px 20px; border-bottom: 5px #7c61ff solid; text-align: center; font-weight: 700; border-radius: 20px 20px 0 0; }
#side ul li { list-style: none; background-color: #f0f0f0; text-align: left; border-bottom: 1px #fff solid; line-height: 1.2 }
#side ul li a { display: block;  padding: 20px 25px; }
#side ul li a:hover { color: #7c61ff; background-color: #f7f7f7; }
#side ul li.current { font-weight: 700; }
#side ul li:last-child { border-radius: 0 0 20px 20px; }
#side ul li > ul { margin: 0 10px; display: none; }
#side ul li > ul.open { display: block!important; }
#side ul li > ul.last_nest { margin: 0 10px 20px 10px; }
#side ul li > ul li { background-color: #e6e1ff; border-bottom:0; }
#side ul li > ul li:last-child { border-radius: 0; }
#main_r { width: calc( 96% - 300px ); padding: 0; margin: 0 0 80px 0; text-align: left; }
#main_r section { padding: 0; }
.csr_menu { display:none; }
@media screen and (max-width: 768px) {
	#with_side { flex-direction: column-reverse; margin: 0 auto 45px auto; }
	#main_r { width: 100%; margin: 0 0 45px 0; }
	#side { width: 100%; }
	#side .title { display: none; }
	.csr_menu { display: block; background-color: #f0f0f0; color: #7c61ff; padding: 20px; text-align: center; font-weight: 700; border-radius: 20px; transition: all .6s .4s ease; position: relative; }
	.csr_menu.open { padding: 20px 20px 15px 20px; border-bottom: 5px #7c61ff solid; border-radius: 20px 20px 0 0; transition: all .2s ease; }
	.csr_menu:before { content: ""; position: absolute; top: 36px; right: 25px; width: 16px; height: 2px; transform: rotate(90deg); background: #7c61ff; transition: all .3s ease-in-out; }
	.csr_menu:after { content: ""; position: absolute; top: 36px; right: 25px; width: 16px; height: 2px; background: #7c61ff; transition: all .2s ease-in-out; }
	.csr_menu.open:after { transform: rotate(180deg); }
	.csr_menu.open:before { opacity: 0; }
}
/*---- pdf_ir ----*/
#ir a[href$=".pdf"] { display: inline-block; background: url(https://www.bell24.co.jp/ja/images/index2/pdf2.svg) left center / 20px 20px no-repeat; padding-left: 28px; line-height: 1.5rem; color: #369; }

/*---- news list ----*/
section dl { margin-bottom: 0.5rem;display:flex;flex-wrap:wrap; }
section dd,section dt { display:flex;align-items:center; }
section dd { flex-basis:auto; }
section dd.txt { flex:1 1 300px; }
section dt { margin-right: 1rem; flex-basis: 110px; }
section dt.auto { display: inline-block; margin-right: 1rem; width: auto; }
section dd.label>span { font-size: 10px; line-height: 16px; padding: 0 10px; color: #fff; margin-right: 20px; }
.icon-info { background-color: #999; }
.icon-ir>span { background-color: #b9acff; }
.ir-list dl dd:last-child { font-size: 12px; color: #999; }
.ir-list dl:last-child { margin-bottom: 0; }
#topnews h2 {display: block;  font-size: 1.125rem; padding: 10px 0 10px 30px; border-bottom: 2px #7c61ff solid; }
section dl { padding: 15px; margin-bottom: 0; }
section dl:not(:last-child) { border-bottom: 1px #ccc dotted; }

/*---- policy ----*/
#policy h2 { font-size: 1.125rem; margin-top: 5px; }
#policy .box3, #fin .box3 { margin-bottom: 0; }
#fin h2 {display: block;  font-size: 1.125rem; padding: 10px 0 10px 30px; border-bottom: 2px #7c61ff solid; }
#fin ul { list-style: none; margin-left: 0; margin-bottom: 0; } 
#fin ul li { list-style: none; padding: 20px 0 20px 35px; border-bottom: 1px #ccc dotted; margin-bottom: 0; line-height: 1.2; } 
#fin ul li:hover { background-color: #fcfcfc; }

.uline_tbl { border-collapse: collapse; font-size: 15px; margin: 16px 0 24px 0; width: 100%; border-top: 0.5px #ccc solid; }
.uline_tbl th, .uline_tbl td { border-bottom: 0.5px #ccc solid; padding: 20px; line-height: 1.5 }
.uline_tbl th { font-size: 18px; font-weight: 700; }
@media screen and (max-width: 768px) {
	.uline_tbl td { display: block; padding: 10px 15px 15px 15px; }
	.uline_tbl th { display: block; border-bottom: 0; padding: 15px 15px 0 15px }
}
/*---- others ----*/
#others h2 { display: block; font-size: 1.125rem; padding: 10px 0 10px 30px; }
.mb-30 { margin-bottom: -30px!important; }

/*---- qa ----*/
.qa_q { background: url(../images/qa_q.svg) top 6px left / 16px no-repeat; padding-left: 30px; }
.qa_a { background: url(../images/qa_a.svg) top 16px left / 16px no-repeat; padding-left: 30px; border-top: 2px #fff dotted; padding-top: 10px; margin-top: 10px; }
.qa_box { background-color: #f0f0f0; border-radius: 20px; padding: 10px 15px; margin-bottom: 15px; }


.qa_q {
	position: relative;
}
.qa_q:before {
	content: "";
	position: absolute;
	top: 15px;
	right: 9px;
	width: 14px;
	height: 2px;
	/*縦線に*/
	transform: rotate(90deg);
	background: #7c61ff;
	transition: all .3s ease-in-out;
}
.qa_q:after {
	content: "";
	position: absolute;
	top: 15px;
	right: 9px;
	/*横線*/
	width: 14px;
	height: 2px;
	background: #7c61ff;
	transition: all .2s ease-in-out;
}
.qa_q.open:after {
	transform: rotate(180deg);
}
.qa_q.open:before {
	opacity: 0;
}

.u_line {
	border-bottom: 1px #666 solid;
}











