#main_contents{
    font-size: 18px;
    line-height: 22px;
    font-family:"游ゴシック","Yu Gothic",'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo,'メイリオ',sans-serif;
}
p{
    line-height: 28px;
    margin-left: 1em;
}

#main_contents img{
    margin: 0 10px;
}


h3{
    position: relative;
    padding: 12px;
    background: #57a7da;
    color: white;
    font-size: 24px;
    width: max-content;
    clear: both;
}

h3::before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px rgb(149, 158, 155);
}

h4 {
    position: relative;
    padding-left: 24px;
    font-size: 20px;
    font-weight: bold;
    clear: both;
}

h4:before {
    position: absolute;
    content: '';
    bottom: -6px;
    left: 0;
    width: 0;
    height: 0;
    border: none;
    border-left: solid 15px transparent;
    border-bottom: solid 15px #0C9ED4;
}
h4:after {
    position: absolute;
    content: '';
    bottom: -6px;
    left: 10px;
    width: 100%;
    border-bottom: solid 3px #0C9ED4;
}

h5 {
    padding: 0.5em;
    background: #d0e9ff;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.23);
    border-radius: 7px;
    width: max-content;
    font-size: 16px;
    color: #666;
    font-weight: bold;
    margin: 4px 0;
    clear: both;
}

h6 {
    padding: 0.5em;

    font-weight: bold;
margin: 0.5em 0 0 0;

}

ul{
	list-style: none;
}

ul li,ol li{
	    margin: 0.5em;
}


#sub_menu{
	display: block;
	margin: 14px 0 0 0;
	padding: 0px;
	text-align:left;
	color: #666666;
}

#sub_menu *{
	font-size: 16px;
	line-height: 20px;
}

#sub_menu ul {
	margin: 0;
	padding: 0;
	display: block;
	text-align: left;
	width: 90%;
	counter-reset: number;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: -1px;
}

#sub_menu li {
	list-style-type: none;
	margin: 0;
	padding: 2px;
	border-left: 1px solid #999999;
	border-right: 1px solid #999999;
	border-top: 1px solid #999999;
	border-bottom: 1px solid #999999;
	display: block;
	overflow: hidden;
	white-space: nowrap;
	margin-top: -1px;

}
#sub_menu li.title::before{
	content: "？" ;
	display: inline-block;
	margin: 0 10px;
	font-size: 20px;
	line-height: 40px;
	color: #2196F3;
	vertical-align: middle;
	width: 40px;
	text-align: center;
	font-weight: bold;
}

#sub_menu li.qa::before{
	counter-increment: number;
	content: "Q" counter(number);
	display: inline-block;
	margin: 0 10px;
	font-size: 20px;
	line-height: 40px;
	color: #2196F3;
	vertical-align: middle;
	width: 40px;
}

#sub_menu ul li a{
	display: inline-block;
	text-decoration: none;
	color: #333333;
	white-space: normal;
	vertical-align: middle;
	padding-right: 60px;
}
#sub_menu li:hover{
	background-color: rgba(133, 240, 142, 0.41);
	box-shadow:  1px 3px 5px #c7c7c7;
}
#sub_menu ul li a:hover{
	color: #0919ff;
	text-decoration: underline;
}


#sub_menu ul li.new a{
	width: 200px;
}
#sub_menu li.new:before{
	content: 'new!';
	display: inline-block;
	float: left;
	color: #E91E63;
	font-weight: bold;
	font-size: 12px;
	line-height: 16px;
	vertical-align: middle;
	font-style: italic;
	margin-right: 5px;
}




.cp_qa dl p{
    line-height: 28px;
    margin-left: 10px;
}

.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	font-family: 'FontAwesome', sans-serif;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa dt,.cp_qa dd {
	position: relative;
	padding: 0.5em;
	box-shadow: 0px 1px 1px rgba(0,0,0,0.2);
	border-radius: 0.3em;
}
.cp_qa dt {
	margin: 0 3em 1em 3em;
	background: #ffe0b2;
}
.cp_qa dd {
	margin: 0 3em 1em 3em;
	background: #f7fafb;
}

/* 吹き出し▶︎ */
.cp_qa dt::before,.cp_qa dd::before{
	position: absolute;
	z-index: 99;
	top: 16px;
	display: inline-block;
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
}
/* 質問吹き出し▶︎ */
.cp_qa dt::before {
	left: -8px;
	border-width: 5px 8.7px 5px 0;
	border-color: transparent #ffe0b2 transparent transparent;
}
/* 答え吹き出し▶︎ */
.cp_qa dd::before {
	left: -8px;
	border-width: 5px 8.7px 5px 0;
	border-color: transparent #b2ebf2 transparent transparent;
/*	border-color: transparent transparent transparent #b2ebf2;*/
}
/* ?!アイコン */
.cp_qa dt::after,.cp_qa dd::after {
	font-size: 20px;
	position: absolute;
	top: 0;
	color: #ffffff;
	border-radius: 50%;
	display: inline-block;
	width: 50px;
    height: 50px;
	line-height: 46px;
	text-align: center;
}
/* ?アイコン */
.cp_qa dt::after {
	left: -54px;
    margin: 0 10px 0 0;
    padding: 2px;
	content: '\f128';
	background: #f57c00;
}
/* !アイコン */
.cp_qa dd::after {
	left: -54px;
    margin: 0 10px 0 0;
    padding: 2px;
    content: '\f12a';
    background: #0097a7;

}

.cp_qa dl.q1 dt::after{
	content: 'Q1' !important;
}
.cp_qa dl.q1 dd::after{
	content: 'A1' !important;
}
.cp_qa dl.q2 dt::after{
	content: 'Q2' !important;
}
.cp_qa dl.q2 dd::after{
	content: 'A2' !important;
}
.cp_qa dl.q3 dt::after{
	content: 'Q3' !important;
}
.cp_qa dl.q3 dd::after{
	content: 'A3' !important;
}

.cp_qa dl.q4 dt::after{
	content: 'Q4' !important;
}
.cp_qa dl.q4 dd::after{
	content: 'A4' !important;
}

.cp_qa dl.q5 dt::after{
	content: 'Q5' !important;
}
.cp_qa dl.q5 dd::after{
	content: 'A5' !important;
}

.cp_qa dl.q6 dt::after{
	content: 'Q6' !important;
}
.cp_qa dl.q6 dd::after{
	content: 'A6' !important;
}

.cp_qa dl.q7 dt::after{
	content: 'Q7' !important;
}
.cp_qa dl.q7 dd::after{
	content: 'A7' !important;
}

.cp_qa dl.q8 dt::after{
	content: 'Q8' !important;
}
.cp_qa dl.q8 dd::after{
	content: 'A8' !important;
}

.cp_qa dl.q9 dt::after{
	content: 'Q9' !important;
}
.cp_qa dl.q9 dd::after{
	content: 'A9' !important;
}

.cp_qa dl.q10 dt::after{
	font-size: 1.0em;
	content: 'Q10' !important;
	    width: 50px;
    height: 50px;
}
.cp_qa dl.q10 dd::after{
	font-size: 1.0em;
	content: 'A10' !important;
	    width: 50px;
    height: 50px;
}

.sp{
	display: block;
	width: 100%;
	text-align: right;
}
.sp a{
	margin-right: 3em;
}
