@charset "UTF-8";

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


	.sp_inline {
    	display: inline;
    }
    .pc_inline {
    	display: none;
    }

	.stepBar {
		position: static;
		display: block;
	}

	.stepBar .step {
		font-size: 10px;
		padding: 0 10px 0 5px;
		color: #ccc;
	}

	.stepBar.step4 .step,
	.stepBar.step3 .step {
		width: 50%;
		font-size: 10px;
		padding: 0 10px 0 5px;
		margin-bottom: 10px;
	}

	#wrap {
		padding-bottom: 0;
	}

	.side-menu {
		width: 300px;
	}

	#header {
		max-height: 80px;
		min-height: 30px;
		height: auto;
		background: none;
	}

	#header .body{
		display: none;
		/*display: block;*/
	}

	#header h1{
		max-width: 300px;
		width: auto;
		height: 30px;
		padding: 5px;
		margin: 0 auto;
		margin-bottom: 5px;
	}

	#headerNav {
		margin-right: 0;
		height: auto;
		padding-bottom: 5px;
	}

	#headerNav .icon {
		height: 4vw;
		min-height: 6px;
		padding-left: 1vw;
	}

	#headerNav ul{
		margin: 0;
	}

	#container .topVisual2 {
		position: relative;
		min-height: 40vh;
		background-position: -10vw center;
	}

	#container .topVisual2 .topVisualTitle{
		position: absolute;
		right: 1vw;
	}

	#container .topVisual3 {
		position: relative;
		min-height: 25vh;
		background-position: right center;
	}

	#container .topVisual3 .topVisualTitle{
		position: absolute;
		left: 1vw;
		bottom: 2vw;
	}

	.side-menu-btn .menuBtntext>div{
		font-size: 12px;
	}

	.side-menu-btn {
		width: 40px;
		height: 40px;
		padding: 10px;
	}

	.side-open #wrap,
	.side-open .overlay {
		-webkit-transform: translate3d(-300px, 0, 0);
		transform: translate3d(-300px, 0, 0);
	}

	.secondContainer .topVisual{
		height: 50vh;
	}


	/*反転ボタン汎用　*/
	.inversion_button a{
		width: 100%;
	}

	footer{
		position: static;
		height: auto;
		box-sizing: border-box;
	}

	footer .body{
		display: block;
		padding: 20px;
		margin: 0;
	}

	footer .footerNav {
		display: none;
	}

	footer .body h3{
		text-align: center;
		width: 50%;
		margin: 0 auto;
	}

	footer .sns{
		height: auto;
		padding: 10px;
	}

	footer .sns img {
		height: 50px;
	}

	footer address{
		position: static;
	}

	.customer_centerTel {
	    font-size: 3vw;
	}

    .pubicHair_brown{
    	width: 100%;
    }

	#pubicHair .select li.noImage {
	    width: 100% !important;
	}

	.contactBtn_secondLife_flex{
		flex-wrap: wrap;
		justify-content: center;
		margin-bottom: 30px;
	}

	.contactBtn_secondLife_flex a{
		width: 80% !important;
		margin: 10px 10px !important;
	}


	.contactBtn_secondLife_noFlex a{
		width: 80% !important;
		margin: 10px 10px !important;
	}


	/*安心保証サービス*/

	#guaranteeService .body{
		padding: 5vw 10px;
		box-sizing: border-box;
		line-height: 1.5;
	}

	#guaranteeService .guaranteeServiceInfo {
	    background-color: #ba2636;
	    align-items: center;
	    text-align: center;
	    margin-top: 30px;
	}

	#guaranteeService .newsLinkBtn{
		text-align: center;
	}

	#guaranteeService .newsLinkBtn a{
		background: #ba2636;
		color: #fff;
		width: 50%;
		margin: 50px auto 80px;
		padding: 20px 20px;
		text-align: center;
		display: block;
	}

	#guaranteeService .guaranteeServiceInfo .img {
        max-width: 100%;
        min-height: 200px;
        width: 100%;
    }

	#guaranteeService .guaranteeServiceInfo .img::before {

	    background-color: rgba(0, 0, 0, 0);
	    border: #ba2636 3px solid;
	    box-sizing: border-box;
	    width: 100%;
	    height: 100%;
	    position: absolute;
	    top: 0;
	    right: 0;
	    bottom: 0;
	    left: 0;
	    content: ' ';
	}

	#guaranteeService .guaranteeServiceInfo .text{
		padding: 10px;
	    text-align: center;
		flex: 1;
	    width: 100%;
	    box-sizing: border-box;
	    color: #fff;
	}


	/*安心保証サービス*/

}

