.service-online
, .service-online * {
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','Arial','ＭＳ Ｐゴシック',sans-serif;
}

.online {
	padding-top: 40px;
}

.online-max374 {
	display: none;
}

@media screen and ( max-width: 374px ){
	.online-max374 {
		display: block;
	}
}

/*header*/
.online-header{
}

.online-header-top{
	padding: 60px 0 35vw;
	background: url(../images/online/main_img_sp.jpg) center/cover;
}

.online-header-top-title{
	position: relative;
	width: 70%;
	max-width: 400px;
	margin: 0 auto;
}

.online-header-top-title-image{
	width: 100%;
}

.online-header-top-free{
	position: absolute;
	top: -8%;
	right: -5%;
	width: 20%;
	max-width: 80px;
}

.online-header-top-description{
	margin-top: 30px;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
}

.online-header-device{
	width: 70%;
	max-width: 450px;
	margin: -23vw auto 0;
}

.online-header-device-image{
	width: 100%;
	filter: drop-shadow(2px 4px 6px #555);
}

.online-header-point{
	width: 80%;
	margin: 20px auto 0;
	text-align: center;
}

.online-header-note{
	width: 90%;
	margin: 20px auto 0;
	text-align: center;
}

.online-header-note-content{
	position: relative;
	padding-left: 1em;
	text-align: left;
	font-size: 10px;
}
.online-header-note-content::before{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '※';
}

.online-header-point-image{
	width: 100%;
	max-width: 466px;
}

.online-header-tools-sp{
	margin-top: 20px;
	text-align: center;
}

.online-header-tools-image{
	width: 100%;
	max-width: 640px;
}

@media screen and ( min-width: 460px ){
	.online-header-top{
		padding-bottom: 28vw;
	}
	.online-header-top-description{
		font-size: 16px;
	}

	.online-header-point{
		margin-top: 40px;
	}

	.online-header-tools-sp{
		margin-top: 40px;
	}
}

/*flow*/
.online-flow{
	margin-top: 60px;
	padding: 30px 5%;
	background-color: #f5f5f5; 
}

.online-flow-title{
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.online-flow-step{
	max-width: 480px;
	margin: 30px auto 0;
}
	.online-flow-step>li{
		padding: 20px 6%;
		background-color: #fff;
	}
	.online-flow-step>li+li{
		margin-top: 30px;
	}

.online-flow-step-dl{
}
	.online-flow-step-dl>dt{
		font-size: 14px;
		font-weight: bold;
	}
	.online-flow-step-dl>dd{
		margin-top: 20px;
	}

.online-flow-step-dl-icon{
	display: block;
	margin-bottom: .5em;
	width: 60px;
}

.online-flow-step-dl-stores-wrap
, .online-contact-stores{
	padding: 20px 0;
	background-color: #f9718d;
	text-align: center;
	/*font-size: 14px;*/
}

.online-flow-step-dl-stores-comment{
	font-weight: bold;
	color: #fff;
}

.online-flow-stores-link
, .online-contact-stores-link{
	display: block;
	width: 12em;
	margin: 10px auto 0;
	padding: 10px 2em;
	box-sizing: border-box;
	box-shadow: 0px 2px 5px #999;
	border-radius: 20px;
	background-color: #fff;
	font-weight: bold;
	color: #333;
}

.online-flow-step-dl-images{
	margin-top: 30px;
}
	.online-flow-step-dl-images>img{
		width: 100%;
	}

.online-flow-panorama{
	width: 100%;
	height: 45vw;
	margin-top: 20px;
}

.online-flow-step-dl-description-add{
	margin-top: 15px;
	font-size: 11px;
}

.online-flow-step-dl-description-sub{
	margin-top: 20px;
	padding: 15px 5%;
	background-color: #fceeef;
}
	.online-flow-step-dl-description-sub>dt{
		font-weight: bold;
	}
	.online-flow-step-dl-description-sub>dd{
		margin-top: 5px;
	}

.online-flow-step4-dl-images>.online-flow-step4-dl-images1{
	width: 70%;
	margin-left: 30%;
}

.online-flow-step4-dl-images>.online-flow-step4-dl-images2{
	width: 80%;
	margin-top: -50px;
}

.online-flow-step-dl-images-panorama{
	margin-top: 5px;
	text-align: center;
}
	.online-flow-step-dl-images-panorama>img{
		width: 200px;
	}

@media screen and ( min-width: 460px ){
	.online-flow-panorama{
		height: 35vw;
	}
}

/*consultation*/
.online-consultation{
	margin-top: 40px;
	padding: 0 5%;
}

.online-consultation-title{
	padding: 0;
	text-align: center;
}

.online-consultation-title-image{
	width: 80%;
	max-width: 376px;
}

.online-consultation-content-image-wrap{
	margin-top: 15px;
	padding: 0 10%;
}

.online-consultation-content-image{
	width: 100%;
}

.online-consultation-content-explanation{
	margin-top: 25px;
}
	.online-consultation-content-explanation>dt{
		text-align: center;
		font-size: 14px;
		font-weight: bold;
	}
	.online-consultation-content-explanation>dd{
		margin-top: 15px;
		padding: 0 10%;
	}

/*faq*/
.online-faq{
	margin-top: 40px;
	padding: 0 5%;
}

.online-faq-title{
	padding: 0;
	text-align: center;
}

.online-faq-title-image{
	width: 80%;
	max-width: 280px;
}

.online-faq-list{
	margin-top: 15px;
	border-top: solid 2px #f5a503;
}
	.online-faq-list>li{
		padding: 20px 0;
		border-bottom: solid 2px #f5a503;
	}

.online-faq-list-dl{
	padding-left: 30px;
	background: url(../images/online/qa_icon.svg) no-repeat left top / 24px 24px;
}
	.online-faq-list-dl>dt{
		padding-top: 3px;
		font-weight: bold;
	}
	.online-faq-list-dl>dd{
		margin-top: 10px;
	}

.online-faq-list-link{
	display: block;
	margin-top: 1em;
	color: #f9718d;
}
.online-faq-list-link:visited{
	color: #f9718d;
}

/*contact*/
.online-contact{
	margin-top: 40px;
	padding: 40px 0;
	background: #f5f5f5;
}

.online-contact-title{
	padding: 0;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.online-contact-stores{
	width: 80%;
	max-width: 780px;
	margin: 20px auto 0;
}

.online-contact-stores-text{
	font-weight: bold;
	color: #fff;
}

/* IE10~11 に適用される */
_:-ms-input-placeholder, :root .online-flow-stores-link
,  _:-ms-input-placeholder, :root .online-contact-stores-link{
  padding: 12px 2em 10px;
}

@media screen and ( min-width:769px ) {
	.online {
		padding-top: 80px;
	}
	.service-online{
		min-width: 1000px;
	}

	.online-text-link
	, .online-text-link:visited{
		color: #00a1e9;
	}
	.online-text-link:hover{
		opacity: .9;
	}

	/*header*/
	.online-header{
		position: relative;
		background: url(../images/online/main_img.jpg) center/cover;
		padding: 120px 0;
	}

	.online-header-top{
		width: 1000px;
		margin: 0 auto;
		padding: 0 30px;
		box-sizing: border-box;
		background: none;
	}

	.online-header-top-title{
		margin-right: 0;
	}

	.online-header-top-description{
		width: 400px;
		margin: 20px 0 0 auto;
		font-size: 18px;
	}

	.online-header-device{
		position: absolute;
		top: 210px;
		left: calc(50% - 470px);
		max-width: 500px;
		margin: 0;
	}

	.online-header-device-free{
		position: absolute;
		top: -40px;
		right: -30px;
		width: 90px;
	}

	.online-header-point
	, .online-header-note{
		width: 970px;
		margin-top: 20px;
		padding-right: 30px;
		text-align: right;
	}

	.online-header-point-image{
		width: 400px;
	}

	.online-header-note-content{
		width: 400px;
		margin-left: calc(100% - 400px);
		font-size: 12px;
	}

	.online-header-tools-pc{
		position: relative;
		z-index: 1;
		display: flex;
		justify-content: space-between;
		width: 1000px;
		margin: -80px auto 0;
	}

		.online-header-tools-pc > dd{
			align-self: flex-end;
		}

	.online-header-tools-ok{
		width: 290px;
	}

	/*flow*/
	.online-flow{
		padding: 50px 0;
		background-image: url(../images/online/back_online.png);
		background-repeat: no-repeat;
		background-position: calc(100% - (50% - 500px) + 115px) 70px; 
	}

	.online-flow-title{
		font-size: 30px;
	}

	.online-flow-step{
		max-width: 1000px;
		margin-top: 40px;
	}
		.online-flow-step>li{
			padding: 40px 70px;
		}
		.online-flow-step>li+li{
			margin-top: 60px;
		}

	.online-flow-step-dl{
		position: relative;
	}
		.online-flow-step-dl>dt{
			font-size: 16px;
		}

	.online-flow-step-dl-description{
		width: 380px;
	}

	.online-flow-step-dl-odd>.online-flow-step-dl-description{
		padding-right: 50px;
	}

	.online-flow-step-dl-even{
	}
		.online-flow-step-dl-even>dt {
			width: 380px;
		}
		.online-flow-step-dl-even>dt
		,.online-flow-step-dl-even>.online-flow-step-dl-description{
			margin: 0 0 0 auto;
			padding: 20px 0 0 50px;
			border-left: solid 1px #c3c3c3;
		}
		.online-flow-step-dl-even>dt{
			padding: 0 0 0 50px;
		}
		.online-flow-step-dl-even>.online-flow-step-dl-description{
			padding: 20px 0 0 50px;
		}
		.online-flow-step-dl-even>.online-flow-step-dl-images{
			position: absolute;
			top: 0;
			left: 0;
			width: 480px;
			margin-top: 0;
			padding-right: 50px;
		}

	.online-flow-step>li:nth-child(2) .online-flow-step-dl-even{
		height: 300px;
	}
		.online-flow-step>li:nth-child(2) .online-flow-step-dl-even>.online-flow-step-dl-description{
			padding-bottom: 90px;
		}

	.online-flow-step4-dl-images>.online-flow-step4-dl-images1{
		width: 75%;
		margin-left: 25%;
	}

	.online-flow-step4-dl-images>.online-flow-step4-dl-images2{
		position: absolute;
		left: -70px;
		bottom: -185px;
		width: 85%;
	}

	.online-flow-step-dl-stores-wrap{
		padding: 30px 24px;
	}

	.online-flow-step-dl-stores{
		position: absolute;
		top: 0;
		right: 0;
		display: flex;
		flex-flow: column;
		justify-content: center;
		width: 480px;
		height: 100%;
		padding-left: 50px;
		border-left: solid 1px #ccc;
	}
		.online-flow-step-dl>.online-flow-step-dl-stores{
			margin-top: 0;
		}

	.online-flow-stores-link
	, .online-contact-stores-link{
		width: 160px;
	}

	.online-flow-stores-link:hover
	, .online-contact-stores-link:hover{
		opacity: .95;
	}

	.online-flow-step>li:nth-child(3) .online-flow-step-dl-odd{
		height: 550px;
	}

	.online-flow-step>li:nth-child(5) .online-flow-step-dl-odd{
		height: 300px;
	}
		.online-flow-step>li:nth-child(3) .online-flow-step-dl-odd>.online-flow-step-dl-images
		,.online-flow-step>li:nth-child(5) .online-flow-step-dl-odd>.online-flow-step-dl-images{
			position: absolute;
			top: 0;
			right: 0;
			width: 480px;
			margin-top: 0;
			padding-left: 50px;
			border-left: solid 1px #c3c3c3;
		}

	.online-flow-panorama {
		width: 100%;
		height: 240px;
	}

	.online-flow-step-dl-images-panorama-wrap{
		display: flex;
	}

	.online-flow-step-dl-images-panorama{
	}
		.online-flow-step-dl-images-panorama>img{
			width: 160px;
			margin-left: -5px;
		}

	.online-flow-step-dl-images-panorama-comment{
		margin-top: 10px;
		padding-left: 5px;
		font-size: 13px;
	}

	.online-flow-step-dl-description-add{
		margin-top: 15px;
		font-size: 12px;
	}

	.online-flow-step-dl-stores-description{
		color: #f9718d;
		text-align: center;
	}

	/*consultation*/
	.online-consultation{
		margin-top: 100px;
	}

	.online-consultation-content{
		display: flex;
		max-width: 1000px;
		margin: 30px auto;
	}

	.online-consultation-content-image-wrap{
		width: 400px;
		padding: 0;
		margin: 0;
	}

	.online-consultation-content-explanation{
		display: flex;
		flex-flow: column;
		justify-content: center;
		width: 600px;
		margin: 0;
		padding: 0 0 0 50px;
	}
		.online-consultation-content-explanation>dt{
			text-align: left;
			font-size: 18px;
		}
		.online-consultation-content-explanation>dd{
			margin-top: 30px;
			padding: 0;
		}

	/*faq*/
	.online-faq{
		margin-top: 100px;
	}

	.online-faq-list{
		max-width: 900px;
		margin: 20px auto 0;
	}

	/*contact*/
	.online-contact{
		margin-top: 100px;
		padding: 100px 0;
	}

	.online-contact-title{
		font-size: 30px;
	}

	.online-contact-stores{
		padding: 30px 0;
	}

	.online-footer{
		min-width: 1000px;
	}
}