@charset "EUC-JP";



/* ------------------------------
	.head_ttl_box
------------------------------ */
.head_ttl_box{
	background: url(../img/guide/head_img.png) no-repeat center center;
	background-size: 100%;
}

.head_ttl_box .head_ttl{
	color: #333;
	text-shadow: none;
}


@media screen and (max-width: 768px){
	.head_ttl_box{
		background: url(../img/guide/head_img_sp.png) no-repeat center center;
		background-size: cover;
	}
}



/* ------------------------------
	.sec_ttl
------------------------------ */
.sec_ttl{
	text-align: center;
	font-size: 4.0rem;
	font-weight: bold;
	line-height: 1.6;
}


@media screen and (max-width: 768px){
	.sec_ttl{
		font-size: 2.0rem;
	}
}



/* ------------------------------
	.guide
------------------------------ */
.guide{
	padding: 75px 0 145px;
}

.guide .sec_ttl{
	margin-bottom: 40px;
}

.guide .lead{
	line-height: 2;
	font-size: 1.5rem;
}


@media screen and (max-width: 768px){
	.guide{
		padding: 25px 0 55px;
	}

	.guide .sec_ttl{
		margin-bottom: 30px;
	}

	.guide .lead{
		line-height: 1.6;
	}
}



/* ------------------------------
	.process
------------------------------ */
.process{
	padding-bottom: 210px;
}

.process .ttl{
	padding-top: 185px;
	margin-bottom: 40px;
	background: url(../img/guide/ico_step1.png) no-repeat center top;
	background-size: 138px;
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
}

.process .lead{
	font-size: 1.5rem;
	line-height: 2;
	text-align: center;
}

.process_box{
	position: relative;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	padding: 80px 0 105px;
}

.process_box > div{
	position: relative;
	width: 30.5%;
	height: 320px;
	padding-top: 240px;
	border: 1px solid #dcd7c4;
	border-radius: 15px;
}

.process_box > div + div{
	margin-left: 4.25%;
}

.process_box > div + div::before{
	position: absolute;
	top: 0;
	bottom: 0;
	left: -35px;
	margin: auto;
	content: "";
	display: block;
	width: 30px;
	height: 63px;
	background: url(../img/guide/guide_ico01.png) no-repeat center center;
	background-size: 29px;
}

.process_box > div:nth-child(1){
	background: #fff url(../img/guide/process_ico01.png) no-repeat center 105px;
	background-size: 114px;
}
.process_box > div:nth-child(2){
	background: #fff url(../img/guide/process_ico02.png) no-repeat center 80px;
	background-size: 98px;
	padding-top: 230px;
}
.process_box > div:nth-child(3){
	background: #fff url(../img/guide/process_ico03.png) no-repeat center 95px;
	background-size: 100px;
}

.process_box > div .guide_num{
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
}
.process_box > div .guide_num img{
	width: 100%;
}

.process_box > div:nth-child(1) .guide_num{
	top: -7px;
	left: 15px;
	width: 48px;
}
.process_box > div:nth-child(2) .guide_num{
	top: -7px;
	left: -20px;
	width: 75px;
}
.process_box > div:nth-child(3) .guide_num{
	top: -7px;
	left: -10px;
	width: 66px;
}

.process_box p{
	text-align: center;
	font-size: 2.0rem;
	line-height: 1.3;
	font-weight: bold;
}

.process .btn_bk{
	max-width: 710px;
	margin: 0 auto;
	padding: 22px 0 20px;
	font-size: 2.8rem;
}


@media screen and (max-width: 768px){
	.process{
		padding-bottom: 35px;
	}

	.process_box{
		justify-content: flex-start;
		padding: 35px 0 0;
	}

	.process .ttl{
		padding-top: 120px;
		margin-bottom: 25px;
		background-size: 100px;
		font-size: 1.8rem;
	}

	.process .lead{
		line-height: 1.6;
		text-align: left;
	}

	.process_box > div{
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 100px;
		padding: 0 10% 0 115px;
		margin-bottom: 0;
		border-radius: 8px;
	}

	.process_box > div:nth-child(even){
		margin-left: 0;
	}

	.process_box > div + div{
		margin-left: 0;
		margin-top: 35px;
	}

	.process_box > div + div::before{
		position: absolute;
		top: -35px;
		bottom: initial;
		right: 0;
		left: 0;
		margin: auto;
		content: "";
		display: block;
		width: 15px;
		height: 30px;
		background: url(../img/guide/guide_ico01.png) no-repeat center center;
		background-size: 14px;
		transform: rotate(90deg);
	}

	.process_box > div:nth-child(1) .guide_num{
		top: -10px;
		left: 10px;
		width: 26px;
	}
	.process_box > div:nth-child(2) .guide_num{
		top: -10px;
		left: -8px;
		width: 43px;
	}
	.process_box > div:nth-child(3) .guide_num{
		top: -10px;
		left: -5px;
		width: 39px;
	}

	.process_box > div:nth-child(1){
		background-size: 57px;
		background-position: 55px center;
	}
	.process_box > div:nth-child(2){
		background-size: 49px;
		background-position: 60px center;
		padding-top: 0;
	}
	.process_box > div:nth-child(3){
		background-size: 49px;
		background-position: 60px center;
		padding-top: 0;
	}

	.process_box > div p{
		line-height: 1.6;
		font-size: 1.5rem;
	}
	.process_box > div:nth-child(5) p{
		line-height: 1.2;
	}

	.process .btn_bk{
		width: 80%;
		padding: 17px 0;
		margin-top: 35px;
		border-radius: 5px;
		font-size: 1.5rem;
	}
}



/* ------------------------------
	.setting
------------------------------ */
.setting{
	padding: 110px 0 160px;
}

.setting .ttl{
	padding-top: 185px;
	margin-bottom: 40px;
	background: url(../img/guide/ico_step2.png) no-repeat center top;
	background-size: 138px;
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
}

.setting .lead{
	font-size: 1.5rem;
	line-height: 2;
	text-align: center;
}

.setting_box{
	padding: 80px 0 0;
}

.setting_box > div{
	position: relative;
	min-height: 180px;
	padding: 40px 14% 40px 210px;
	border: 1px solid #dcd7c4;
	border-radius: 15px;
}

.setting_box > div + div{
	margin-top: 50px;
}

.setting_box > div + div::before{
	position: absolute;
	top: -56px;
	left: 0;
	right: 0;
	margin: auto;
	content: "";
	display: block;
	width: 30px;
	height: 63px;
	background: url(../img/guide/guide_ico01.png) no-repeat center center;
	background-size: 29px;
	transform: rotate(90deg);
}

.setting_box > div:nth-child(1){
	background: #fff url(../img/guide/setting_ico01.png) no-repeat 60px center;
	background-size: 90px;
}
.setting_box > div:nth-child(2){
	background: #fff url(../img/guide/setting_ico02.png) no-repeat 60px center;
	background-size: 91px;
}
.setting_box > div:nth-child(3){
	background: #fff url(../img/guide/setting_ico03.png) no-repeat 50px center;
	background-size: 118px;
}
.setting_box > div:nth-child(4){
	background: #fff url(../img/guide/setting_ico04.png) no-repeat 60px center;
	background-size: 90px;
}

.setting_box > div .guide_num{
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
}
.setting_box > div .guide_num img{
	width: 100%;
}

.setting_box > div:nth-child(1) .guide_num{
	top: -15px;
	right: 20px;
	width: 66px;
}
.setting_box > div:nth-child(2) .guide_num{
	top: -15px;
	right: 15px;
	width: 98px;
}
.setting_box > div:nth-child(3) .guide_num{
	top: -20px;
	right: 20px;
	width: 90px;
}
.setting_box > div:nth-child(4) .guide_num{
	top: -15px;
	right: 15px;
	width: 91px;
}

.setting_box .setting_ttl{
	margin-bottom: 10px;
	font-size: 2.0rem;
	line-height: 1.3;
	font-weight: bold;
}

.setting_box .txt{
	font-size: 1.5rem;
	line-height: 2;
}

.setting_my{
	position: relative;
	max-width: 915px;
	padding: 60px 60px 40px;
	margin: 160px auto 0;
	background-color: #ebe8e0;
	border-radius: 15px;
}

.setting_my::before{
	position: absolute;
	top: -40px;
	left: -45px;
	margin: auto;
	content: "";
	display: block;
	width: 145px;
	height: 100px;
	background: url(../img/guide/setting_ico05.png) no-repeat center center;
	background-size: 100px;
}

.setting_my .ttl_my{
	margin-bottom: 20px;
	font-size: 3.2rem;
	font-weight: bold;
}

.setting_my p{
	line-height: 2;
}

.setting_my .img{
	position: absolute;
	bottom: 0;
	right: 40px;
	width: 278px;
}
.setting_my .img img{
	vertical-align: middle;
}


@media screen and (max-width: 768px){
	.setting{
		padding: 35px 0 60px;
	}

	.setting .ttl{
		padding-top: 120px;
		margin-bottom: 25px;
		background-size: 100px;
		font-size: 1.8rem;
	}

	.setting .lead{
		line-height: 1.6;
		text-align: left;
	}

	.setting_box{
		justify-content: flex-start;
		padding: 35px 0 0;
	}

	.setting_box > div{
		padding: 120px 5% 20px;
		margin-bottom: 20px;
		border-radius: 8px;
	}

	.setting_box > div + div{
		margin-top: 35px;
	}

	.setting_box > div + div::before{
		position: absolute;
		top: -35px;
		margin: auto;
		content: "";
		display: block;
		width: 15px;
		height: 30px;
		background: url(../img/guide/guide_ico01.png) no-repeat center center;
		background-size: 14px;
	}

	.setting_box > div:nth-child(1) .guide_num{
		top: -10px;
		left: 10px;
		width: 26px;
	}
	.setting_box > div:nth-child(2) .guide_num{
		top: -10px;
		left: -8px;
		width: 43px;
	}
	.setting_box > div:nth-child(3) .guide_num{
		top: -10px;
		left: -5px;
		width: 39px;
	}
	.setting_box > div:nth-child(4) .guide_num{
		top: -10px;
		left: 0;
		width: 40px;
	}

	.setting_box > div:nth-child(1){
		background-size: 70px;
		background-position: center 30px;
	}
	.setting_box > div:nth-child(2){
		background-size: 68px;
		background-position: center 27px;
	}
	.setting_box > div:nth-child(3){
		background-size: 79px;
		background-position: center 35px;
		padding-top: 120px;
	}
	.setting_box > div:nth-child(4){
		background-size: 67px;
		background-position: center 23px;
	}

	.setting_box > div .setting_ttl{
		margin-bottom: 20px;
		text-align: center;
		font-size: 1.8rem;
	}
	.setting_box .txt{
		line-height: 1.6;
	}

	.setting_my{
		margin: 60px auto 0;
		padding: 20px 3%;
		border-radius: 5px;
	}

	.setting_my .img{
		top: -25px;
		right: 0;
		bottom: initial;
		width: 95px;
	}

	.setting_my::before{
		top: 18px;
		left: initial;
		right: 98px;
		width: 50px;
		height: 50px;
		background-size: 100%;
	}

	.setting_my .ttl_my{
		margin-bottom: 10px;
		font-size: 2.0rem;
		line-height: 1.5;
	}

	.setting_my p{
		font-size: 1.4rem;
		line-height: 1.6;
	}
}