@charset "utf-8";
/* CSS Document */


/*-- other -------------------------------------------*/

.white {
	color: #fff !important;
}

.red {
	color: #F00;
}
.blue {
	color: #2d5aaf;
}
.blue2 {
	color: #101088;
}
.blue3 {
	color: #0051d8;
}
.green {
	color: #008913;
}
.fc333 {
	color: #333;
}

.fw-100 {
	font-weight: 100 !important;
}

.fs-10 {
	font-size: 10px !important;
}

.fs-12 {
	font-size: 12px !important;
}

.fs-13 {
	font-size: 13px !important;
}

.fs-85 {
	font-size: 85% !important;
}

.mt-0 {
	margin-top: 0 !important;
}
.mt-10 {
	margin-top: 10px !important;
}
.mt-15 {
	margin-top: 15px !important;
}
.mt-20 {
	margin-top: 20px !important;
}
.mt-30 {
	margin-top: 30px !important;
}
.mt-40 {
	margin-top: 40px !important;
}

.mb-08 {
	margin-bottom: 0.8em !important;
}
.mb-0 {
	margin-bottom: 0 !important;
}
.mb-5 {
	margin-bottom: 5px !important;
}
.mb-10 {
	margin-bottom: 10px !important;
}
.mb-15 {
	margin-bottom: 15px !important;
}
.mb-20 {
	margin-bottom: 20px !important;
}
.mb-30 {
	margin-bottom: 30px !important;
}
.mb-50 {
	margin-bottom: 50px !important;
}

.m-style01 {
	margin: -0.8em 0 0 0.3em !important;
}

.p-20 {
	padding: 20px !important;
}
.pt-0 {
	padding-top: 0 !important;
}
.pb-0 {
	padding-bottom: 0 !important;
}


.pl-1 {
	padding-left: 1.0em;
	
}
.pl-15 {
	padding-left: 1.5em;
}

.lh-15 {
	line-height: 1.5em;
}
.lh-20 {
	line-height: 2.0em;
}

.ta-c {
	text-align: center;
}
.ta-r {
	text-align: right;
}

.td-n {
	text-decoration: none !important;
}
.td-ul {
	text-decoration: underline!important;
}
.fw-b {
font-weight: bold;
}

.ls-n {
	list-style: none !important;
}

.con-n {
	content: normal !important;
}

.img-res {
	width: 100%;
}

.img-news {
	width: 100%;
	margin-bottom: 15px;
}

.font-style01 {
	font-size: 200%;
	font-weight: bold;
}

.font-style02 {
	font-size: 150%;
	font-weight: bold;
}

.border-style01 {
	border-bottom: 1px dotted #666;
	margin: 0.5em 0;
}

.btn-style01 {
	width: 90%;
	text-align: center;
	margin: 15px auto;
	display: block;
	border: 3px solid #710000;
	line-height: 1.5em;
	background: #ffe9e9;
	text-decoration: none;
	font-weight: bold;
    padding: 15px 5px;
    border-radius: 5px;
}
.btn-style01:hover {
	background: #f5cece;
}

.accordion {
    width: 100%;
}
.accordion dt {
    cursor:pointer;
    background-image: url(../images/icon-plus.png);
    background-repeat: no-repeat;
    background-position: 95% center;
    border:solid 1px #ccc;
    padding:15px;
    font-size:14px; 
}
.accordion dd{
    display:none;
    font-size:14px;
    line-height:140%;
    margin:0;
    padding:15px;   
    }
.accordion dt.active{
    background-image: url(../images/icon-minus.png);
}
.accordion dt.over {
    background-color: #CCC;
}



/*----------------------------------------------------
    .res
----------------------------------------------------*/

table.res {
	width: 100%;
	margin: 0;
	border: none !important;
}
table.res th {
	padding: 10px;
	width: 30%;
	background: #eee;
	text-align: left;
	border: none !important;
    word-break: break-all;
}

table.res td {
	padding: 10px;
	background-color: rgba(255,255,255,0.5);
	border: none !important;
    word-break: break-all;
}

table.res tr {
	border-bottom: 1px dotted #ccc;
}

 
@media only screen and (max-width:480px){
    table.res {
		margin: 0;
	}
    table.res th,
    table.res td {
        /*width: 100%;*/
        width: calc(100% - 20px);
        display: block;
    }
	table.res tr {
		border: none !important;
	}
}

.bg-style_01 {
	background: url(../images/sub_bg.png) bottom right no-repeat;
	background-size: 40%;
}

.bg-style_02 {
	background: url(../images/lesson/lesson_01.png) bottom right no-repeat;
	background-size: 50%;
}

.font-style99 {
	font-size: 110%;
text-shadow: 
        #fff 1px 1px 0, #fff -1px -1px 0,/*右下、左上*/
        #fff -1px 1px 0, #fff 1px -1px 0,/*右上、左下*/
        #fff 0px 1px 0, #fff  0-1px 0,/*右、左*/
        #fff -1px 0 0, #fff 1px 0 0;/*上、下*/
}

/* スマホ時のみ改行 */
.sp-br {
display: none;
}
@media only screen and (max-width:480px){
.sp-br {
display: block;
}
}

/* PCorスマホ時のみ表示（非表示） */
.pc-block {
display: block;
}
.sp-block {
display: none;
}
@media only screen and (max-width:480px){
.pc-block {
display: none;
}
.sp-block {
display: block;
}
}