@charset "utf-8";
/* CSS Document */

/*----------------------------
top
----------------------------*/
.key-visual{
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	margin-top: 20px;
	background-image: url(../img/top/bg_key.png);
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
}
.key-visual-inner{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 37px;
	padding-top: 50px;
	padding-bottom: 100px;
}
.key-visual-catch {
	width: 100%;
	max-width: 856px;
}
.key-visual-catch img {
	width: 100%;
}
.key-menu-list{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 34px;
	width: 100%;
	max-width: 924px;
}
.key-menu-list .key_btn{
	display:block;
}
.key-menu-list .key_btn img{
	width:100%;
}
.top-service-blue{
	overflow:hidden;
	background:url(../img/top/bg_service01.png) repeat left top;
	padding:10px;
	margin-bottom:10px;
}
.top-service-red{
	overflow:hidden;
	background:url(../img/top/bg_service02.png) repeat left top;
	padding:10px;
	margin-bottom:10px;
}
.top-service-purple{
	overflow:hidden;
	background:url(../img/top/bg_service03.png) repeat left top;
	padding:10px;
	margin-bottom:10px;
}
.top-service-blue li,
.top-service-red li,
.top-service-purple li{
	float:left;
	width:358px;
	height:260px;
	position:relative;
}
.top-service-box01{
	background:url(../img/top/service_box_bg01.png) no-repeat left top;
	margin-right:10px;
}
.top-service-box02{
	background:url(../img/top/service_box_bg02.png) no-repeat left top;
}
.top-service-box03{
	background:url(../img/top/service_box_bg03.png) no-repeat left top;
	margin-right:10px;
}
.top-service-box04{
	background:url(../img/top/service_box_bg04.png) no-repeat left top;
}
.top-service-box05{
	background:url(../img/top/service_box_bg05.png) no-repeat left top;
	margin-right:10px;
}
.top-service-box06{
	background:url(../img/top/service_box_bg06.png) no-repeat left top;
}
.top-service-box07{
	background:url(../img/top/service_box_bg07.png) no-repeat left top;
	margin-right:10px;
}
.top-service-box08{
	background:url(../img/top/service_box_bg08.png) no-repeat left top;
}
.top-service-box09{
	background:url(../img/top/service_box_bg09.png) no-repeat left top;
	margin-right:10px;
}
.top-service-box10{
	background:url(../img/top/service_box_bg10.png) no-repeat left top;
}
.top-service-box11{
	background:url(../img/top/service_box_bg11.png) no-repeat left top;
}
.top-service-box12{
	background:url(../img/top/service_box_bg12.png) no-repeat left top;
}
.top-service-box-text{
	font-size:12px;
	position:absolute;
	top:54px;
	left:145px;
	width:203px;
}
.top-service-box-course{
	width:89px;
	margin: 0 auto;
	position:absolute;
	top:145px;
	left:32px;
}
.top-service-box-course p{
	margin-bottom:5px;
}
.top-service-box-btn{
	position:absolute;
	right:10px;
	bottom:10px;
}
.daiko-banner{
	position:relative;
	width:750px;
	height:234px;
	background:url(../img/top/bg_banner_daiko.png) no-repeat left top;
	margin-bottom:10px;
}
.daiko-h2{
	color:#fff;
	font-size:30px;
	font-weight:bold;
	position:absolute;
	top:120px;
	left:18px;
}
.daiko-text{
	position:absolute;
	top:165px;
	left:10px;
	font-size:14px;
	font-weight:bold;
	color:#333;
}
.daiko-btn{
	position:absolute;
	bottom:0px;
	right:0px;
}
.nayami-banner{
	position:relative;
	width:750px;
	height:194px;
	margin-bottom:20px;
}
.nayami-banner a,
.nayami-banner p{
	color:#333;
	font-weight:bold;
	font-size:13px;
}
.nayami-img{
	position:absolute;
	top:0;
	left:0;
	z-index: 1;
}
.nayami-text{
	position:absolute;
	top:140px;
	left:120px;
	width:560px;
	z-index: 2;
}
.jirei-catch{
	overflow:hidden;
}
.jirei-ttl{
	float:left;
	background:url(../img/top/bg_jirei_ttl.png) left top no-repeat;
	padding:10px;
	width:254px;
	height:113px;
	margin:0 15px;
}
.jirei-ttl-case{
	color:#935203;
	font-weight:bold;
	font-size:19px;
	margin:23px 10px 0;
}
.jirei-ttl-text{
	color:#575655;
	font-weight:bold;
	margin:0 5px;
}
.jirei-catch-pink01{
	margin:55px 0 0 10px;
	color:#ff6699;
	font-weight:bold;
	font-size:24px;
}
.jirei-catch-pink02{
	margin:30px 0 0 10px;
	color:#ff6699;
	font-weight:bold;
	font-size:24px;
}
.jirei-voice{
	overflow:hidden;
	height:191px;
	margin-bottom:10px;
	border:2px solid #e7ded2;
	background:url(../img/top/bg_jirei_voice.png) repeat-x left top;
}
.jirei-photo{
	float:left;
	width:180px;
	margin:8px 18px;
}
.jirei-voice-text{
	float:right;
	width:510px;
	padding:15px 18px 20px 0;
	font-size:15px;
}
.jirei-btn{
	width:307px;
	float:right;
	margin-right:18px;
}
.corse-ttl{
	position:relative;
	width:750px;
	height:244px;
	margin-bottom:10px;
	background:url(../img/top/bg_corse_ttl.png) no-repeat left top;
}
.corse-ttl-text{
	position:absolute;
	top:180px;
	left:10px;
	margin:0 10px;
}
.corse-items {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
	margin-bottom: 20px;
}
.corse-item {
	position: relative;
	aspect-ratio: 348 / 398;
}
.corse-left{
	background:url(../img/top/bg_corse01.png) left top no-repeat;
}
.corse-right{
	background:url(../img/top/bg_corse02.png) left top no-repeat;
}
.corse-list-text{
	position: absolute;
	top: 45%;
	left: 15%;
	font-size:24px;
	font-weight:bold;
}
.corse-list-text .text-l {
	font-size: 35px;
}
.corse-list-btn{
	position: absolute;
	left: 50%;
	bottom: 10%;
	transform: translateX(-50%);
}
.reason-box{
	width:750px;
	height:536px;
	background:url(../img/top/bg_reason.png) left top no-repeat;
	margin-bottom:20px;
}
.reason-list{
	overflow:hidden;
	padding:110px 0px 0 8px;
}
.reason-list li{
	width:184px;
	float:left;
}
.news-box{
	border-top:8px solid #ff9900;
	padding:15px;
}
.news-text{
	border-bottom:2px dotted #dedede;
	padding:10px 0;
	overflow:hidden;
}
.news-text dt{
	width:70px;
	float:left;
	color:#fc2a54;
	line-height:2;
}
.news-text dd{
	margin-left:80px;
}
.fc-aqua{
	color:#37bcff;
	font-weight:bold;
	font-size:18px;
}
.oshirase_link{
	text-align:right;
	margin:10px 0 20px;
}
.oshirase_link span{
	background:url(../img/share/icon_blue_arrow.png) left center no-repeat;
	padding-left:15px;
}
.voice-area{
	width:750px;
	height:765px;
	background:url(../img/top/voice_bg.png) left 195px no-repeat;
	position:relative;
	margin-bottom:30px;
}
.voice-area h2{
	text-align:center;
}
.voice-user01{
	position:absolute;
	top:686px;
	left:20px;
	z-index:4;
}
.voice-user02{
	position:absolute;
	top:677px;
	left:163px;
	z-index:3;
}
.voice-user03{
	position:absolute;
	top:682px;
	left:354px;
	z-index:2;
}
.voice-user04{
	position:absolute;
	top:497px;
	left:188px;
	z-index:5;
}
.voice-user05{
	position:absolute;
	top:486px;
	left:0px;
	z-index:8;
}
.voice-user06{
	position:absolute;
	top:864px;
	left:184px;
	z-index:7;
}
.voice-user07{
	position:absolute;
	top:862px;
	left:344px;
	z-index:6;
}
.voice-user08{
	position:absolute;
	top:540px;
	left:522px;
	z-index:2;
}
.voice-user09{
	position:absolute;
	top:1047px;
	left:8px;
	z-index:12;
}
.voice-user10{
	position:absolute;
	top:1071px;
	left:185px;
	z-index:11;
}
.voice-user11{
	position:absolute;
	top:1060px;
	left:346px;
	z-index:10;
}
.voice-user12{
	position:absolute;
	top:523px;
	left:339px;
	z-index:3;
}

.voice-user13{
	position:absolute;
	top:297px;
	left:5px;
	z-index:4;
}
.voice-user14{
	position:absolute;
	top:477px;
	left:180px;
	z-index:3;
}
.voice-user15{
	position:absolute;
	top:482px;
	left:354px;
	z-index:2;
}
.voice-user16{
	position:absolute;
	top:305px;
	left:539px;
	z-index:1;
}

.voice-user17{
	position:absolute;
	top:306px;
	left:5px;
	z-index:4;
}
.voice-user18{
	position:absolute;
	top:297px;
	left:184px;
	z-index:3;
}
.voice-user19{
	position:absolute;
	top:326px;
	left:366px;
	z-index:2;
}
.voice-user20{
	position:absolute;
	top:299px;
	left:530px;
	z-index:1;
}


.goclean-area{
	width:750px;
	height:308px;
	background:url(../img/top/go_cleaning_ttl.png) left top no-repeat;
}
.goclean-text{
	padding:68px 90px 0;
}
.goclean-list{
	padding:20px;
	overflow:hidden;
}
.goclean-list li{
	float:left;
	width:220px;
	margin:0 10px 10px 0;
	padding:5px 5px 0;
	font-size:24px;
	font-weight:bold;
	color:#fff;
	text-align:center;
	background-color:#59c8cb;
	border-radius:6px;
	line-height:1.1;
	height: 60px;
}
.goclean-list li.col1{
	line-height:1.9;
}
.camp-ttl{
	background:url(../img/top/bg_campaign_ttl.png) left top no-repeat;
	padding: 20px 15px 0 366px;
	font-size:12px;
	height:30px;
}
.campaign-area{
	border:5px solid #ff9999;
	margin-bottom:20px;
}
.campaign-banner{
	width:610px;
	margin:10px auto;
}
.ranking-area{
	border-left:12px solid #ffe7a7;
	border-right:12px solid #ffe7a7;
	border-bottom:12px solid #ffe7a7;
	padding:10px 10px 10px;
	margin-bottom:20px;
}
.ranking-list01{
	background:url(../img/top/icon_ranking01.png) left top no-repeat;
	padding-left:303px;
	margin:20px 0 0;
	font-size:13px;
}
.ranking-list02{
	background:url(../img/top/icon_ranking02.png) left top no-repeat;
	padding-left:303px;
	margin:20px 0 0;
	font-size:13px;
}
.ranking-list03{
	background:url(../img/top/icon_ranking03.png) left top no-repeat;
	padding-left:303px;
	margin:20px 0 0;
	font-size:13px;
}
.ranking-list04{
	background:url(../img/top/icon_ranking04.png) left top no-repeat;
	padding-left:303px;
	margin:20px 0 0;
	font-size:13px;
}
.ranking-list05{
	background:url(../img/top/icon_ranking05.png) left top no-repeat;
	padding-left:303px;
	margin:20px 0 0;
	font-size:13px;
}

/*お知らせ*/
p#new_text{
	background:#f2f2f2;
	border:solid 2px #ffc000;
	border-radius:5px;
	padding:10px;
	text-align:center;
	margin-bottom:20px;

}
p#new_text span{
	color:#F00;
}

/* key-menu */
.key-menu .corse-left {
	float: none;
	width: 250px;
	height: auto;
	margin: 0;
	padding: 0;
	aspect-ratio: 368 / 418;
	background: initial;
	background-image: url(../img/top/bg_corse01.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;}

.key-menu .corse-right {
	float: none;
	width: 250px;
	height: auto;
	margin: 0;
	padding: 0;
	aspect-ratio: 368 / 418;
	background: initial;
	background-image: url(../img/top/bg_corse02.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.key-menu .corse-list-text{
	margin:140px 0px 10px 8px;
	font-size:14px;
	font-weight:bold;
}

.key-menu .corse-list-btn {
	width: 85%;
	margin-left: auto;
	margin-right: auto;
}

.key-menu .corse-list-btn img {
	max-width: initial;
	width: 100%;
	height: auto;
}