/*pc sp
-----------------------------------------------------------*/
.sp { display: none; }

@media screen and (max-width: 800px) {
	
	.pc { display: none; }
	.sp { display: block; }

}

/*font size
-----------------------------------------------------------*/

.fsSS {
	font-size: 12px;
	line-height: 183%;
}

.fsS {
	font-size: 14px;
	line-height: 186%;
}

.fsL {
	font-size: 18px;
	line-height: 167%;
}

@media screen and (max-width: 800px) {
	
	.fsSS {
        font-size: 11px;
        line-height: 182%;
    }

    .fsS {
        font-size: 12px;
        line-height: 183%;
    }

    .fsL {
        font-size: 16px;
        line-height: 175%;
    }
	
}


/*margin bottom
-----------------------------------------------------------*/

.mbSS { margin-bottom: 4px; }
.mbS { margin-bottom: 8px; }
.mbM { margin-bottom: 12px; }
.mbL { margin-bottom: 16px; }
.mb2L { margin-bottom: 24px; }
.mb3L { margin-bottom: 32px; }
.mb4L { margin-bottom: 48px; }
.mb5L { margin-bottom: 60px; }
.mb6L { margin-bottom: 80px; }
.mb7L { margin-bottom: 96px; }

@media screen and (max-width: 800px) {
	
	.mbS { margin-bottom: 6px; }
    .mbM { margin-bottom: 10px; }
    .mbL { margin-bottom: 12px; }
    .mb2L { margin-bottom: 20px; }
    .mb3L { margin-bottom: 24px; }
    .mb4L { margin-bottom: 32px; }
    .mb5L { margin-bottom: 36px; }
    .mb6L { margin-bottom: 48px; }
    .mb7L { margin-bottom: 48px; }
	
}


/*notes
-----------------------------------------------------------*/

.notes {
	position: relative;
	padding-left: 1.2em;
}

.notes::before {
	position: absolute;
	top: 0;
	left: 0;
	content: '※';
}

/*text link
-----------------------------------------------------------*/

.txtLink {
	color: #666;
	text-decoration: underline;
}

.txtLink:hover {
	color: #888;
	text-decoration: none;
}

.nomalLink {
	color: #333;
	text-decoration: none;
}

.nomalLink:hover {
	color: #666;
}

/*2colomn
-----------------------------------------------------------*/

dl {
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

dt {
	margin: 0;
	width: 250px;
	font-size: 14px;
	font-weight: 300!important;
}

dd {
	margin: 0 0 48px;
	width: calc(100% - 250px);
}

dd p {
	margin-bottom: 8px;
}

dd:last-of-type,
dd p:last-of-type {
	margin-bottom: 0;
}

@media screen and (max-width: 800px) {
	
	dl {
        display: block;
    }

    dt {
        width: 100%;
        font-size: 13px;
		margin-bottom: 6px;
    }

    dd {
        margin: 0 0 32px;
        width: 100%;
    }

    dd p {
        margin-bottom: 6px;
    }
}

/*others
-----------------------------------------------------------*/

.tac {
	text-align: center;
}

.telephone {
	color: #333;
	text-decoration: none;
	cursor: default;
}

.hr {
	margin-top: 16px;
	padding-bottom: 60px;
	width: 100%;
	border-top: solid 1px #999;
}

@media screen and (max-width: 800px) {
	
    .hr {
        margin-top: 8px;
        padding-bottom: 24px;
    }
	
}


