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

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

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

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

.fsSn {
	font-size: 14px;
	line-height: 171%;
}

.fsR {
	font-size: 16px;
	line-height: 188%;
}

.fsRn {
	font-size: 16px;
	line-height: 163%;
}

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

.fs2L {
	font-size: 20px;
	line-height: 170%;
}

.fs3L {
	font-size: 24px;
	line-height: 167%;
}

.fs4L {
	font-size: 28px;
	line-height: 150%;
}

.fs5L {
	font-size: 32px;
	line-height: 138%;
}

@media screen and (max-width: 800px) {
	
	.fsS {
        font-size: 12px;
        line-height: 200%;
    }

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

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

    .fsRn {
        font-size: 14px;
        line-height: 171%;
    }

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

    .fs2L {
        font-size: 18px;
        line-height: 178%;
    }

    .fs3L {
        font-size: 20px;
        line-height: 170%;
    }

    .fs4L {
        font-size: 22px;
        line-height: 164%;
    }

    .fs5L {
        font-size: 24px;
        line-height: 167%;
    }
	
}


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

.notoL {
	font-weight: 300!important;
}

.notoM {
	font-weight: 500!important;
}

.notoB {
	font-weight: 700!important;
}

.kiwi {
	font-family: 'Kiwi Maru', serif;
	font-weight: 500!important;
}

.nunitoL {
	font-family: 'Nunito', sans-serif;
	font-weight: 300!important;
}

.nunito {
	font-family: 'Nunito', sans-serif;
	font-weight: 800!important;
}


.opM {
	font-family: 'Overpass', sans-serif;
	font-weight: 500!important;
}

.montM {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500!important;
}


/*inner caontainer
-----------------------------------------------------------*/

.idBox {
	width: 100%;
	padding: 64px 0 80px;
}

.innerContainer {
	position: relative;
	width: 80%;
	min-width: 960px;
	max-width: 1360px;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (max-width: 800px) {
	
	.idBox {
        padding: 48px 0 40px;
    }
	
	.innerContainer {
        width: 90%;
        min-width: inherit;
    }
	
}

/*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; }

@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; }
	
}


/*border radius
-----------------------------------------------------------*/

.brL { border-radius: 48px; }
.brS { border-radius: 24px; }

@media screen and (max-width: 800px) {
	
	.brL { border-radius: 32px; }
    .brS { border-radius: 16px; }
	
	
}


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

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

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

/*inline block
-----------------------------------------------------------*/

.dib {
	display: inline-block;
}


/*telephone
-----------------------------------------------------------*/

.telephone {
	cursor: default;
}

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

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

.txtLink:hover {
	color: #a09992;
}

/*btn
-----------------------------------------------------------*/

.btn {
	display: inline-block;
}

.btn a {
	position: relative;
	display: block;
	height: 48px;
	border-radius: 24px;
	border: solid 1px #777;
	padding: 8px 52px 0 48px;
	color: #333;
	background-color: #fff;
}

.btn a img {
	position: absolute;
	top: 12px;
	right: 10px;
	width: 24px;
}

@media screen and (max-width: 800px) {
	
	.btn a {
        height: 42px;
        border-radius: 21px;
        padding: 7px 36px 0 32px;
    }

    .btn a img {
        position: absolute;
        top: 11px;
        right: 9px;
        width: 20px;
    }
	
}

/*dots
-----------------------------------------------------------*/

.dots {
	width: 36px;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.dots div {
	width: 6px;
	height: 6px;
	border-radius: 50%;
}

.dots div:nth-of-type(1){ background-color: #50aaaf; }
.dots div:nth-of-type(2){ background-color: #e1d714; }
.dots div:nth-of-type(3){ background-color: #87be5a; }

.dti {
	text-indent: -0.1em;
}
