@charset "utf-8";

/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */
/* RA PRO 表示削除*/
a[href="https://pro.research-artisan.net"] {
	display: none;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	border: 0;
	margin: 0;
	padding: 0;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

body { line-height: 1; }

ol, ul { list-style: none; }

hr, legend { display: none; }

blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

a img:hover { opacity: 0.8; }

.mgt0 { margin-top: 0px; }
.mgt10 { margin-top: 10px; }
.mgt15 { margin-top: 15px; }
.mgt20 { margin-top: 20px; }
.mgt25 { margin-top: 25px; }
.mgt30 { margin-top: 30px; }
.mgt40 { margin-top: 40px; }
.mgt50 { margin-top: 50px; }
.mgt70 { margin-top: 70px; }
.mgb10 { margin-bottom: 10px; }
.mgb15 { margin-bottom: 15px; }
.mgb20 { margin-bottom: 20px; }
.mgb25 { margin-bottom: 25px; }
.mgb30 { margin-bottom: 30px; }
.mgb50 { margin-bottom: 50px; }
.mgb70 { margin-bottom: 70px; }
.mgl30 { margin-left: 30px; }
.mgl45 { margin-left: 45px; }
.mgl50 { margin-left: 50px; }
.w60 { width: 60%; }
.txt-yellow { color: #ff0; }


/*-------------------- 全体 --------------------*/
body {
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	font-weight: 500;
}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
p {
	font-size: 14px;
	margin: 15px 0;
	letter-spacing: 0.1em;
	line-height: 1.3;
	text-align: justify;
}
img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
	margin: 0 auto;
}
.wrapper {
	width: 100%;
	margin: 0 auto;
	background: #fff;
}
.wrapper_B {
	width: 100%;
	margin: 0 auto;
}
.inner {
	width: 90%;
	margin: 0 auto;
}
header {
	border-top: 13px solid #f14787;
	border-bottom: 3px solid #f14787;
	padding: 12px 0 13px 0;
	overflow: hidden;
	background: #fff;
}
header img {
	float: left;
	width: 50%;
	margin-left: 13px;
}
header img:first-child {
	float: left;
	width: 30%;
	margin-left: 14px;
}
.movie {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.movie iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 90% !important;
}
.form {
	margin-top: 25px;
	padding-bottom: 30px;
}
.form a img { width: 90%; }
.form img { width: 60%; }
.update {
	position: absolute;
	font-weight: bold;
	font-size: 10px;
	margin: 0;
	top: 24%;
	right: 12%;
}
.sub {
	position: absolute;
	text-align: justify;
	font-size: 10px;
	top: 30%;
	margin: 0 10px 0 10px;
}

.update span {
	color: #cc3535;
	margin-right: 10px;
	font-size: 12px;
}
.cv_btn { position: relative; }
.txt_position { position: relative; }

.mfp .scrollY {
	height: 80px;
	overflow-y: scroll;
	border: 1px solid #CCC;
	background-color: #FFF;
	padding: 6px;
}

.underline { background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 102) 0%); }

/*--▼ Google reCAPTCHA ▼--*/
.grecaptcha-badge { visibility: hidden; }


/*----- ■sec01 / FV・KV -----*/
#sec01 .header_img {
	position: relative;
	z-index: 1;
}
#sec01 video {
	width: 100%;
	height: auto;
	margin-top: 0;
}

#sec01 .offer-wrapper {
	aspect-ratio: 750 / 459;
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
}
#sec01 .offer-img {
	aspect-ratio: 750 / 459;
	width: 100%;
	height: auto;
	display: block;
}

#sec01 h2 { position: relative; }
#sec01 .yellow01 {
	background: #ffe400;
	padding-top: 10px;
}
#sec01 .yellow01 img { width: 94%; }
#sec01 .inner { margin: 0 auto 15px; }
#sec01 .attention {
	padding: 0px 12px;
	background: #ffe400;
	overflow: hidden;
}
#sec01 .attention p {
	margin: 5px 0 15px;
	font-size: 12px;
}
#sec01 h3 {
	font-size: 24px;
	text-align: center;
	color: #f14787;
	font-weight: bold;
	line-height: 1.4;
}
#sec01 h3:nth-child(2) { padding-bottom: 20px; }
#sec01 h3 span { font-size: 18px; }
#sec01 h3 .small {
	font-size: 16px;
	color: #000
}
#sec01 h3 img { padding-top: 0; }
#sec01 .img100 { width: 100% !important; }
#sec01 .img_element {
	position: relative;
	z-index: 1;
	margin-top: -16px;
}
#sec01_summary { padding: 0; }
#sec01_summary .cv_btn_area_A {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 59%;
}
#sec01_summary .cv_btn_area_B {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 23%;
}
#sec01_summary .btn_arr_pt1 { position: relative; }
#sec01_summary .btn_pt1 a {
	position: relative;
	display: block;
	color: #FFF;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: .85;
	border-radius: 80px;
	border: 3px solid #FFF;
	background: linear-gradient(180deg, #1F9C2F 0%, #1F9C2F 50%, #0C7C1F 50%, #0C7C1F 100%);
	padding: 13px;
}
#sec01_summary .btn_arr_pt1 a::before {
	content: "";
	position: absolute;
	top: 38%;
	right: 6%;
	width: 10px;
	height: 10px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(135deg);
}

/*----- ■sec02 / サイトをご覧になった方限定・限定5大特典キャンペーン -----*/
#sec02 { padding: 0; }
#sec02 h3 {
	font-size: 24px;
	text-align: center;
	color: #f14787;
	font-weight: bold;
	margin-bottom: 10px;
}
#sec02_summary { padding: 0; }
#sec02_summary .cv_btn_area_A {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 49%;
}
#sec02_summary .cv_btn_area_B {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 5%;
}
#sec02_summary .btn_arr_pt1 { position: relative; }
#sec02_summary .btn_pt1 a {
	position: relative;
	display: block;
	color: #FFF;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: .85;
	border-radius: 80px;
	border: 3px solid #FFF;
	background: linear-gradient(180deg, #1F9C2F 0%, #1F9C2F 50%, #0C7C1F 50%, #0C7C1F 100%);
	padding: 13px;
}
#sec02_summary .btn_arr_pt1 a::before {
	content: "";
	position: absolute;
	top: 38%;
	right: 6%;
	width: 10px;
	height: 10px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(135deg);
}

/*----- ■sec02_02/ 他社比較してみました -----*/
#sec02_02 { padding: 0; }

/*----- ■sec02_03 / 様々なコースご用意しました -----*/
#sec02_03 { padding: 0; }

/*----- ■sec03 / 価格だけで選んでいませんか? -----*/
#sec03 { padding: 0; }

/*----- ■sec04 / どこにも負けない洗浄技術 -----*/
#sec04 {
	padding: 0;
	margin-top: -10px;
}

/*----- ■sec05 / 作業の流れ・STEP01-04 -----*/
#sec05 { padding: 0; }
/*-- アコーディオン --*/
#sec05 .toggle_contents {
	background: #3475db;
	width: 95%;
	margin: 0 auto;
}
#sec05 .toggle_title {
	color: #FFF;
	font-size: 19px;
	font-weight: bold;
	line-height: 60px;
	letter-spacing: 0.04em;
	text-align: center;
	margin: 0;
	position: relative;
	cursor: pointer;
	transition: 0.3s;
}
#sec05 .toggle_title:hover { color: #FFF; }
#sec05 .toggle_title:after {
	content: "";
	display: inline-block;
	width: 36px;
	height: 36px;
	background: url(img/btn_arrow-sp.png) no-repeat right top;
	position: absolute;
	top: 50%;
	right: 2%;
	transform: translateY(-50%);
	transition: 0.2s;
}
#sec05 .toggle_title.selected:after {
	transform: translateY(-50%) rotate(180deg);
	transition: 0.2s;
}
#sec05 .toggle_contants {
	display: none;
	background-color: #FFF;
	border: 3px solid #3475db;
}
#sec05 .toggle_img {
	width: 95%;
	margin-top: 10px;
	margin-bottom: 20px;
}

#sec05_summary {
	margin-top: 20px;
	padding: 0;
}
#sec05_summary .cv_btn_area_A {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 49%;
}
#sec05_summary .cv_btn_area_B {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 7%;
}
#sec05_summary .btn_arr_pt1 { position: relative; }
#sec05_summary .btn_pt1 a {
	position: relative;
	display: block;
	color: #FFF;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: .85;
	border-radius: 80px;
	border: 3px solid #FFF;
	background: linear-gradient(180deg, #1F9C2F 0%, #1F9C2F 50%, #0C7C1F 50%, #0C7C1F 100%);
	padding: 13px;
}
#sec05_summary .btn_arr_pt1 a::before {
	content: "";
	position: absolute;
	top: 38%;
	right: 6%;
	width: 10px;
	height: 10px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(135deg);
}

/*----- ■sec07_voice -----*/
#sec07_voice { padding: 0; }
#sec07_voice .txt_area-01 {
	position: absolute;
	left: 6.8%;
	bottom: 33.7%;
	width: 86.6%;
}
#sec07_voice .txt_area-01 p {
	margin-top: 0px;
	font-size: 12px;
	font-weight: bold;
	text-align: justify;
	line-height: 1.46;
	font-feature-settings: "palt";
}
#sec07_voice .txt_area-02 {
	position: absolute;
	left: 11%;
	bottom: 12.2%;
	width: 78.6%;
}
#sec07_voice .txt_area-02 p {
	margin-top: 0px;
	font-size: 12px;
	font-weight: bold;
	text-align: justify;
	line-height: 1.46;
	font-feature-settings: "palt";
}

/*----- sec07 -----*/
#sec07 { padding: 0; }
#sec07 .cv_btn_area {
	position: absolute;
	bottom: 24px;
	left: 5%;
	width: 90%;
}

/*----- ■sec11 / 清掃の様子をチェック -----*/
#sec11 { padding: 0; }
#sec11 .movie video { width: 100%; }
#sec11_summary { padding: 0; }
#sec11_summary .cv_btn_area_A {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 42%;
}
#sec11_summary .cv_btn_area_B {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 5%;
}
#sec11_summary .btn_arr_pt1 {
	position: relative;
}
#sec11_summary .btn_pt1 a {
	position: relative;
	display: block;
	color: #FFF;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: .85;
	border-radius: 80px;
	border: 3px solid #FFF;
	background: linear-gradient(180deg, #1F9C2F 0%, #1F9C2F 50%, #0C7C1F 50%, #0C7C1F 100%);
	padding: 13px;
}
#sec11_summary .btn_arr_pt1 a::before {
	content: "";
	position: absolute;
	top: 38%;
	right: 6%;
	width: 10px;
	height: 10px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(135deg);
}

/*----- 出張無料エリア -----*/
#sec14, #sec14B { margin-top: 20px; }
#sec14 h3, #sec14B h3 {
	font-size: 24px;
	font-weight: bold;
	color: #42220d;
	text-align: center;
	margin-bottom: 10px;
}
/*--アコーディオン--*/
#sec14 .toggle_contents, #sec14B .toggle_contents {
	background: #1C56AB;
	width: 100%;
	margin: 0 auto;
}
#sec14 .toggle_title, #sec14B .toggle_title {
	color: #FFF;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: 0.04em;
	text-align: left;
	margin: 0;
	padding: 10px;
	position: relative;
	cursor: pointer;
	transition: 0.3s;
}
#sec14 .toggle_title:hover, #sec14B .toggle_title:hover { color: #FFF; }
#sec14 .toggle_title:after, #sec14B .toggle_title:after {
	content: "";
	display: inline-block;
	width: 16px;
	height: 8px;
	background: url(img/btn_arrowC.png) no-repeat right top;
	position: absolute;
	top: 50%;
	right: 2%;
	transform: translateY(-50%);
	transition: 0.2s;
}
#sec14 .toggle_title.selected:after, #sec14B .toggle_title.selected:after {
	transform: translateY(-50%) rotate(180deg);
	transition: 0.2s;
}
#sec14 .toggle_contants, #sec14B .toggle_contants {
	display: none;
	background-color: #FFF;
	border: 3px solid #3475db;
	padding: 10px;
	font-size: 14px;
}
#sec14 .toggle_img, #sec14B .toggle_img {
	width: 95%;
	margin-top: 10px;
	margin-bottom: 20px;
}

/*----- ■sec15 / 注意事項 -----*/
#sec15 { margin-bottom: 0px; }
#sec15 .status { margin-top: 20px; }
#sec15 p {
	margin: 10px 0;
	font-size: 12px;
	text-align: justify;
}

/*----- ■sec16 / よくある質問 -----*/
#sec16 { margin-top: 20px; }

#sec16 h3 {
	font-size: 24px;
	font-weight: bold;
	color: #42220d;
	text-align: center;
	margin-bottom: 10px;
}
/*--アコーディオン--*/
#sec16 .toggle_contents {
	background: #1C56AB;
	width: 100%;
	margin: 0 auto;
}
#sec16 .toggle_title {
	color: #FFF;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: 0.04em;
	text-align: left;
	margin: 0;
	padding: 14px 24px 14px 14px;
	position: relative;
	cursor: pointer;
	transition: 0.3s;
}
#sec16 .toggle_title:hover { color: #FFF; }
#sec16 .toggle_title:after {
	content: "";
	display: inline-block;
	width: 16px;
	height: 8px;
	background: url(img/btn_arrowC.png) no-repeat right top;
	position: absolute;
	top: 50%;
	right: 2%;
	transform: translateY(-50%);
	transition: 0.2s;
}
#sec16 .toggle_title.selected:after {
	transform: translateY(-50%) rotate(180deg);
	transition: 0.2s;
}
#sec16 .toggle_contants {
	display: none;
	background-color: #FFF;
	border: 3px solid #3475db;
	padding: 10px;
}
#sec16 .toggle_img {
	width: 95%;
	margin-top: 10px;
	margin-bottom: 20px;
}

/*----- ■sec17 / 注釈 -----*/
#sec17 { margin-bottom: 0px; }
#sec17 .element {
	padding: 0 15px;
}
#sec17 .heading {
	background-color: #DDD;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	letter-spacing: .06rem;
	padding: 8px 5px 5px;
	margin-bottom: 15px;
}
#sec17 .heading span {
	font-size: 12px;
}
#sec17 p {
	font-size: 12px;
	letter-spacing: .12rem;
	line-height: 1.0rem;
	text-align: justify;
	color: #4D4D4D;
	text-indent: -1em;
  padding-left: 1em;
	margin-bottom: 8px;
}

/*----- ■scontact-fm / お問い合わせフォーム -----*/
#contact-fm {
	padding: 0;
	margin-bottom: 0;
}
#contact-fm h2 {
	font-size: 22px;
	font-weight: 600;
	text-align: center;
	background-color: #F591B7;
	line-height: 1.2;
	border-top: 3px solid #000;
	padding: 10px;
}
#contact-fm h2 span {
	font-size: 14px;
	text-align: center;
}
#contact-fm .s {
	font-size: 12px;
	margin: 5px 0;
}
#contact-fm_summary {
	padding: 0;
	margin-top: 20px;
}
#contact-fm_summary .cv_btn_area {
	position: absolute;
	bottom: 21%;
	left: 10%;
	width: 80%;
}

/*----- ■Footer -----*/
#footer {
	background-color: #B00D49;
	padding: 10px;
	margin-top: 15px;
	text-align: center;
	margin-bottom: 70px;
}
#footer .copy {
	font-size: 12px;
	text-align: center;
	color: #fff;
	margin-top: 6px;
}
#footer a {
	color: #FFF;
	font-size: 15px;
	font-weight: bold;
	text-decoration: none;
}
#footer .max:hover {
	text-decoration: underline;
	opacity: 1.0;
}

/*----- フローティングボタン -----*/
.footer_area {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0, 0, 0, 0.6);
	z-index: 10000;
}
.footer_area .footer_area_inner {
	position: relative;
	margin: 0px auto;
	padding: 6px 0;
	padding-left: 0.4rem;
	padding-right: 0.4rem;
	text-align: center;
}
.footer_area .footer_area_inner .footer_area_inner_btn {
	width: 85%;
	padding: 11px 0;
	font-weight: bold;
	margin-left: 15px;
	line-height: 1.3;
}
.footer_area_contact_box {
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.footer_area_inner .reception_icon {
	float: left;
	width: 31%;
	margin-bottom: 0;
}
.footer_area_inner .reception_icon02 {
	float: left;
	width: 100%;
	margin-bottom: 0;
	padding-top: 4px;
}
.inquiry_btn {
	display: inline-block;
	width: 42%;
	background-color: #F39801;
	-webkit-border-radius: 10px;
	font-weight: bold;
	border: 2px solid #FFF;
	text-decoration: none;
	padding: 6px 8px 6px;
	background: linear-gradient(104.74deg, #F7AC00 0.81%, #E4115E 71.07%);
  box-shadow: 0px 1px 7px rgba(190, 30, 30, 0.6);
}
.inquiry_btn img {
	width: 100%;
	text-align: center;
}

.inquiry_btn02 {
	display: inline-block;
	width: 42%;
	background-color: #F39801;
	-webkit-border-radius: 10px;
	font-weight: bold;
	border: 2px solid #FFF;
	text-decoration: none;
	padding: 6px 8px 6px;
	background: linear-gradient(91.48deg, #16D5B3 0%, #0075BF 99.13%);
	box-shadow: 0px 1px 7px rgba(33, 99, 160, 0.6);
}
.inquiry_btn02 img {
	width: 100%;
	text-align: center;
}

.inquiry_btn03 {
	display: inline-block;
	width: 14%;
	padding: 8px 8px;
}

.reception_time {
	font-size: 15px;
	color: #FFF;
	text-align: center;
	font-weight: 600;
	letter-spacing: .04rem;
	line-height: 1.4;
}
.reception_time02 {
	font-size: 15px;
	color: #FFF;
	text-align: center;
	font-weight: 600;
	letter-spacing: .04rem;
	line-height: 1.4;
}
.reception_time02B {
	font-size: 12px;
	color: #FFF;
	text-align: center;
	font-weight: 600;
	letter-spacing: .04rem;
}
.reception_time03 {
	text-align: center;
	font-size: 15px;
}
.inquiry_btn:link, .inquiry_btn:visited { color: #FFF !important; }
#siteBottom { margin-bottom: 85px; }

/*----- 年末年始告知 -----*/
.announcement_B {
	padding: 15px 10px 10px 10px;
}
.announcement-sub_B {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 10px;
}
.announcement-txt_B {
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5em;
}
.schedule {
	font-size: 14px;
	color: #FF0000;
	text-align: center;
}

/*----- オファーボタンのフェードイン -----*/
/* 画面外にいる状態 */
.fadein {
	opacity: 0.1;
	transform: translate(0, 50px);
	transition: all 500ms;
}
/* 画面内に入った状態 */
.fadein.scrollin {
	opacity: 1;
	transform: translate(0, 0);
}

/*-----▼ Google reCAPTCHA ▼-----*/
.position-recaptcha {
	padding: 10px 10px 5px;
}
.position-recaptcha p {
	font-size: 12px;
	letter-spacing: .055rem;
}
.position-recaptcha p a {
	text-decoration: underline;
}

/*----- ■thanksページ -----*/
#thanks img { width: 100%; }
#thanks h2 {
	font-size: 16px;
	font-weight: bold;
}
#thanks .inner { padding-bottom: 10px; }
#thanks .inner p {
	font-size: 14px;
	margin-top: 10px;
	padding: 10px 0 10px 0;
	margin: 0px;
}
#thanks .thanks_annotation {
	color: #FF0000;
	font-weight: bold;
	line-height: 1.2rem;
	border: 2px solid #FF0000;
	padding: 10px;
}

/*----- ■スライダー -----*/
.swiper {
  min-height: 315px;
  overflow: hidden;
}
.mySwiper {
	height: 607px;
  min-height: 315px;
	overflow: hidden;
}
.swiper-slide {
  width: 100%;
  height: 100%; /*auto*/
	display: flex; /* 中身を縦横中央に */
	align-items: center;
	justify-content: center;
}


/*===================================*/


@media screen and (max-width: 321px) {
	.update { right: 10%; }
}

.toggle_title + * {
  display: none;
}