@charset "utf-8";

/* == reset == */

html { font-size:100%;}
body { font-size:18px; background:#fff; font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", sans-serif; line-height:1.5; color:#333; font-weight: 500;}
body, h1, h2, h3, h4, h5, h6, p, dl, dd, ul, ol, li, form, fieldset, blockquote, table, thead, tbody, tfoot, tr, td, th { margin:0; padding:0;}
th, td, table, input, button, select, textarea {
	font-size:1rem;
	font-weight:normal;
	font-style:normal;
	padding:0;
	margin:0;
}
table {
	width:100%;
	border-width:0;
	border-spacing:0;
	border-collapse:collapse;
}
img, input, button, select, textarea {
	vertical-align:middle;
}
ul, ol {
	list-style:none;
}
a {
	color:#333;	
	text-decoration:underline;
	opacity:1;
	transition:0.3s;
}
a:hover {
	outline:none;
	text-decoration:none;
	/* opacity:0.6; */
	transition:0.3s;
}
body * {
    box-sizing: border-box;
    word-wrap: break-word;
}
img,video {
	border:0;
	max-width: 100%;
}
@media only screen and (min-width: 0) and (max-width: 767px) {
	img{
		width: 100%;
	}
}
/* == / reset == */

/* == layout == */
.ui_screen{
	display: block;
}
.pcNone {
	display:none;
}
.ui_db{
	display: block;
}
.ui_dib{
	display: inline-block;
}
.ui_df{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
.ui_aic{
	align-items: center;
}
.ui_aife{
	align-items: flex-end;
}
.ui_aifs{
	align-items: flex-end;
}
.ui_wide{
	max-width:1200px;
	margin:0 auto;
}
.ui_wide_s{
	max-width:1000px;
	margin:0 auto;
}
.ui_tac{
	text-align: center;
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
	.ui_wide,.ui_wide_s{
		width:auto;
		margin: 0 15px;
	}
}
@media only screen and (min-width: 0) and (max-width: 767px) {
	.spNone {
		display:none!important;
	}
	.pcNone {
		display:block!important;
	}
	.ui_screen{
		display: inline;
	}
	.ui_df_sp{
		display: flex;
		justify-content: space-between;
		align-items: stretch;
	}
	.ui_wide{
		margin: 0 5vw;
	}
	.ui_df{
		display: block;
	}
	.ui_df_sp{
		display: flex!important;
	}
}
/* == / layout == */

/* == / margin == */
.ui_mt0{
	margin-top: 0 !important;
}
[class *= "ui_mb_"]{
	padding-bottom: 0.1px;
}
.ui_mb0{
	margin-bottom: 0 !important;
}
.ui_mb5{
	margin-bottom: 5px !important;
}
.ui_mb10{
	margin-bottom: 10px !important;
}
.ui_mb15{
	margin-bottom: 15px !important;
}
.ui_mb20{
	margin-bottom: 20px !important;
}
.ui_mb25{
	margin-bottom: 25px !important;
}
.ui_mb30{
	margin-bottom: 30px !important;
}
.ui_mb40{
	margin-bottom: 40px !important;
}
.ui_mb60{
	margin-bottom: 60px !important;
}
@media only screen and (min-width: 0) and (max-width: 767px) {
	.ui_mt0sp{
		margin-top: 0 !important;
	}
	.ui_mb0sp{
		margin-bottom: 0 !important;
	}
	.ui_mb5sp{
		margin-bottom: 5px !important;
	}
	.ui_mb10sp{
		margin-bottom: 10px !important;
	}
	.ui_mb15sp{
		margin-bottom: 15px !important;
	}
	.ui_mb20sp{
		margin-bottom: 20px !important;
	}
	.ui_mb25sp{
		margin-bottom: 25px !important;
	}
	.ui_mb30sp{
		margin-bottom: 30px !important;
	}
	.ui_mb40sp{
		margin-bottom: 40px !important;
	}
}
/* == / margin == */


.ks_logo{
	max-width: 1200px;
	margin: 15px auto 10px;
}
#ks_seca{
	background: linear-gradient(145deg , #fffdf6 0% , #f3f086 50% , #cfdb05 100%);
	padding: 45px 0 80px;
	border-top: 3px #019a64 solid;
	position: relative;
}
.ks_kv{
	text-align: center;
}
.ks_illu li{
	position: absolute;
	z-index: 0;
}
.illu_01{
	top: 1.5%;
	left: calc(50% - 623px);
}
.illu_02{
	top: 20.7%;
	left: calc(50% - 628px);
}
.illu_03{
	top: 18%;
	left: calc(50% + 377px);
}
.ks_box01{
	max-width: 1114px;
	margin: 0 auto 40px;
	background: #e8374b;
	border-radius: 30px;
	padding: 30px 6px 6px;
	box-shadow: 8px 10px 15px rgba(0,0,0,0.3);
	position: relative;
	z-index: 9;
}
.ks_fea01{
	position: absolute;
	top: -20px;
	left: -40px;
}
.ks_h301{
	text-align: center;
	margin-bottom: 20px;
}
.ks_tit01{
	margin-left: 50px;
}
.ks_whibox{
	background: #fff;
	border-radius: 24px;
	padding: 30px 0 40px;
}
.ks_flex01{
	width: 84%;
	margin: 0 auto 25px;
}
.ks_symbol{
	z-index: 99;
}
.ks_symbol li{
	margin-right: 10px;
}
.ks_symbol li:last-child{
	margin-right: 0;
}
.ks_btn{
	display: block;
	background-image: linear-gradient(to right, #2cdc87 0%, #2cdc87 51%, #29cc7d 63.5%, #19ac78 100%);
	background-size: 200% auto;
	background-position: right center;
	width: 38.1%;
	max-width: 420px;
	box-shadow: 3px 3px 3px rgba(231,231,231,1);
	display: block;
	color: #fff;
	font-size: 1.25rem;
	margin: 0 auto;
	text-decoration: none;
	font-weight: bold;
	padding: 15px 0;
	position: relative;
	text-align: center;
	border-radius: 5px;
	transition: background 0.4s;
}
.ks_btn::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 20px;
	width: 8px;
	height: 8px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: translateY(-50%) rotate(45deg);
}
.ks_btn:hover{
	background-position: left center;
}

.ks_flex02{
	justify-content: center;
	width: 82%;
	margin: 0 auto;
}
.ks_img03{
	margin-top: -119px;
	margin-left: 30px;
	position: relative;
	z-index: 1;
}
.ks_img04{
	margin-top: -40px;
}
.ks_linebox{
	border-top: 2px #009b62 solid;
	padding-top: 30px;
	width: 82%;
	max-width: 900px;
	margin: 0 auto;
}
.ks_note01{
	margin-left: 1em;
	text-indent: -1em;
}
.ks_txt01{
	margin-right: -28px;
}
.ks_whibtn{
	background: #fff;
	color: #000;
	border: 2px #e9e9e9 solid;
}
.ks_whibtn::after{
	border-top: 2px solid #009b63;
	border-right: 2px solid #009b63;
}
.ks_whibtn:hover{
	opacity: 0.6;
}
.ks_img01{
	width: 48.4%;
}
.ks_img02{
	width: 85.5%;
	margin: 0 auto;
}
.ks_list01 li{
	width: 46%;
}
.ks_list01 li a{
	width: 100%;
}
.ks_tit03{
	margin-top: 60px;
	margin-bottom: 25px;
}
.ks_stepbox{
	width: 83.3%;
	max-width: 1000px;
	margin: 0 auto;
}
.step_item{
	background: #fff;
	position: relative;
	padding: 50px 0;
	text-align: center;
	position: relative;
	margin-bottom: 60px;
}
.step_item::after{
	content: "";
	position: absolute;
	background: url(../img/ico_step.png);
	background-size: 100%;
	bottom: -45px;
	left: 50%;
	width: 100px;
	height: 30px;
	transform: translateX(-50%);
}
.step_item:last-child{
	margin-bottom: 0;
}
.step_item:last-child::after{ 
	background: none;
}
.step_no{
	position: absolute;
	top: -15px;
	left: 7px;
	width: 11%;
}
.ks_h401{
	margin-bottom: 20px;
}
.step_btn{
	display: block;
	background-image: linear-gradient(to right, #ffb514 0%, #ffb514 51%, #faac0c 63.5%, #e78603 100%);
	background-size: 200% auto;
	background-position: right center;
	transition: background 0.4s;
	width: 52%;
	box-shadow: 3px 3px 3px rgba(231,231,231,1);
	display: block;
	color: #fff;
	font-size: 1.56rem;
	margin: 0 auto;
	text-decoration: none;
	font-weight: bold;
	padding: 23px 0;
	position: relative;
	text-align: center;
	border-radius: 5px;
}
.step_btn::after{
	content: "";
	position: absolute;
	top: 50%;
	right: 30px;
	width: 0;
	height: 0;
	border: none;
	border-style: solid;
	border-color: currentColor transparent transparent transparent;
	border-width: 14px 10px 0 10px;
	transform: translateY(-50%) rotate(-90deg);
}
.step_btn:hover{
	background-position: left center;
}
.step_ml01{
	margin-left: 19%;
}
.step_left{
	text-align: left;
}
.ks_qrbox{
	align-items: center;
	justify-content: flex-start;
}
.ks_qrbox a{
	font-size: 1.3rem;
	margin-right: 50px;
	margin-left: 30px;
}
.ks_qrbox div{
	margin-top: -25px;
}
.step_ml02{
	margin-left: 15%;
}

#ks_secb{
	padding: 60px 0;
	text-align: center;
}
.seb_h3{
	font-size: 1.875rem;
	color: #009b63;
	font-weight: bold;
	text-align: center;
	position: relative;
	display: inline-block;
	margin-bottom: 25px;
}
.seb_h3::before{
	content: "";
	position: absolute;
	top: 0;
	left: -66px;
	width: 52px;
	height: 82px;
	background: url(../img/ico_left.png) no-repeat;
}
.seb_h3::after{
	content: "";
	position: absolute;
	top: 0;
	right: -66px;
	width: 52px;
	height: 82px;
	background: url(../img/ico_right.png) no-repeat;
}
.arrow_none::after{
	display: none;
}
.seb_h4{
	font-size: 1.56rem;
	color: #f0831e;
}
.ks_orange{
	padding: 15px 0;
	background-image: linear-gradient(to right, #ffb514 0%, #ffb514 51%, #faac0c 63.5%, #e78603 100%);
}
#ks_secc{
	margin-bottom: 100px;
}
.secc_box{
	position: relative;
}
.secc_box a{
	position: absolute;
	left: 50%;
	bottom: 7%;
	transform: translateX(-50%);
}
#ks_secd{
	background: #009b62;
	padding-bottom: 70px;
}
.secd_img01{
	top: -30px;
	position: relative;
	text-align: center;
	margin-bottom: 10px;
}
.secd_service{
	flex-wrap: wrap;
	width: 85%;
	max-width: 1003px;
	margin: 0 auto 10px;
	justify-content: flex-start;
}
.secd_service li{
	width: 32.5%;
	margin-bottom: 14px;
	margin-right: 12px;
}
.secd_service li:nth-child(3n){
	margin-right: 0;
}
.secd_note{
	width: 83.5%;
	margin: 0 auto 30px;
	color: #fff;
}
.secd_note a{
	color: #ffec54;
}
.ks_white{
	background: #fff;
	color: #000;
	box-shadow: 5px 8px 5px rgba(0,140,91,0.5);
}
.ks_white:hover{
	opacity: 0.6;
}
#ks_sece{
	padding: 110px 0 80px;
}
#ks_sece .step_btn{
	width: 35%;
	font-size: 1.25rem;
	margin-bottom: 120px;
}
.ui_open_btn{
	position: relative;
	padding-bottom: 7px;
	border-bottom: 2px solid #7eccb2;
	/* cursor: pointer; */
	transition: 0.3s;
	font-size: 1.56rem;
	font-weight: bold;
	margin-bottom: 20px;
}
/* .ui_open_btn::after{
	content: '';
	position: absolute;
	right: 0;
	top: 5px;
	width: 30px;
	height: 30px;
	background: url(../img/ico_open.png);
}
.ui_open_btn.is_on::after{
	background: url(../img/ico_close.png);
	width: 31px;
	height: 31px;
} */
.ui_open_box{
	/* display: none; */
}
.ks_notice p{
	line-height: 1.7;
}
.ui_font_red{
	color: #e50012;
}
.ui_font_green{
	color: #009b63;
}
.ui_note01{
	margin-left: 1em;
	text-indent: -1em;
}
.ui_note01 span{
	color: #009b63;
}
#ks_footer{
	background: #009b62;
	padding: 15px 0;
	text-align: center;
}
#ks_footer p{
	color: #fff;
	font-size: 0.93rem;
}
.br_sp01{
	display: none;
}
.sece_h3 strong{
	font-size: 3.37rem;
	color: #e50012;
	line-height: 1.3;
}
.sece_mb01{
	margin-bottom: 120px;
}


@media only screen and (min-width: 768px) and (max-width: 1199px) { /*PAD*/
		.ks_fea01{
			left: -12px;
		}
		.ks_tit01{
			width: 80%;
			margin: 0 auto 20px;
			margin-left: 15%;
		}
		.ks_tit02{
			width: 52%;
			margin: 0 auto 20px;
		}
		.ks_img03{
			width: 93.1%;
			margin: -10% auto 0;
		}
		.ks_img04{
			width: 38.7%;
			margin: -3% auto 0;
		}
		.ks_note01{
			font-size: 0.93rem;
		}
		.ks_txt01 {
		  margin-right: 0;
		}
		.spNone{
			display: none;
		}
		.ks_btn{
			font-size: 0.93rem;
		}
		.ks_list01 li:first-child .ks_btn{
			padding-left: 20px;
		}
		.ks_list01 .ks_btn::after {
			left: 10px;
		}
		.step_ml01,
		.step_ml02{
			margin-left: 13%;
			margin-right: 1%;
		}
		.secd_service li{
			margin-right: 5px;
			margin-bottom: 5px;
		}
		#ks_sece .step_btn{
			width: 40%;
			font-size: 1.1rem;
		}
		.padblock{
			display: block;
			margin-top: 10px;
		}
		.padblock .ks_orange{
			width: 52%;
		}
		.secc_box a{
			bottom: 2.5vw;
		}
		

}
@media only screen and (min-width: 0) and (max-width: 767px) { /*SP*/
		#ks_seca{
			background: linear-gradient(145deg , #fffdf6 0% , #e4e64d 50% , #ceda00 100%);
			padding: 15px 0 25px;
		}
		.ks_logo{
			margin: 10px 0 5px;
		} 	
		.ks_logo img{
			width: 31%;
		}
		.ks_box01{
			border-radius: 10px;
			padding: 14px 3px 3px;
			box-shadow: 5px 5px 10px rgba(0,0,0,0.3);
		}
		.ks_whibox{
			border-radius: 7px;
			padding: 15px 25px 20px;
		}
		.ks_fea01{
			width: 80px;
			top: -20px;
			left: -17px;
		}
		.ks_tit01{
			margin: 0 30px 10px 70px;
		}
		.ks_col01{
			width: 80%;
			margin: 0 auto 10px;
		}
		.ks_symbol{
			width: 86%;
			margin: 0 auto 15px;
		}
		.ks_symbol li {
		  margin-right: 4px;
		}
		.ks_flex01{
			margin-bottom: 0;
		}
		.ks_img01{
			margin-left: -26px;
			width: 93%;
		}
		.ks_img02{
			width: 89%;
			margin: 0 auto;
		}
		.ks_btn{
			font-size: 0.875rem;
			padding: 10px 0;
			width: 100%;
		}
		.ks_btn::after{
			content: "";
			position: absolute;
			top: 50%;
			left: 15px;
			width: 6px;
			height: 6px;
			border-top: 1px solid currentColor;
			border-right: 1px solid currentColor;
			transform: translateY(-50%) rotate(45deg);
		}
		.ks_flex02{
			flex-wrap: wrap;
		}
		.ks_li01{
			width: 100%;
			margin-bottom: 5px;
		}
		.ks_li02{
			width: 51%;
		}
		.ks_li03{
			width: 47%;
		}
		.ks_img03{
			margin: -12px -12px 20px 0;
		}
		.ks_img04{
			width: 75%;
			margin: 0 auto;
		}
		.ks_linebox{
			width: 100%;
			padding-top: 10px;
		}
		.ks_note01{
			font-size: 0.75rem;
		}
		.ks_txt01{
			margin-right: 0;
		}
		.ks_list01 li{
			width: 100%;
		}
		.ks_tit03{
			margin-top: 25px;
		}
		.ks_stepbox{
			width: 100%;
		}
		.step_no{
			width: 16%;
			top: -7px;
			left: 5px;
		}
		.step_item{
			padding: 20px 0;
			margin-bottom: 33px;
		}
		.step_item::after {
			content: "";
			position: absolute;
			background-size: 100%;
			bottom: -25px;
			width: 50px;
			height: 15px;
		}
		.step_btn{
			width: 86%;
			font-size: 1rem;
		}
		.step_btn::after {
			content: "";
			position: absolute;
			right: 20px;
			border-width: 14px 8px 0 8px;
		}
		.ks_note01.ks_note02{
			text-align: left;
			padding: 0 10px;
		}
		.step_ml01,
		.step_ml02{
			margin-left: 0;
		}
		.ui_tac_sp{
			text-align: center;
		}
		.ks_orange{
			width: 86%;
			margin-top: 10px;
			padding: 13px 0;
			background: linear-gradient(90deg , #ffb514 0% , #e78603 100%);
		}
		.seb_h3{
			font-size: 1rem;
			margin-bottom: 10px;
		}
		.seb_h3::before {
			content: "";
			position: absolute;
			top: 3px;
			left: -33px;
			width: 26px;
			height: 41px;
			background-size: 100% 100%;
		}
		.seb_h3::after{
			content: "";
			position: absolute;
			top: 3px;
			right: -33px;
			width: 26px;
			height: 41px;
			background-size: 100% 100%;
		}
		.seb_h4{
			font-size: 1rem;
		}
		.secc_box a{
			position: absolute;
			bottom: -8vw;
		}
		#ks_secc {
		  margin-bottom: 130px;
		}
		.secd_img01{
			margin-left: -10px;
			margin-right: -10px;
		}
		.secd_service{
			width: 100%;
			max-width: 100%;
			justify-content: space-between;
			margin-bottom: 10px;
		}
		.secd_service li{
			width: 49%;
			margin-right: 0;
		}
		.secd_img01{
			margin-bottom: -20px;
		}
		.ks_white{
			width: 86%;
		}
		#ks_secd{
			padding-bottom: 30px;
		}
		#ks_sece{
			padding: 40px 0;
		}
		#ks_sece .step_btn{
			width: 86%;
			font-size: 1rem;
			margin-bottom: 60px;
			padding: 20px 0;
		}
		.ui_open_btn{
			font-size: 3.6vw;
		}
		/* .ui_open_btn::after{
			content: '';
			position: absolute;
			right: 0;
			top: -1px;
			width: 20px;
			height: 20px;
			background-size: 100% 100%;
		}
		.ui_open_btn.is_on::after{
			width: 21px;
			height: 21px;
			background-size: 100% 100%;
		} */
		.ks_notice p{
			font-size: 3.1vw;
			line-height: 1.5;
		}
		#ks_footer p{
			font-size: 2.1vw;
		}
		.secd_note{
			width: 100%;
			margin: 0 auto 20px;
			font-size: 2.6vw;
		}
		.ks_mb01{
			margin-bottom: 70px;
		}
		.arrow_none{
			width: 86%;
		}
		.sece_h3 strong{
			font-size: 5.4vw;
		}
		.sece_bnr{
			width: 52%;
			margin: 0 auto 60px;
		}
	
}

@media only screen and (min-width: 0) and (max-width: 600px) {
		.ks_mb01{
			margin-bottom: 9vw;
		}
		.secc_box a{
			bottom: -60px;
		}
		.sece_h3::before{
			left: -20px;
		}
		.sece_h3::after{
			right: -20px;
		}
		
}
@media only screen and (min-width: 0) and (max-width: 380px) {
		.ks_whibtn .br_sp01{
			display: block;
		}
		
}
















