@charset "UTF-8";

/*
Theme Name: clean138.co.jp_mj2024.3.0
Description: clean138.co.jp_mj2024.3.0
Theme URI: https://clean138.co.jp
Author: clean138.co.jp
Author URI: https://clean138.co.jp
Version: 3.0
*/

@font-face {
	font-family: 'NotoSansJP';
	src: url(fonts/Noto_Sans_JP/NotoSansJP-VariableFont_wght.ttf) format('truetype');
	font-display: swap;
}

html, body {
	margin: 0;
	padding: 0;
}
body {
	color: #222;
	font-size: 18px;
	line-height: 1.8;
	font-family: YuGothic, 'Yu Gothic', 游ゴシック体, '游ゴシック', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'MS ゴシック', 'MS Gothic', sans-serif;
	font-weight: 400;
}
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
p {
	margin:0 0 .6em 0;
	padding: 0;
}
p:last-child {
	margin: 0;
}
img {
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
	vertical-align: middle;
}

@media screen and (max-width: 768px) {
	body {
		font-size: 17px;
	}
}
@media screen and (max-width: 559px) {
	body {
		font-size: 16px;
	}
}
@media screen and (max-width: 320px) {
	body {
		font-size: 15px;
	}
}

/****************************************
 * リンク
 * **************************************/

a {
	display: block;
	color: #20BFB2;
	text-decoration: none;
	transition: all .3s;
	-webkit-transition: all .3s;
	word-break: break-all;
}
a:hover {
	opacity: .7;
	color: #1BA397;
}
a img {
	transition: all .3s;
	-webkit-transition: all .3s;
}
a img:hover {
	opacity: .7;
}


/* お問い合わせボタン ********************/

a.contact_arrow {
	display: inline-block;
	background: #178980;
	color: #FFF;
	font-weight: bold;
	line-height: 1.4;
	padding: 24px 60px 24px 38px;
	border-radius: 4px;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.2), 0 0 40px rgba(128, 128, 128, 20%);
	position: relative;
}
a.contact_arrow:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 24px;
	width: 10px;
	height: 10px;
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
	transform: translateY(-50%) rotate(45deg);
}
a.contact_arrow:hover {
	background: #10635C;
	color: #FFF;
	opacity: 1;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.2), 0 0 40px rgba(128, 128, 128, 20%);
}

@media screen and (max-width: 768px) {
	a.contact_arrow {
		padding: 18px 22px 18px 18px;
		font-size: 1.8vw;
	}
	a.contact_arrow:after {
		right: 12px;
		width: 8px;
		height: 8px;
	}
}
@media screen and (max-width: 559px) {
	a.contact_arrow {
		width: 100%;
		font-size: 1rem;
	}
	a.contact_arrow:after {
		right: 18px;
	}
}
@media screen and (max-width: 430px) {
	a.contact_arrow {
		padding: 20px 42px 20px 20px;
	}
}
@media screen and (max-width: 320px) {
	a.contact_arrow {
		padding: 18px 30px 18px 18px;
		font-size: .9em;
	}
}

/* LINEボタン ********************/

a.line_arrow {
	display: inline-block;
	background: #00B900;
	color: #FFF;
	font-weight: bold;
	line-height: 1.4;
	padding: 24px 60px 24px 38px;
	border-radius: 4px;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.2), 0 0 40px rgba(128, 128, 128, 20%);
	position: relative;
}
a.line_arrow:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 24px;
	width: 10px;
	height: 10px;
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
	transform: translateY(-50%) rotate(45deg);
}
a.line_arrow:hover {
	background: #009E00;
	color: #FFF;
	opacity: 1;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.2), 0 0 40px rgba(128, 128, 128, 20%);
}

@media screen and (max-width: 768px) {
	a.line_arrow {
		padding: 18px 22px 18px 18px;
		font-size: 1.8vw;
	}
	a.line_arrow:after {
		right: 12px;
		width: 8px;
		height: 8px;
	}
}
@media screen and (max-width: 560px) {
	a.line_arrow {
		width: 100%;
		font-size: 1rem;
	}
	a.line_arrow:after {
		right: 18px;
	}
}
@media screen and (max-width: 430px) {
	a.line_arrow {
		padding: 20px 42px 20px 20px;
	}
}
@media screen and (max-width: 320px) {
	a.line_arrow {
		padding: 18px 30px 18px 18px;
		font-size: .9em;
	}
}


/* ボタン　右に矢印 ********************/

a.arrow {
	display: inline-block;
	position: relative;
	background: #8cc11f;
	font-weight: bold;
	line-height: 1.4;
	padding: 24px 60px 24px 38px;
	border-radius: 4px;
	color: #FFF;
}
a.arrow:after {
	content: '';
	display: block;
	position: absolute;
	top: 48%;
	right: 24px;
	width: 10px;
	height: 10px;
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
	transform: rotate(45deg);
	margin: -3px 0 0;
}
a.arrow:hover {
	background: #7AA51C;
	color: #FFF;
	opacity: 1;
}

a.arrow.bluewhite { /*青背景白文字*/
	background: #20BFB2;
	color: #FFF;
}
a.arrow.bluewhite:after {
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
}
a.arrow.bluewhite:hover {
	background: #178980;
	color: #FFF;
}

a.arrow.whitered { /*白背景赤文字*/
	background: #FFF;
	color: red;
}
a.arrow.whitered:after {
	border-top: solid 2px red;
	border-right: solid 2px red;
}
a.arrow.whitered:hover {
	background: #CC0000;
	color: #FFF;
}
a.arrow.whiteblue { /*白背景青文字*/
	background: #FFF;
	color: #20BFB2;
}
a.arrow.whiteblue:after {
	border-top: solid 2px #20BFB2;
	border-right: solid 2px #20BFB2;
}
a.arrow.whiteblue:hover {
	background: #178980;
	color: #FFF;
}

@media screen and (max-width: 1024px) {
	a.arrow {
		padding: 24px 42px 24px 24px;
	}
}
@media screen and (max-width: 559px) {
	a.arrow {
		width: 100%;
	}
}
@media screen and (max-width: 430px) {
	a.arrow {
		padding: 20px 42px 20px 20px;
	}
}
@media screen and (max-width: 320px) {
	a.arrow {
		padding: 18px 30px 18px 18px;
		font-size: .9em;
	}
}


/* 白ボタン　右に矢印 ********************/

a.arrow_white {
	display: inline-block;
	position: relative;
	background: #FFF;
	font-weight: bold;
	line-height: 1.4;
	padding: 24px 60px 24px 38px;
	border-radius: 4px;
	color: #333;
}
a.arrow_white:after {
	content: '';
	display: block;
	position: absolute;
	top: 48%;
	right: 20px;
	width: 10px;
	height: 10px;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	transform: rotate(45deg);
	margin: -3px 0 0;
	transition: all .3s;
}
a.arrow_white:hover {
	background: #F3FAE4;
	color: #8CC11F;
	opacity: 1;
}
a.arrow_white:hover:after {
	border-top: solid 2px #8CC11F;
	border-right: solid 2px #8CC11F;
}

@media screen and (max-width: 1024px) {
	a.arrow_white {
		padding: 24px 42px 24px 24px;
	}
}
@media screen and (max-width: 559px) {
	a.arrow_white {
		width: 100%;
	}
}
@media screen and (max-width: 430px) {
	a.arrow_white {
		padding: 20px 42px 20px 20px;
	}
}
@media screen and (max-width: 320px) {
	a.arrow_white {
		padding: 18px 30px 18px 18px;
		font-size: .9em;
	}
}

/* テキストリンク　左に矢印img ********************/

a.img_btn {
	display: inline-block;
	padding-left: 30px;
	font-weight: bold;
	position: relative;
}
a.img_btn:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background: url(images/common/icon_arrowRnaby.png) no-repeat;
	background-size: 100%;
	width: 21px;
	height: 21px;
}

@media screen and (max-width: 430px) {
	a.img_btn {
		padding-left: 22px;
	}
	a.img_btn:before {
		width: 16px;
		height: 16px;
	}
}
@media screen and (max-width: 320px) {
	a.img_btn {
		font-size: .9em;
	}
}


/* 丸いボタン ********************/

a.arrow_maru {
	display: inline-block;
	padding: 12px 48px 12px 30px;
	border-radius: 60px;
	background: #FFF;
	color: #8cc11f;
	font-weight: bold;
	border: 2px solid #8cc11f;
	position: relative;
}
a.arrow_maru:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 24px;
	width: 10px;
	height: 10px;
	border-top: solid 2px #8cc11f;
	border-right: solid 2px #8cc11f;
	transform: translateY(-50%) rotate(45deg);
}
a.arrow_maru:hover {
	background: #8cc11f;
	color: #FFF;
}
a.arrow_maru:hover:after {
	border-top: solid 2px #FFF;
	border-right: solid 2px #FFF;
}

@media screen and (max-width: 320px) {
	a.arrow_maru {
		font-size: .9em;
	}
}

/* 右に矢印 margin */
a.arrow_mg {
	display: inline-block;
	position: relative;
	background: #8cc11f;
	font-weight: 200;
	line-height: 1.3em;
	padding: 12px 60px 12px 20px;
	color: #FFF;
	margin: 0 8px;
}
a.arrow_mg:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	width: 10px;
	height: 10px;
	border-top: solid 1px #FFF;
	border-right: solid 1px #FFF;
	transform: rotate(45deg);
	margin: -3px 0 0;
}
a.arrow_mg:hover {
	background: #B9E561;
	color: #FFF;
	opacity: 1;
}

/* p内 */
a.arrow_mini {
	display: inline-block;
	position: relative;
	line-height: 1.3;
	padding-left: 17px;
}
a.arrow_mini:after {
	content: '';
	display: block;
	position: absolute;
	top: .33em;
	left: 0;
	width: 10px;
	height: 10px;
	border-top: solid 3px #B9E561;
	border-right: solid 3px #B9E561;
	transform: rotate(45deg);
}


/* 下にに矢印 */
a.arrow-bottom {
	position: relative;
	background: #8cc11f;
	font-weight: 200;
	padding: 12px 60px 12px 20px;
	color: #FFF;
}
a.arrow-bottom:after {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	bottom: 13px;
	width: 10px;
	height: 10px;
	border-right: solid 1px #FFF;
	border-bottom: solid 1px #FFF;
	transform: rotate(45deg);
}


/*テキストリンク*/
a.btn_txt {
	display: inline-block;
	border-bottom: 1px solid;
}


/* 別ウィンドウリンク */
a.tab {
	display: inline-block;
	margin: 0 3px;
	padding-right: 24px;
	position: relative;
}
a.tab:after {
	content: "";
	display: inline-block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url(images/common/icon_tab.png) no-repeat;
	background-size: 100%;
	width: 18px;
	height: 18px;
}


/****************************************
 * h要素
 * **************************************/

h1, h2, h3, h4, h5, h6 {
	font-weight: 900;
	font-family: "NotoSansJP", sans-serif;
}
h1 {
	font-size: 3rem;
	line-height: 1.3;
	color: #000033;
	margin: 0;
	text-align: center;
}
h1.picture {
	line-height: 1;
}
h2 {
	font-size: 2rem;
	text-align: center;
	margin: 0 0 10px 0;
}
h3 {
	font-size: 1.7rem;
	margin: 0;
}
h4 {
	font-size: 1.6rem;
}
h5 {
	font-size: 1.3rem;
	margin: 0 0 10px;
}
h6 {
	font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
	h1 {
		font-size: 2.6rem;
		margin: 0;
	}
	h2 {
		font-size: 1.8rem;
		text-align: center;
	}
	h3 {
		font-size: 1.6rem;
	}
	h4 {
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 560px) {
	h1, h2, h3, h4, h5, h6 {
		font-weight: bold;
	}
	h1 {
		font-size: 2rem;
	}
	h2 {
		font-size: 1.6rem;
		text-align: center;
		margin: 0 0 30px;
	}
	h3 {
		font-size: 1.4rem;
	}
	h4 {
		font-size: 1.3rem;
	}
}
@media screen and (max-width: 430px) {
	h1 {
		font-size: 1.4rem;
	}
	h2 {
		font-size: 1.6rem;
		text-align: center;
		margin: 0 0 30px;
	}
	
}
@media screen and (max-width: 320px) {
	h1 {
		font-size: 1.3rem;
	}
	h2 {
		font-size: 1.2em;
		margin: 0 0 15px;
	}
	h3 {
		font-size: 1.3rem;
	}
	h4 {
		font-size: 1.2rem;
	}
	h5,
	h6 {
		font-size: 1.2rem;
	}
}

.main_title {
	text-align: center;
	font-size: 2.9rem;
	line-height: 1.4;
	margin-bottom: 60px;
}
.main_title span {
	display: block;
	font-size: 1.9rem;
	margin-bottom: 12px;
}
.main_title span.green {
	margin-top: 12px;
}
.main_title span.green span {
	display: inline-block;
	background: #8cc11f;
	color: #FFF;
	position: relative;
	padding: 6px 30px;
	border-radius: 30px;
	font-weight: 600;
	font-size: 1.6rem;
}
.main_title span.green span:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	border: 12px solid transparent;
	border-top: 12px solid #8cc11f;
}
.main_title span.en {
	display: block;
	font-size: 1rem;
	margin-top: 12px;
	color: #8cc11f;
}

/*ページタイトル*/
.page_title {}
.page_title span {
	display: block;
}
.page_title span.column_posts_title {
	font-size: 2.3rem;
}
.page_title span.column_title {
	font-size: 1.6rem;
    margin-top: 9px;
}

@media screen and (max-width: 1024px) {
	.main_title {
		font-size: 2.6rem;
	}
	.main_title span {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 834px) {
	.main_title {
		font-size: 2.3rem;
	}
	.main_title span,
	.main_title span.green span {
		font-size: 1.4rem;
	}
	.main_title span.green span {
		font-size: 1.4rem;
	}

	.page_title span.column_posts_title {
		font-size: 2rem;
	}
	.page_title span.column_title {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 559px) {
	.main_title {
		font-size: 2rem;
		font-weight: 600;
		margin-bottom: 45px;
	}
	.main_title span,
	.main_title span.green span {
		font-size: 1.3rem;
	}
	
	.page_title span.column_posts_title {
		font-size: 1.7rem;
	}
	.page_title span.column_title {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 430px) {
	.main_title {
		font-size: 1.7rem;
	}
	.main_title span,
	.main_title span.green span {
		font-size: 1.2rem;
	}
	
	.page_title span.column_posts_title {
		font-size: 1.6rem;
	}
	.page_title span.column_title {
		font-size: 1.1rem;
	}
	
}
@media screen and (max-width: 380px) {
	.main_title {
		font-size: 1.5rem;
	}
	.main_title span,
	.main_title span.green span {
		font-size: 1rem;
	}
}
@media screen and (max-width: 320px) {
	.page_title span.column_posts_title {
		font-size: 1.3rem;
	}
	.page_title span.column_title {
		font-size: 1rem;
	}
}


/****************************************
 * リスト
 * **************************************/

table {
	table-layout: fixed;
}
dl,
dt,
dd {
	margin: 0;
	padding: 0;
	list-style: none;
}
ul {
	margin: 0 0 1em 1em;
	padding: 0;
}
ul ul {
	margin: 0 0 0 1em;
}
li {
	display: list-item;
}


/****************************************
 * レスポンシブ
 * **************************************/

@media screen and (min-width: 769px) {/*769px以上で*/
	.tb {
		display: none !important;
	}
	.pc {
		display: block !important;
	}
	.sp {
		display: none !important;
	}
}
@media screen and (max-width:768px) {
	.tb {
		display: block !important;
	}
	.sp {
		display: none !important;
	}
}
@media screen and (max-width: 560px) {
	.pc {
		display: none !important;
	}
	.tb {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
}


/****************************************
 * 上部固定ヘッダー
*****************************************/

.fix_header {
	background: #FFF;
	color: #333;
	position: fixed;
	top: -100px;
	left: 0;
	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	opacity: 0;
	z-index: 1000;/*　他のアイテムに対して最上位のレイヤーになるように */
	/* opacity: 0; */
	box-shadow: 0 0 6px rgb(0 0 0 / 20%);
}
.fix_header_contents{
	display: flex;
	align-items: center;
}
.fix_header_contents .menu-fix_header-nav-container {
	
}
.fix_header ul {
	list-style-type: none;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	font-size: .9rem;
	margin: 0;
	padding: 0;
}
.fix_header ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	position: relative;
	line-height: 1;
}
.fix_header ul li:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: #ededed;
	width: 1px;
	height: 100%;
}
.fix_header ul li:last-child:after {
	content: "";
	display: inline-block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: #ededed;
	width: 1px;
	height: 100%;
}
.fix_header ul li a {
	color: #333;
	font-weight: bold;
	padding: 18px 0;
	line-height: 1.4;
}
.fix_header ul li a:hover {
	opacity: 1;
	color: #8cc11f;
}
.fix_header ul li.nav_contact {
	background: #8cc11f;
	transition: all .3s;
}
.fix_header ul li.nav_contact a {
	color: #FFF;
}
.fix_header ul li.nav_contact:hover {
	background: #7AA51C;
}

@media screen and (max-width: 1024px) {
	#fix_header_logo {
		width: 120px;
	}
}
@media screen and (max-width: 880px) {
	#fix_header_logo {
		display: none;
	}
	.fix_header ul {
		float: none;
		width: 100%;
		text-align: center;
	}
}
@media screen and (max-width: 559px) {
	.fix_header {
		display: none;
	}
}


/****************************************
 * レイアウト
 * **************************************/

.inner {
	width: 1100px;
	margin: 0 auto;
}
.inner900 {
	width: 900px;
	margin: 0 auto;
}
.inner_wide {
	width: 100%;
	max-width: 2105px;
	margin: 0 auto;
	padding: 0 60px;
}
main {
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
	position: relative;
}
article#page-wide {
	margin: 0 auto !important;
}
section {
	padding: 90px 0;
}
.contents {
	width: 100%;
	margin: 0 auto;
	padding: 90px 0;
}
.notitle_contents {
	padding: 0 0 90px;
}
.content {
	overflow: hidden;
	width: 800px;
	margin: 0 auto 30px;
	padding-bottom: 30px;
}

@media screen and (max-width: 1367px) {
	.inner_wide {
		padding: 0 45px;
	}
}

@media screen and (max-width: 1194px) {
	.inner,
	.inner900 {
		width: 100%;
		padding: 0 60px;
	}
}
@media screen and (max-width: 768px) {
	.inner,
	.inner900 {
		width: 100%;
		padding: 0 45px;
	}
	header {
		width: 100%;
	}
	article {
		float: none;
		width: 100%;
		margin: 0 auto;
	}
	section {
		padding: 60px 0;
	}
	.contents {
		padding: 60px 0;
	}
	.notitle_contents {
		padding: 0 0 75px;
	}
}
@media screen and (max-width: 559px) {
	.inner,
	.inner900 {
		width: 100%;
		padding: 0 30px;
	}
	.inner_wide {
		padding: 0 30px;
	}
	article {
		margin: 0 auto;
	}
	.contents {
		padding: 45px 0;
	}
	.notitle_contents {
		padding: 0 0 60px;
	}
}
@media screen and (max-width: 380px) {
	.inner,
	.inner900,
	.inner_wide {
		padding: 0 20px;
	}
	.contents {
		padding: 45px 0;
	}
	.notitle_contents {
		padding: 0 0 45px;
	}
	section {
		padding: 45px 0;
	}
}

/****************************************
 * 共通
 * **************************************/

.y_marker {
	background: linear-gradient(transparent 40%, rgb(234,228,140,.4) 0%);
}
.g_marker {
	background: linear-gradient(transparent 40%, rgb(204,236,140,.4) 0%);
}
.p_marker {
	background: linear-gradient(transparent 40%, rgb(234,140,165,.4) 0%);
}
.b_marker {
	background: linear-gradient(transparent 40%, rgb(140,184,234,.4) 0%);
}
.inbox:not(:first-child) {
	margin-top: 120px;
}
.button_box {
	text-align: center;
	margin-top: 60px;
}
.button_box.right {
	text-align: right;
}
.dots {
	display: inline!important;
	margin-left: -4px !important;
	margin-right: -5px !important;
	font-size: 1em !important;
}
.serif {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

@media screen and (max-width: 768px) {
	.button_box {
		margin-top: 45px;
	}
}
@media screen and (max-width: 559px) {
	.inbox:not(:first-child) {
		margin-top: 90px;
	}
	.button_box {
		margin-top: 45px;
	}
}
@media screen and (max-width: 430px) {
	.button_box {
		margin-top: 30px;
	}
}
@media screen and (max-width: 320px) {
}

/****************************************
 * スマホ時最下部の問い合わせ
*****************************************/

.contact_fixed {
	display: none;
}

@media screen and (max-width: 480px) {
	.contact_fixed {
		display: block;
		width: 100%;
		position: fixed;
		bottom:0;
		list-style: none;
		padding: 0;
		margin: 0;
		z-index: 3;
	}
	.contact_fixed a {
		background: #f1635f;
		color: #FFF;
		text-align: center;
		font-weight: bold;
		margin: 15px;
		padding: 10px 0;
		box-shadow: 0 0 6px rgb(0 0 0 / 20%);
	}
}


/****************************************
 * スマホナビゲーション
 * **************************************/

#few_nav {
	display: none;
}

@media screen and (max-width: 768px) {
	#few_nav {
		display: block;
	}
	#few_nav a {
		display: block;
		font-weight: bold;
		color: #333;
		padding: 18px 18px 18px 36px;
	}
	#few_nav a:hover {
		opacity: 1;
	}
	#few_nav a.main_btn {
		padding: 18px 18px 18px 36px;
		color: #FFF;
		background: #20BFB2;
	}
	#few_nav a.service_btn {
		background: #E4FAF8;
	}
	#few_nav_body_area {
		background: #FFF;
		box-sizing: border-box;
		height: 100%;
		position: fixed;
		right: -280px;
		top: 0;
		transition: transform 0.3s linear 0s;
		width: 280px;
		white-space: nowrap;
		overflow-x: auto;
		z-index: 999;
	}
	#few_nav_body ul {
		list-style: none;
		padding: 0;
		margin: 0;
	}
	#few_nav_body ul li {
		position: relative;
		border-bottom: 1px solid #21bfb2;
	}
	#few_nav_body ul li:before {
		content: "";
		position: absolute;
		left: 1em;
		top: 50%;
		transform: translateY(-50%);
		background: url(images/common/nav/icon_arrow.png) no-repeat;
		background-size: 100%;
		background-position: center;
		width: 16px;
		height: 16px;
	}
	#few_nav_body ul li.nav-cases a {
		position: relative;
		z-index: 1;
	}
	#few_nav_body ul li.nav-cases a:before {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		background: url(images/common/nav/nav-casesBg_sp.webp) no-repeat;
		background-position: center;
		background-size: cover;
		width: 100%;
		height: 100%;
		z-index: -1;
	}
	#few_nav_body ul li.nav-cases a span {
		display: block;
		font-size: 13px;
		color: #BF202D;
		margin-bottom: -5px;
	}
	#few_nav_body ul li.mail {
		position: relative;
	}
	#few_nav_body ul li.mail:before {
		content: "";
		position: absolute;
		left: 1em;
		top: 50%;
		transform: translateY(-50%);
		background: url(images/common/nav/icon_arrow_mail.png) no-repeat;
		background-size: 100%;
		background-position: center;
		width: 16px;
		height: 16px;
	}
	
	#few_nav_background {
		background: #000;
		display: block;
		height: 100%;
		opacity: 0;
		position: fixed;
		right: 0;
		top: 0;
		transition: all .3s linear 0s;
		width: 100%;
		z-index: -1;
	}
	#few_nav_icon {
		background: #20BFB2;
		border-radius: 0 0 0 12px;
		color: #FFF;
		cursor: pointer;
		display: block;
		height: 60px;
		line-height: 60px;
		position: fixed;
		right: 0;
		text-align: center;
		top: 0;
		width: 60px;
		transition: all 0.3s linear 0s;
		z-index: 1000;
	}
	#few_nav_icon span.few_nav_button {
		display: block;
		font-size: 13px;
		font-weight: bold;
		position: relative;
	}
	input#switching {
		display: none;
	}
	input#switching:checked ~ #few_nav_body_area,
	input#switching:checked ~ #few_nav_icon {
		color: #333;
		background: #FFF;
		transform: translate(-280px);
	}
	input#switching:checked ~ #few_nav_background {
		opacity: .7;
		z-index: 999;
	}
	
	#few_nav a.phone {
		padding: 0;
		margin-top: 15px;
	}
	p.few_nav_phone {
		margin-top: 8px;
		color: #FFF;
		text-align: center;
		font-family: 'Noto Sans JP';
		font-weight: 700;
	}
	p.few_nav_phone span {
		display: block;
		font-size: .8em;
	}
}
@media screen and (max-width: 430px) {
	
}
@media screen and (max-width: 380px) {
	.contact_box {
		border-bottom: 1px solid;
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
	#few_nav a,
	#few_nav a.main_btn {
		padding: 12px 12px 12px 36px;
	}
	#few_nav_body_area {
		right: -220px;
		width: 220px;
	}
	input#switching:checked ~ #few_nav_body_area,
	input#switching:checked ~ #few_nav_icon {
		transform: translate(-220px);
	}
	#few_nav_body ul li:before,
	#few_nav_body ul li.mail:before {
		left: 12px;
		width: 12px;
		height: 12px;
	}
}
@media screen and (max-width: 320px) {
	#few_nav a,
	#few_nav a.main_btn {
		padding: 9px 9px 9px 32px;
	}
	#few_nav_body ul li:before,
	#few_nav_body ul li.mail:before {
		left: 12px;
		width: 14px;
		height: 14px;
	}
}


/****************************************
 * parts/pay
 * **************************************/


ul.bnr_Ylist {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
}
ul.bnr_Ylist li {
	margin: 0 12px;
}

@media screen and (max-width: 560px) {
	ul.bnr_Ylist {
		display: flex;
		flex-direction: column;
	}
	ul.bnr_Ylist li {
		margin: 12px 0 0;
	}
}

/****************************************
 * parts/pay
 * **************************************/

#loan {
	padding: 0;
	margin-top: 30px;
	background: #206dbf;
	position: relative;
	height: 160px;
}
#loan img.loan {
	position: absolute;
	top: -30px;
}
#pay {
	background: #fafafa;
}
#pay .pay_title {
	text-align: left;
	margin: 0 0 12px;
	padding: 0 0 12px;
}
#pay .pay_box {
	margin-top: 30px;
}
#pay .pay_box_flex {
	display: flex;
	align-items: stretch;
}
#pay .pay_box_flex .pay_box_flex___title {
	width: 300px;
	background: #ededed;
	padding: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	/*border-radius: 12px;*/
}
#pay .pay_box_flex .pay_box_flex___title .pay_box_title {
	font-weight: bold;
	margin: 0 0 5px;
}
#pay .pay_box_flex .pay_box_flex___txt {
	width: calc(100% - 300px);
	padding-left: 45px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#pay .pay_box_flex .pay_box_flex___txt ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
#pay .pay_box_flex .pay_box_flex___txt ul li {
	list-style: disc;
	padding: 0;
	margin: 0 0 0 1em;
}
#pay .pay_box_flex .card {
	text-align: center;
	margin-top: 18px;
}
#pay .pay_box_flex .loan {
	margin-top: 38px;
	background: #FDF6F8;
	border: 1px solid #BC204C;
}
#pay .pay_box_flex .loan_title {
	margin: -25px 30px 0 30px;
	font-weight: 900;
	font-family: "NotoSansJP", sans-serif;
	font-style: italic;
	font-size: 1.6rem;
	line-height: 1.4;
	color: #BC204C;
}
#pay .pay_box_flex .loan_title span {
	display: inline-block;
	background: #fafafa;
}
#pay .pay_box_flex .loan_box {
	padding: 12px 30px 30px;
}

#pay .left .cleaning-pay {
	font-size: .8em;
	background: #ededed url(images/p-pay/cart.png) no-repeat;
	background-position: bottom 50% left 16px;
	padding: 10px 10px 10px 60px;
	line-height: 1.3;
}


@media screen and (max-width: 768px) {
	#pay .pay_box_flex .pay_box_flex___title {
		width: 200px;
	}
	#pay .pay_box_flex .pay_box_flex___txt {
    width: calc(100% - 200px);
	}
	#pay .pay_box_flex .loan_title {
		font-size: 1.3rem;
	}
	#pay .pay_box_flex .loan_box {
		padding: 12px 20px 20px;
	}
}
@media screen and (max-width: 559px) {
	#pay .pay_title {
		text-align: center;
	}
	#pay .pay_box_flex {
		flex-direction: column;
	}
	#pay .pay_box_flex .pay_box_flex___title,
	#pay .pay_box_flex .pay_box_flex___txt {
		width: 100%;
	}
	#pay .pay_box_flex .pay_box_flex___title {
		padding: 12px 30px;
		justify-content: flex-start;
	}
	#pay .pay_box_flex .pay_box_flex___txt {
		padding: 30px 0;
	}
}
@media screen and (max-width: 320px) {
	#pay .pay_box_flex .loan_title {
		font-size: 1.1rem;
	}
}


/****************************************
 * parts/breadcrumbs_backbutton
 * **************************************/

#breadcrumbs_backbutton {
	background: #E4FAF8;
	border-bottom: 18px solid #FFF;
}
#breadcrumbs_backbutton .breadcrumbs_backbutton_flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#breadcrumbs_backbutton .breadcrumbs_backbutton_flex .breadcrumbs {
	width: calc(100% - 142px);
	font-size: .8rem;
	color: #000033;
	padding: 12px 0;
}
#breadcrumbs_backbutton .breadcrumbs_backbutton_flex .breadcrumbs a {
	display: inline-block;
	color: #000033;
}
#breadcrumbs_backbutton .breadcrumbs_backbutton_flex .backbutton {
	width: 142px;
	text-align: center;
	background: #CFF6F3;
	padding: 12px 0;
}
#breadcrumbs_backbutton .breadcrumbs_backbutton_flex .backbutton a.back_btn {
	display: inline-block;
	font-size: .8rem;
	color: #000033;
}

@media screen and (max-width: 1024px) {
	#breadcrumbs_backbutton .breadcrumbs_backbutton_flex .breadcrumbs {
		overflow-x: auto;
		white-space: nowrap;
	}
}
@media screen and (max-width: 560px) {
	#breadcrumbs_backbutton {
		padding: 18px 0;
	}
	#breadcrumbs_backbutton .breadcrumbs_backbutton_flex {
		flex-direction: column;
	}
	#breadcrumbs_backbutton .breadcrumbs_backbutton_flex .breadcrumbs,
	#breadcrumbs_backbutton .breadcrumbs_backbutton_flex .backbutton {
		width: 100%;
	}
	#breadcrumbs_backbutton .breadcrumbs_backbutton_flex .backbutton {
		text-align: center;
		background: none;
	}
	#breadcrumbs_backbutton .breadcrumbs_backbutton_flex .backbutton a.back_btn {
		display: inline-block;
		background: #FFF;
		border-radius: 30px;
    padding: 12px 30px;
	}
}


/****************************************
 * parts/gnav
 * **************************************/

nav#general {
	clear: both;
	border-top: 1px solid #ededed;
	border-bottom: 1px solid #ededed;
}
nav#general ul {
	list-style: none;
	padding: 0;
	margin: 0;
	position: relative;

	display: grid;
	grid-template-columns: repeat(6, 1fr);
	align-items: stretch;
}
nav#general ul li {
	text-align: center;
	height: 100%;
	position: relative;
}
nav#general ul li:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: #ededed;
	width: 1px;
	height: 100%;
}
nav#general ul li:nth-child(-n+6) {
	border-bottom: 1px solid #ededed;
}
nav#general ul li a {
	height: 100%;
	display: flex;
    align-items: center;
    justify-content: center;
	color: #000333;
	line-height: 1.4;
	font-size: 1rem;
	font-weight: bold;
	padding: 18px 0;
}
nav#general ul li a:hover {
	opacity: 1;
	background: #8cc11f;
    color: #FFF;
}
nav#general ul li.nav-cases a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 1;
}
nav#general ul li.nav-cases a:before {
	content: "";
	position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
	background: url(images/common/nav/nav-casesBg.webp) no-repeat;
	background-position: center;
	background-size: cover;
	width: 100%;
	height: 100%;
	z-index: -1;
}
nav#general ul li.nav-cases a span {
	display: block;
	font-size: 11px;
	color: #BF202D;
}
nav#general ul li.nav-cases a:hover:before {
	content: none;
}
nav#general ul.sub-menu {
	list-style: none;
	width: 100%;
	font-size: .9rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: absolute;
	top: 100%;
	left: 0;
	padding: 0;
	margin: 0;
	z-index: 1;
	transition: all .5s ease;
	visibility: hidden;
	opacity: 0;
}
nav#general ul li:hover ul.sub-menu {
	list-style: none;
	background: #FFF;
	visibility: visible;
	opacity: 1;
}
nav#general ul ul.sub-menu li {
	width: 100%;
	text-align: center;
	border-bottom: 1px solid #ededed;
}
nav#general ul ul.sub-menu li:last-child {
	border-bottom: none;
}
nav#general ul ul.sub-menu li a {
	padding: 18px 12px;
	border-bottom: none;
}

@media screen and (max-width: 1024px) {
	nav#general ul {
		grid-template-columns: repeat(4, 1fr);
	}
	nav#general ul li {
		
	}
	nav#general ul li:nth-child(-n+8) {
		border-bottom: 1px solid #ededed;
		border-right: 1px solid #ededed;
	}
}
@media screen and (max-width: 768px) {
	nav#general {
		display: none;
	}
	nav#general ul.menu > li > a {
		padding: 18px 0;
	}
	nav#general ul.menu li.menu-item-has-children:hover ul.sub-menu {
		top: 40px;
	}
}


/****************************************
 * parts/contact
 * **************************************/

#ContactFixed {
	background: #E4FAF8;
	border-top: 18px solid #FFF;
	border-bottom: 18px solid #FFF;
	position: relative;
}
#ContactFixed .ContactFixed_box {
	position: relative;
}
#ContactFixed .ContactFixed_box img.operator {
	position: absolute;
	right: 26px;
	bottom: -30px;
}
#ContactFixed .ContactFixed_box .ContactFixed_service {
	padding: 0 0 12px 12px;
	max-width: 880px;
}
#ContactFixed .ContactFixed_box .ContactFixed_service .ContactFixed_service_title {
	margin-bottom: 9px;
	padding-left: 12px;
	font-family: "NotoSansJP", sans-serif;
	font-weight: 900;
	font-size: 1.6rem;
	color: #000033;
}
#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list li {
	font-family: "NotoSansJP", sans-serif;
	font-size: 2rem;
	font-weight: bold;
	color: #000033;
	margin-right: 28px;
	padding-left: 36px;
	line-height: 1.6;
	position: relative;
}
#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url(images/common/icon_check.png) no-repeat;
	background-size: 100%;
	background-position: center;
	width: 28px;
	height: 28px;
}
#ContactFixed .ContactFixed_btnbox {
	width: 100%;
	margin: 30px auto 0;
	background: #FAFEFD;
	box-shadow: 0px 3px 6px rgba(0,0,0,20%);
	border-radius: 12px;
	padding: 45px;
	border: 3px solid #20BFB2;
	position: relative;
}
#ContactFixed .ContactFixed_btnbox img.mascot_b {
	position: absolute;
	left: -10px;
	top: -30px;
	width: 15%;
}
#ContactFixed .ContactFixed_btnbox img.mascot_g {
	display: none;
}
#ContactFixed .ContactFixed_btnbox p.btn_title {
	margin: 0 0 12px;
	text-align: center;
	line-height: 1.3;
	font-size: 1.3rem;
	font-weight: bold;
	color: #000033;
}
#ContactFixed .ContactFixed_btnbox p.btn_title span {
	display: inline-block;
	padding: 0 12px;
	position: relative;
}
#ContactFixed .ContactFixed_btnbox p.btn_title span:before {
	content: "";
	position: absolute;
	display: block;
	top: 50%;
	left: 0;
	width: 3px;
	height: 19px;
	border-radius: 3px;
	background: #000033;
	transform: translateY(-50%) rotate(-30deg);
}
#ContactFixed .ContactFixed_btnbox p.btn_title span:after {
	content: "";
	position: absolute;
	display: block;
	top: 50%;
	right: 0;
	width: 3px;
	height: 19px;
	border-radius: 3px;
	background: #000033;
	transform: translateY(-50%) rotate(30deg);
}
#ContactFixed .ContactFixed_btnbox ul {
	padding: 0;
	margin: 24px 0 0;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}
#ContactFixed .ContactFixed_btnbox ul li {
	display: inline-block;
	vertical-align: middle;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro', 'YuGothic', 'Yu Gothic', '游ゴシック', 'Meiryo', 'メイリオ', Helvetica, sans-serif;
	color: #000033;
	margin-right: 18px;
}
#ContactFixed .ContactFixed_btnbox ul li:first-child {
	margin-right: 30px;
}
#ContactFixed .ContactFixed_btnbox ul li:last-child {
	margin-right: 0;
}
#ContactFixed .ContactFixed_btnbox span.top {
	display: inline-block;
	font-size: .9rem;
	font-weight: bold;
	margin-bottom: 6px;
}


@media screen and (max-width: 1024px) {
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list {
		width: 730px;
	}
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list li {
		font-size: 1.8rem;
	}
	#ContactFixed .ContactFixed_box img.contact_title {
		width: 700px;
	}
	#ContactFixed .ContactFixed_btnbox ul li:first-child {
		max-width: 300px;
	}
}
@media screen and (max-width: 834px) {
	#ContactFixed {
		padding: 60px 0;
	}
	#ContactFixed .ContactFixed_box .ContactFixed_service .ContactFixed_service_title {
		font-size: 1.4rem;
	}
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list {
		width: 520px;
	}
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list li {
		font-size: 1.6rem;
	}
	#ContactFixed .ContactFixed_box img.operator {
		width: 30%;
		right: 0;
	}
	#ContactFixed .ContactFixed_box img.contact_title {
		width: 570px;
	}
	#ContactFixed .ContactFixed_btnbox {
		padding: 45px;
	}
	#ContactFixed .ContactFixed_btnbox img.mascot_b {
		position: absolute;
		left: 3%;
		top: 50%;
		transform: translateY(-50%);
		width: 18%;
	}
	#ContactFixed .ContactFixed_btnbox img.mascot_g {
		display: block;
		position: absolute;
		right: 3%;
		top: 50%;
		transform: translateY(-50%);
		width: 18%;
	}
	
	#ContactFixed .ContactFixed_btnbox p.btn_title {
		font-size: 1.2rem;
	}
	#ContactFixed .ContactFixed_btnbox ul {
		flex-wrap: wrap;
		margin: 0;
	}
	#ContactFixed .ContactFixed_btnbox ul li:first-child {
		width: 100%;
		max-width: 100%;
		margin-bottom: 18px;
		margin-right: 0;
	}
}
@media screen and (max-width: 559px) {

	#ContactFixed .ContactFixed_box .ContactFixed_service .ContactFixed_service_title {
		font-size: 1.2rem;
		font-weight: 600;
	}
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list {
		width: 370px;
	}
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list li {
		font-size: 1.2rem;
		font-weight: 600;
		margin-right: 18px;
		padding-left: 26px;
	}
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list li:before {
		width: 18px;
		height: 18px;
	}
	#ContactFixed .ContactFixed_box img.operator {
		width: 160px;
	}
	#ContactFixed .ContactFixed_box img.contact_title {
		width: 380px;
	}
	#ContactFixed .ContactFixed_btnbox {
		padding: 30px;
	}
	#ContactFixed .ContactFixed_btnbox img.mascot_b {
		left: 0;
		top: 39%;
		width: 20%;
	}
	#ContactFixed .ContactFixed_btnbox img.mascot_g {
		right: 0;
		top: 39%;
		width: 20%;
	}
	#ContactFixed .ContactFixed_btnbox p.btn_title span:before,
	#ContactFixed .ContactFixed_btnbox p.btn_title span:after {
		height: 48px;
	}
	#ContactFixed .ContactFixed_btnbox ul {
		flex-direction: column;
	}
	#ContactFixed .ContactFixed_btnbox ul li {
		margin-right: 0;
		width: 100%;
	}
	#ContactFixed .ContactFixed_btnbox ul li:first-child {
		margin-right: 0;
		margin-bottom: 0;
	}
	#ContactFixed .ContactFixed_btnbox ul li:not(:first-child) {
		margin-top: 18px;
	}
	#ContactFixed .ContactFixed_btnbox ul li:first-child img {
		width: 280px;
	}
	
}
@media screen and (max-width: 430px) {
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list {
		width: 360px;
	}
	#ContactFixed .ContactFixed_box img.contact_title {
		width: 280px;
	}
	#ContactFixed .ContactFixed_box img.operator {
		width: 120px;
	}
	#ContactFixed .ContactFixed_btnbox {
		margin-top: 12px;
		padding: 20px;
	}
	#ContactFixed .ContactFixed_btnbox img.mascot_b {
		left: -5%;
		top: 39%;
		width: 20%;
	}
	#ContactFixed .ContactFixed_btnbox img.mascot_g {
		right: -5%;
		top: 39%;
		width: 20%;
	}
	#ContactFixed .ContactFixed_btnbox p.btn_title {
		font-size: 1.1rem;
	}
	#ContactFixed .ContactFixed_btnbox p.btn_title span:before,
	#ContactFixed .ContactFixed_btnbox p.btn_title span:after {
		height: 38px;
	}
	#ContactFixed .ContactFixed_btnbox ul li:first-child img {
		width: 230px;
	}
}
@media screen and (max-width: 380px) {
	#ContactFixed .ContactFixed_box img.contact_title {
		width: 240px;
	}
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list {
		width: 290px;
	}
	#ContactFixed .ContactFixed_box .ContactFixed_service ul.ContactFixed_service_list li {
		margin-top: 3px;
		font-size: 1.1rem;
	}
	#ContactFixed .ContactFixed_btnbox p.btn_title {
		font-size: 1rem;
	}
	#ContactFixed .ContactFixed_btnbox p.btn_title span:before,
	#ContactFixed .ContactFixed_btnbox p.btn_title span:after {
		height: 32px;
	}
	#ContactFixed .ContactFixed_btnbox ul li:first-child img {
		width: 200px;
	}
	
}
@media screen and (max-width: 320px) {
	#ContactFixed .ContactFixed_box .ContactFixed_service .ContactFixed_service_title {
		font-size: 1rem;
	}
	#ContactFixed .ContactFixed_box img.operator {
		width: 100px;
	}
	#ContactFixed .ContactFixed_btnbox {
		padding: 12px;
	}
	#ContactFixed .ContactFixed_btnbox p.btn_title {
		font-size: .9rem;
	}
	#ContactFixed .ContactFixed_btnbox p.btn_title span:before,
	#ContactFixed .ContactFixed_btnbox p.btn_title span:after {
		height: 28px;
	}
}

/****************************************
 * parts/area
 * **************************************/

#p-area {
	position: relative;
	background: url(images/parts/area/bg.webp);
	background-size: cover;
	background-position: center;
}
#p-area .p-area_flex {
	display: flex;
	align-items: center;
}
#p-area .p-area_flex .p-area_flex___title {
	max-width: 360px;
	width: 33%;
}
#p-area .p-area_flex .p-area_flex___title .main_title {
	font-size: 2rem;
}
#p-area .p-area_flex .p-area_flex___title .area_title_bottom {
	font-weight: bold;
	margin: 60px 0 0;
}
#p-area .p-area_flex .p-area_flex___txt {
	width: 68%;
	padding-left: 45px;
	max-width: 740px;
}
#p-area .p-area_flex .p-area_flex___txt .area_detail {
	padding: 38px;
	background: #FFF;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
	border-radius: 4px;
	position: relative;
}
#p-area .p-area_flex .p-area_flex___txt .area_detail img.mascot_two {
	position: absolute;
	right: -30px;
	bottom: -30px;
}
#p-area .p-area_flex .p-area_flex___txt .area_scroll {
	background: #FFF;
	padding: 0;
}
#p-area .p-area_flex .p-area_flex___txt .area_scroll::-webkit-scrollbar {
	width: 4px;
}
#p-area .p-area_flex .p-area_flex___txt .area_scroll::-webkit-scrollbar-track {
	background: #ededed;
	border-radius: 30px;
}
#p-area .p-area_flex .p-area_flex___txt .area_scroll::-webkit-scrollbar-thumb {
	background: #8cc11f;
	border-radius: 30px;
}
#p-area .p-area_flex .p-area_flex___txt .area_detail ul.main_city {
	list-style: none;
	margin: 0;
	padding: 0;
	line-height: 1;
}
#p-area .p-area_flex .p-area_flex___txt .area_detail ul.main_city:not(:first-child) {
	margin-top: 12px;
}
#p-area .p-area_flex .p-area_flex___txt .area_detail ul.main_city.area-mie {
	margin-right: 8vw;
}
#p-area .p-area_flex .p-area_flex___txt .area_detail ul.main_city li {
	display: inline-block;
	font-size: .9rem;
	line-height: 1.6;
	margin: 0
}
#p-area .p-area_flex .p-area_flex___txt .area_detail ul.main_city li:not(:last-child)::after {
	content: "・";
}
#p-area .p-area_flex .p-area_flex___txt .area_detail ul.main_city li.parent {
	font-weight: bold;
	margin: 0 0 3px;
}
#p-area .p-area_flex .p-area_flex___txt .area_detail ul.main_city li.parent:after {
	content: none;
}

@media screen and (max-width: 1194px) {
	#p-area .p-area_flex .p-area_flex___txt .area_scroll {
		height: auto;
		padding: 0 18px 0 0;
	}
	#p-area .p-area_flex .p-area_flex___txt .area_detail {
		padding: 45px;
	}
	#p-area .p-area_flex .p-area_flex___txt .area_detail ul.main_area {
		flex-wrap: wrap;
	}
	#p-area .p-area_flex .p-area_flex___txt .area_detail ul.main_area li {
		text-align: center;
		font-weight: bold;
		width: calc(100% / 4);
	}
}
@media screen and (max-width: 960px) {
	#p-area .p-area_flex .p-area_flex___txt .area_scroll {
		overflow-y: scroll;
		height: 420px;
	}
	#p-area .p-area_flex .p-area_flex___txt .area_detail img.mascot_two {
		width: 140px;
	}
}
@media screen and (max-width: 834px) {
	#p-area .p-area_flex .p-area_flex___title .area_title_bottom {
		margin: 30px 0 0;
	}
	#p-area .p-area_flex .p-area_flex___txt {
		padding-left: 30px;
	}
	#p-area .p-area_flex .p-area_flex___txt .area_detail {
		padding: 30px 30px 75px;
	}
}
@media screen and (max-width: 768px) {
	#p-area .p-area_flex {
		flex-direction: column;
	}
	#p-area .p-area_flex .p-area_flex___title {
		width: 80%;
        max-width: 80%;
	}
	#p-area .p-area_flex .p-area_flex___title .area_title_bottom {
		text-align: center;
	}
	#p-area .p-area_flex .p-area_flex___txt {
		width: 100%;
		margin-top: 30px;
		padding-left: 0;
	}
	#p-area .p-area_flex .p-area_flex___txt .area_scroll {
		height: 360px;
	}
}
@media screen and (max-width: 559px) {
	#p-area {
		background: url(images/parts/area/bg_sp.webp);
		background-size: cover;
		background-position: center;
	}
	#p-area .p-area_flex .p-area_flex___title {
		width: 100%;
        max-width: 100%;
	}
	#p-area .p-area_flex .p-area_flex___txt .area_scroll {
		height: 100%;
		padding: 0;
	}
}
@media screen and (max-width: 430px) {
	#p-area .p-area_flex .p-area_flex___title .main_title {
		font-size: 1.6rem;
	}
	#p-area .p-area_flex .p-area_flex___txt .area_detail {
		padding: 20px 20px 60px 20px;
	}
}
@media screen and (max-width: 320px) {
	#p-area .p-area_flex .p-area_flex___txt .area_detail {
		
	}
}


/****************************************
 * parts/export
 * **************************************/

.export {
	background: #20BFB2;
	background: url(images/parts/export/bg.webp) no-repeat;
	background-size: cover;
	background-attachment: fixed;
}
.export .export_outline {
	background: #FFF;
	margin-top: 240px;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
	position: relative;
}
.export .export_outline img.grahu {
	position: absolute;
	left: 50%;
	bottom: calc(100% - 120px);
	transform: translateX(-50%);
}

.export .export_box {
	padding: 0 60px 60px;
	margin-top: 60px
}
.export .export_intro {
	padding-top: 150px;
}

.export .export_intro .export_explanation {
	margin: 60px 0 0;
}
.export .export_intro .export_explanation ul {
	list-style: none;
	margin: -18px 0 0;
	padding: 0;
}
.export .export_intro .export_explanation ul li {
	font-size: 1rem;
	margin-top: 18px;
}
.export .export_intro .export_explanation ul li p.export_explanation_title {
	text-align: left;
	margin: 0;
}
.export .export_intro .export_explanation ul li p.export_explanation_title span {
	display: inline-block;
	background: #999;
	color: #FFF;
	border-radius: 30px;
	padding: 3px 12px;
}
.export .export_intro .export_explanation ul li div {
	margin: 12px 0 0;
}


/*スライドのドット*/
.foreigntrade ul.slide_dots {
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}
.foreigntrade ul.slide_dots li {
	display: inline-block;
	margin: 0 12px;
	padding: 0;
}
.foreigntrade ul.slide_dots button {
	font-size: 0;
	line-height: 12px;
	background: #ededed;
	border: none;
	padding: 0;
	min-width: 12px;
	width: 12px;
	height: 12px;
	border-radius: 30px;
	box-shadow: none;
	cursor: pointer;
}
.foreigntrade ul.slide_dots button:before,
.foreigntrade ul.slide_dots button:after {
	content: none;
}
.foreigntrade ul.slide_dots li.slick-active button {
	background: #20BFB2;
}
/*スライドのドット*/


.export .export_line_title span {
	background: #20BFB2;
	color: #FFF;
	display: inline-block;
	padding: 12px 30px;
	border-radius: 40px;
}
.export .export_line_title {
	display: flex;
	align-items: center;
	line-height: 1;
}
.export .export_line_title:before,
.export .export_line_title:after {
	content: "";
	height: 1px;
	flex-grow: 1;
	background-color: #20BFB2;
}
.export .export_line_title:before {
	margin-right: 1rem;
}
.export .export_line_title:after {
	margin-left: 1rem;
}

/* 対象品の一例*/
.export .export_example {
	margin-top: 60px;
}
.export .export_inbox {
	margin-top: 30px;
}
.export .export_example_text {
	padding: 12px 60px 0;
}
.export .export_example_items {
	font-size: .9rem;
	font-weight: bold;
	background: #20BFB2;
	color: #FFF;
	padding: 30px 60px;
	margin-top: 30px;
}
.export .export_example_items p {
	margin: 0;
}

/* 品物のループ ********************/
.export_example_img {}
_:-ms-lang(x)::-ms-backdrop, /* IE11対策 */
.export_example_img {
	display: -ms-grid;
	overflow: hidden;
}
.export_example_img .export_example_img_box {
  display: flex;
  overflow: hidden;
}
.export_example_img ul.item_list {
  display: flex;
  list-style: none;
	margin: 0;
	padding: 0;
}
.export_example_img ul.item_list.flowleft{
	animation: infinity-scroll-left 90s infinite linear 0s both;
}
.export_example_img ul.item_list li {
  width: calc(100vw / 7);
}
.export_example_img ul.item_list li > img{
   width: 100%;
}
@keyframes infinity-scroll-left {
  from {
	  transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}
/* 品物のループ ここまで********************/


.reuse .handled .handled_title {
	text-align: center;
}
.reuse .handled_title span {
	display: block;
	background: #216dbf;
	color: #FFF;
	padding: 12px 60px;
	border-radius: 60px;
}
.reuse .handled .handled_box_text {
	width: 860px;
	margin: 60px auto 0;
}
.reuse .handled .handled_items {
	overflow: hidden;
	margin-top: 30px;
	border-radius: 12px;
	border: 6px solid #206dbf;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
}
.reuse .handled .handled_items .handled_items_lineup {
	padding: 45px;
	background: #FFF;
}
.reuse .handled .handled_items .handled_items_lineup p.handled_items_lineup_title {
	text-align: center;
	font-size: 1.1em;
	font-weight: bold;
	color: #206dbf;
	margin-bottom: 12px;
}
.reuse .handled .handled_items .handled_items_lineup p {
	font-size: .8em;
    line-height: 1.6;
    margin: 0 0 3px;
}
.reuse .cost_reduction {
	padding: 150px 0 120px;
	margin-top: -150px;
	background: url(images/index/cost_reduction_bg.png) repeat;
	background-size: 400px;
	position: relative;
    z-index: -1;
}
.reuse .cost_reduction:after {
	content: "";
	position: absolute;
	bottom: 0;
	background: url(images/index/reuse_bottom_bg.png) no-repeat;
	background-size: contain;
	background-position: bottom center;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.reuse .cost_reduction .cost_reduction_title {
	text-align: center;
}
.reuse .cost_reduction .cost_reduction_box {
	text-align: center;
	margin-top: 60px;
}

@media screen and (max-width: 834px) {
	.export .export_outline {
		margin-top: 110px;
	}
	.export .export_box {
		padding: 0 45px 45px;
	}
	.export .export_intro {
		padding-top: 150px;
	}
	.export .export_example_text {
		padding: 12px 45px 0;
	}
	.export .export_example_items {
		padding: 30px 45px;
	}
	.export_example_img ul.item_list li {
		width: calc(100vw / 3);
	}
}
@media screen and (max-width: 560px) {
	.export .export_box {
		padding: 0 30px 30px;
	}
	.export .export_intro {
		padding-top: 150px;
	}
	.export_intro img.sdgs {
		display: block;
		width: 220px;
		margin: 0 auto;
	}
	
	.export .export_intro .export_explanation ul li {
		font-size: .9rem;
	}
	
	.export .export_example {
		margin-top: 45px;
	}
	
	.export .export_line_title {
		text-align: center;
		font-size: 1.3rem;
	}
	.export .export_example_text {
		padding: 12px 30px 0;
	}
	.export .export_example_items {
		padding: 30px 30px;
	}
}
@media screen and (max-width: 430px) {
	.export .export_outline {
		margin-top: 60px;
	}
	.export .export_box {
		padding: 0 20px 20px;
	}
	.export .export_intro {
		padding-top: 150px;
	}
	.export_intro img.sdgs {
		width: 180px;
	}
	.export .export_intro .export_explanation ul li {
		font-size: .8rem;
	}
	
	.export .export_line_title {
		font-size: 1.1rem;
	}
	.export .export_inbox {
		margin-top: 0;
	}
	.export .export_example_text {
		padding: 12px 20px 0;
	}
	.export .export_example_items {
		padding: 20px 20px;
	}
}
@media screen and (max-width: 380px) {
	.export .export_outline {
		margin-top: 75px;
	}
	.export .export_outline img.grahu {
		bottom: calc(100% - 90px);
	}
	.export .export_intro {
		padding-top: 120px;
	}
	.export .export_line_title {
		font-size: 1rem;
	}
	.export .export_line_title span {
		padding: 12px 18px;
	}
	.export .export_example_items {
		font-size: .8rem;
	}
	
}
@media screen and (max-width: 320px) {
	.export .export_outline {
		margin-top: 60px;
	}
	.export .export_outline img.grahu {
		bottom: calc(100% - 60px);
	}
	.export .export_intro {
		padding-top: 75px;
	}
	.export_intro img.sdgs {
		width: 150px;
	}
}


/****************************************
 * parts/disposal
 * **************************************/

#disposal {
	background: url(images/parts/disposal/bg.webp) no-repeat;
	background-size: cover;
}
#disposal .disposal_box {
	
}
#disposal .disposal_flex {
	display: flex;
	align-items: center;
	margin-top: 30px;
}
#disposal .disposal_flex .disposal_flex___txt {
	background: #FFF;
	width: calc(100% - 280px);
	padding: 60px 105px 60px 60px;
	margin-right: 30px;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
}
#disposal .disposal_flex .disposal_flex___txt .disposal_flex___txt_title {
	line-height: 1.4;
}
#disposal .disposal_flex .disposal_flex___txt .disposal_flex___txt_inbox {
	margin-top: 18px;
}
#disposal .disposal_flex .disposal_flex___btn {
	width: 280px;
	position: relative;
}
#disposal .disposal_flex .disposal_flex___btn img.image {
	position: absolute;
	bottom: calc(100% - 18px);
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}
#disposal .disposal_flex .disposal_flex___btn .disposal_flex___btn_inbox {
	width: 368px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	background: #20BFB2;
	color: #FFF;
	padding: 30px;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
}
#disposal .disposal_flex .disposal_flex___btn p.disposal_flex___btn_top {
	text-align: center;
	color: #FFF;
	font-size: 1.4rem;
	font-weight: 900;
	font-family: "NotoSansJP", sans-serif;
	line-height: 1.6;
}
#disposal .disposal_flex .disposal_flex___btn .button_box {
	margin-top: 30px;
}


@media screen and (max-width: 834px) {
	#disposal .disposal_flex {
        flex-direction: column;
	}
	#disposal .disposal_flex .disposal_flex___txt {
		width: 100%;
		margin-right: 0;
		padding: 60px 60px 105px 60px;
	}
	#disposal .disposal_flex .disposal_flex___btn {
		width: 100%;
		margin-top: -45px;
	}
	#disposal .disposal_flex .disposal_flex___btn .disposal_flex___btn_inbox {
		width: 480px;
		position: static;
		top: auto;
		transform: none;
		margin: 0 auto;
	}
}
@media screen and (max-width: 768px) {
	#disposal .disposal_flex .disposal_flex___txt {
		padding: 45px 45px 105px 45px;
	}
}
@media screen and (max-width: 560px) {
	#disposal .disposal_flex .disposal_flex___txt {
		padding: 30px 30px 105px 30px;
	}
	#disposal .disposal_flex .disposal_flex___txt .disposal_flex___txt_title {
		text-align: center;
	}
	#disposal .disposal_flex .disposal_flex___btn .disposal_flex___btn_inbox {
		width: 420px;
	}
	#disposal .disposal_flex .disposal_flex___btn p.disposal_flex___btn_top {
		margin-bottom: 12px;
	}
	#disposal .disposal_flex .disposal_flex___btn .button_box {
		margin-top: 12px;
	}
}
@media screen and (max-width: 430px) {
	#disposal .disposal_flex .disposal_flex___txt {
		padding: 20px 20px 120px 20px;
	}
	#disposal .disposal_flex .disposal_flex___txt .disposal_flex___txt_title {
		font-size: 1.2rem;
	}
	#disposal .disposal_flex .disposal_flex___btn .disposal_flex___btn_inbox {
		width: 100%;
		padding: 20px;
	}
	#disposal .disposal_flex .disposal_flex___btn p.disposal_flex___btn_top {
		margin-bottom: 12px;
		font-size: 1.2rem;
		font-weight: 600;
	}
}
@media screen and (max-width: 320px) {
}


/****************************************
 * parts/media
 * **************************************/

#media {
	background: url(images/parts/media/bg.webp) no-repeat;
	background-size: cover;
	background-position: top center;
	border: 18px solid #20BFB2;
}
#media .media_box {
	text-align: center;
}
#media .media_box a.thumb {
	display: inline-block;
}
#media .media_box a,
#media .media_box a.thumb img:hover {
	opacity: 1;
}

@media screen and (max-width: 568px) {
	#media {
		background: url(images/parts/media/bg_sp.webp) no-repeat;
		background-size: cover;
		background-position: center;
		border: 9px solid #20BFB2;
	}
}



/****************************************
 * p-ameblo.php
 * **************************************/

/*#p-ameblo {
	background: #F2E6EA;
	overflow: hidden;
}

#p-ameblo a {
	color: #F25489;
}
#p-ameblo .left {
	float: left;
	width: 37%;
	padding-right: 30px;
}
#p-ameblo .right {
	float: right;
	width: 63%;
}
#p-ameblo .right .display-area {
	width: 100%;
	overflow: auto;
    padding: 0 20px 0 0;
	height: 350px;
	margin-bottom: 30px;
}
#p-ameblo .right .display-area.deco::-webkit-scrollbar {
    width: 15px;
}
#p-ameblo .right .display-area.deco::-webkit-scrollbar-track {
	border-radius: 10px;
	background: #fafafa;
}
#p-ameblo .right .display-area.deco::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background: #F484A9;
}
#p-ameblo ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
#p-ameblo ul li {
	text-align: left;
	margin-bottom: 15px;
}
#p-ameblo ul li .box {
	overflow: hidden;
}
#p-ameblo ul li img {
	float: left;
	margin-right: 15px;
}
#p-ameblo ul li .text span {
	font-size: .8em;
	display: block;
}
#p-ameblo ul li .text .description {
	font-size: .8em;
}

@media screen and (max-width: 560px) {
	#p-ameblo .left,
	#p-ameblo .right {
		float: left;
		width: 100%;
		text-align: center;
		padding: 0;
	}
	#p-ameblo .left {
		margin-bottom: 30px;
	}
	#p-ameblo ul li img {
		width: 150px;
	}
}
@media screen and (max-width: 420px) {
	#p-ameblo ul li img {
		width: 120px;
	}
	#p-ameblo ul li .text .description {
		display: none;
	}
	#p-ameblo a {
		font-size: .9em;
	}
}
@media screen and (max-width: 320px) {
	#p-ameblo ul li img {
		width: 80px;
	}
}
*/


/****************************************
 * トップページ
 * **************************************/

.main_summary {
	margin: 0 auto 60px;
	width: 800px;
}
.main_summary p {
	font-weight: bold;
}

@media screen and (max-width: 864px) {
	.main_summary {
		width: 100%;
	}
}


/* エマージェンシー
 * **************************************/

.emergency {
	text-align: center;
	font-size: 1.2em;
	padding: 30px 0;
	background: #206dbf;
	border-bottom: 10px solid #206dbf;
}
.emergency p {
	background: #FFF;
	border-radius: 5px;
	padding: 18px 30px;
	display: inline-block;
}
.emergency a {
	color: #222;
	font-weight: bold;
	line-height: 1.3;
}



/* トップイメージ
 * **************************************/

#topimage {
	padding: 45px 0 0;
	background: url(images/front-page/topimage_bg.webp) no-repeat;
	background-position: center;
	background-size: cover;
	text-align: center;
}
#topimage .topimage_box {
	position: relative;
}
#topimage .topimage_box img.main_image_eco {
	position: absolute;
	right: 0;
}
#topimage .topimage_bottom {
	background-size: auto auto;
	background-color: rgba(209, 35, 84, 1);
	background-image: repeating-linear-gradient(135deg, transparent, transparent 15px, rgba(188, 32, 76, 1) 15px, rgba(188, 32, 76, 1) 30px );
}


@media screen and (max-width: 1194px) {
	/* 縦バナーがあるとき*/
	#topimage .topimage_box {
		padding: 0 90px 0 0;
	}
}
@media screen and (max-width: 559px) {
	#topimage {
		padding: 12px 0 0;
		background: none;
	}
	#topimage .inner {
		padding: 0;
	}
}

/* トップイメージの直下
 * **************************************/

.region-limited {
    text-align: center;
    padding: 12px 0;
    border-top: 18px solid #e02836;
    border-bottom: 18px solid #e02836;
	background: url(images/front-page/region-limitedBg.webp) no-repeat;
    background-position: top center;
    background-size: cover;
}

@media screen and (max-width: 960px) {
	.region-limited {
		padding: 12px 30px;
	}
}
@media screen and (max-width: 768px) {
	.region-limited {
		padding: 12px 60px;
	}
}
@media screen and (max-width: 560px) {
	.region-limited {
		padding: 18px 30px;
	}
	.region-limited img.discount {
		margin-top: -30px;
	}
}
@media screen and (max-width: 320px) {
	.region-limited {
		padding: 18px 20px;
	}
}


/* 問題 
 * **************************************/

.problem {
	padding: 0;
	background-image: url(images/front-page/problem_bg_left.webp), url(images/front-page/problem_bg_right.webp);
	background-repeat: no-repeat, no-repeat;
	background-size: contain, contain;
	background-position: left top, right top;
	border-top: 18px solid #FFF;
	position: relative;
}
#cleaning .problem {
	background-image: url(images/cleaning/problem_bg_left.webp), url(images/cleaning/problem_bg_right.webp);
	background-repeat: no-repeat, no-repeat;
	background-size: contain, contain;
	background-position: left top, right top;
}
#office .problem {
	background-image: url(images/office/problem_bg_left.webp), url(images/office/problem_bg_right.webp);
	background-repeat: no-repeat, no-repeat;
	background-size: contain, contain;
	background-position: left top, right top;
}
#house .problem {
	background-image: url(images/house/problem_bg_left.webp), url(images/house/problem_bg_right.webp);
	background-repeat: no-repeat, no-repeat;
	background-size: contain, contain;
	background-position: left top, right top;
}
.problem:before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -60px;
	left: 50%;
	transform: translateX(-50%);
	background: url(images/common/arrow_bottom.png) no-repeat;
	background-size: contain;
	background-position: center;
	width: 600px;
	height: 60px;
	z-index: 1;
}
.problem .problem_outline {
	padding-bottom: 60px;
	position: relative;
}
#cleaning .problem .problem_outline {
	padding-bottom: 0;
}
.problem .problem_outline img.problem_img {
	position: absolute;
	bottom: 0;
	left: -90px;
}
.problem .problem_items_box {
	background: #FFF;
	padding: 60px;
}
#cleaning .problem .problem_items_box {
	display: flex;
	align-items: stretch;
	background: none;
	padding: 60px 0;
}
#cleaning .problem .problem_items_box .problem_images {
	width: 32%;
    max-width: 350px;
}
#cleaning .problem .problem_items_box .problem_images img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.problem .problem_items_box ul.problem_items {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
}
#cleaning .problem .problem_items_box ul.problem_items {
	width: 70%;
    max-width: 750px;
	background: #fafafa;
	padding: 60px 0;
}
.problem .problem_items_box ul.problem_items li {
	width: calc(100% / 2 - 12px);
	border-bottom: 1px solid #ededed;
	padding: 9px 0;
	text-align: center;
}
#cleaning .problem .problem_items_box ul.problem_items li {
	width: 100%;
	border: none;
}
.problem .problem_items_box ul.problem_items li:nth-child(-n+2) {
	border-top: 1px solid #ededed;
}
.problem .problem_items_box ul.problem_items li:nth-child(7) {
	margin-left: 60px;
}
.problem .problem_items_box ul.problem_items li:nth-child(8) {
	margin-left: 230px;
	width: auto;
	padding: 9px 18px;
}
.problem .problem_items_box ul.problem_items li span {
	font-size: 1.4rem;
	font-weight: bold;
	padding-left: 42px;
	position: relative;
}
.problem .problem_items_box ul.problem_items li span:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url(images/common/icon_check.png) no-repeat;
	background-size: 100%;
	background-position: center;
	width: 28px;
	height: 28px;
}
#office .problem .problem_items_box ul.problem_items li span:before {
	background: url(images/common/icon_checkBlue.png) no-repeat;
	background-size: 100%;
	background-position: center;
}
#house .problem .problem_items_box ul.problem_items li span:before {
	background: url(images/common/icon_checkRed.png) no-repeat;
	background-size: 100%;
	background-position: center;
}
.problem .problem_items_box ul.problem_items li b {
	font-size: 1.2em;
	margin: 0 3px;
	color: #20BFB2;
}
#office .problem .problem_items_box ul.problem_items li b {
	color: #204DBF;
}
#house .problem .problem_items_box ul.problem_items li b {
	color: #ce1400;
}

@media screen and (max-width: 1194px) {
	.problem .problem_items_box ul.problem_items li span {
		font-size: 1.3rem;
	}
	.problem .problem_items_box ul.problem_items li b {
		font-size: 1.1em;
	}
}
@media screen and (max-width: 834px) {
	.problem .problem_items_box {
		padding: 30px;
	}
	.problem .problem_items_box ul.problem_items li {
		line-height: 1.6;
		padding: 12px 0;
	}
	.problem .problem_items_box ul.problem_items li span {
		font-size: 1.1rem;
		padding-left: 30px;
	}
	.problem .problem_items_box ul.problem_items li span:before {
		width: 22px;
		height: 22px;
	}
	.problem .problem_items_box ul.problem_items li b {
		margin: 0;
	}
	#cleaning .problem .problem_outline {
		padding-bottom: 0;
	}
	.problem .problem_outline img.problem_img {
		width: 380px;
	}
	#cleaning .problem .problem_items_box {
		flex-direction: column;
		padding-bottom: 0;
	}
	#cleaning .problem .problem_items_box .problem_images,
	#cleaning .problem .problem_items_box ul.problem_items {
		max-width: 100%;
		width: 100%;
	}
	#cleaning .problem .problem_items_box .problem_images img {
		width: 100%;
	}
	#cleaning .problem .problem_items_box ul.problem_items {
		padding: 30px 0;
	}
}
@media screen and (max-width: 560px) {
	.problem {
		background: url(images/front-page/problem_bg_sp.webp) no-repeat;
		background-size: cover;
		background-position: center;
	}
	#house .problem {
		background: url(images/house/problem_bg_sp.webp) no-repeat;
		background-size: cover;
		background-position: center;
	}
	#office .problem {
		background: url(images/office/problem_bg_sp.webp) no-repeat;
		background-size: cover;
		background-position: center;
	}
	#cleaning .problem {
		background: url(images/cleaning/problem_bg_sp.webp) no-repeat;
		background-size: cover;
		background-position: center;
	}
	.problem .problem_outline {
		padding-bottom: 200px;
	}
	.problem .problem_outline img.problem_img {
		left: 50%;
		transform: translateX(-50%);
	}
	.problem .problem_items_box ul.problem_items {
		flex-direction: column;
		align-items: flex-start;
	}
	.problem .problem_items_box ul.problem_items li {
		width: 100%;
	}
	.problem .problem_items_box ul.problem_items li:nth-child(-n+2) {
		border-top: none;
	}
	.problem .problem_items_box ul.problem_items li:nth-child(7),
	.problem .problem_items_box ul.problem_items li:nth-child(8) {
		margin-left: 0;
		width: 100%;
	}
	#cleaning .problem .problem_items_box ul.problem_items {
		padding: 30px 30px;
		width: 100%;
	}
	#cleaning .problem .problem_items_box ul.problem_items li {
		width: auto;
		margin: 0 auto;
		padding: 9px 0 0 12px;
		position: relative;
	}
	#cleaning .problem .problem_items_box ul.problem_items li:before {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		background: url(images/common/icon_check.png) no-repeat;
		background-size: 100%;
		background-position: center;
		width: 22px;
		height: 22px;
	}
	#cleaning .problem .problem_items_box ul.problem_items li span {
		text-align: left;
		display: inline-block;
	}
	#cleaning .problem .problem_items_box ul.problem_items li span:before {
		content: none;
	}
}
@media screen and (max-width: 430px) {
	.problem .inner {
		padding: 0;
	}
	.problem .problem_outline {
		padding-bottom: 150px;
	}
	#cleaning .problem .problem_outline {
		padding-bottom: 60px;
	}
	.problem .problem_items_box {
		padding: 30px 0;
		background: #E4FAF8;
	}
	#house .problem .problem_items_box {
		background: #FEFDFA;
	}
	#office .problem .problem_items_box {
		background: #FAFBFE;
	}
	.problem .problem_outline img.problem_img {
		width: 280px;
	}
	#cleaning .problem .problem_items_box {
		padding-bottom: 0;
	}
	#cleaning .problem .problem_items_box ul.problem_items {
		padding: 30px 30px;
	}
	#cleaning .problem .problem_items_box ul.problem_items li {
		margin: 0;
		padding-left: 24px;
	}
}
@media screen and (max-width: 380px) {
	#cleaning .problem .problem_items_box ul.problem_items li {
		margin: 0;
		padding-left: 32px;
	}
	#cleaning .problem .problem_items_box ul.problem_items li span {
		padding-left: 0;
	}
	.problem .problem_items_box ul.problem_items li span {
		font-size: 1.1rem;
	}
}
@media screen and (max-width: 320px) {
	#cleaning .problem .problem_outline {
		padding-bottom: 0;
	}
	#cleaning .problem .problem_items_box {
		padding: 45px 0;
	}
	#cleaning .problem .problem_items_box ul.problem_items {
		padding: 30px 20px;
	}
	.problem .problem_items_box ul.problem_items li span {
		font-size: 1rem;
	}
}


/* 解決
* **************************************/

.solution {
	background: url(images/front-page/solutonBg.webp) no-repeat;
	background-size: cover;
	background-position: center;
	border-top: 18px solid #FFF;
	position: relative;
}
.solution .solution-outline {
	position: relative;
}
.solution .solution_box {
    width: calc(100% + 180px);
    margin-left: -90px;
    margin-top: -150px;
}
.solution .solution_box img.solutonTitle {
	
}
.solution .solution_box .solution-text {
	width: 100%;
	font-weight: 600;
	margin-top: 30px;
	font-size: 1.2em;
}
.solution .solution-media {
	text-align: center;
	width: 1100px;
    margin: 45px auto 0;
}
.solution .solution-media a img:hover {
	opacity: 1;
}

/* クリックでyoutube再生 */
.lity-close {
	left: 50%;
	top: 10% !important;
	transform: translateX(-50%);
}

@media screen and (max-width: 1440px) {
	.solution .solution_box {
		width: 100%;
		margin-left: 0;
	}
}
@media screen and (max-width: 1194px) {
	.solution .solution_box .solution-text {
		font-size: 1.1em;
	}
	.solution .solution_box {
		margin-top: -120px;
	}
	.solution .solution-media {
		width: 100%;
	}
}
@media screen and (max-width: 768px) {
	.solution .solution_box {
		margin-top: -75px;
	}
}
@media screen and (max-width: 559px) {
	.solution {
		overflow: hidden;
		padding-top: 90px;
		background: #fafafa;
	}
	.solution .solution_box {
		width: calc(100% + 12px);
		margin-right: -12px;
		margin-top: -30px;
	}
	.solution .solution_box .solution-text {
		font-size: 1.16em;
		line-height: 2;
	}
	
}
@media screen and (max-width: 430px) {
	
}


/* サービス
 * **************************************/

.service {
	background: #FFF;
}
.service .service_items {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
gap: 28px;
	margin-top: -36px;
}
.service .service_item {
	overflow: hidden;
	border-radius: 24px;
}
.service .service_item .service_item_title {
	text-align: center;
	margin-top: 30px;
}
.service .service_item .service_item_title span {
	display: inline-block;
	color: #8CC11F;
	padding: 0 18px;
	font-family: "NotoSansJP", sans-serif;
	font-weight: 600;
	line-height: 1.4;
}
.service .service_item .service_item_box {
	padding: 12px 30px 18px;
	font-weight: bold;
}
.service .service_item p.pseudolink {
	text-align: center;
	margin-bottom: 30px;
	margin-top: auto;
}
.service .service_item p.pseudolink span {
	display: inline-block;
	background: #FFF;
	font-weight: bold;
	padding: 12px 30px;
	border-radius: 30px;
	transition: all .3s;
}
.service .service_item a {
	display: flex;
	flex-direction: column;
}
.service .service_item a,
.service .service_item a img {
	opacity: 1;
	color: #000033;
	background: #F3FAE4;
	height: 100%;
}
.service .service_item a:hover {
	color: #000033;
	background: #E9F7CE;
}
.service .service_item a:hover p.pseudolink {
	color: #8CC11F;
}


@media screen and (max-width: 960px) {
	.service .service_items {
	grid-template-columns: repeat(2, 1fr);
	}
}
@media screen and (max-width: 834px) {
	.service {
		padding-top: 75px;
	}
}
@media screen and (max-width: 559px) {
	.service {
		padding-top: 60px;
	}
	.service .service_items {
		grid-template-columns: repeat(1, 1fr);
	}
	.service .service_item {
		width: 100%;
		border-radius: 12px;
	}
	.service .service_item .service_item_title {
		margin-top: 18px;
	}
	.service .service_item .service_item_box {
		padding: 12px 20px 18px;
	}
	.service .service_item p.pseudolink span {
		min-width: 250px;
		border: 2px solid #8CC11F;
	}
}
@media screen and (max-width: 430px) {
}
@media screen and (max-width: 380px) {
	.service {
		padding-top: 45px;
	}
}


/* 選ばれる理由
 * **************************************/

/* ティックトック キャッチコピー 2025.2.4 */
.reason .catchcopy {
	
}
.reason .catchcopy p.beginning {
	text-align: center;
    color: #20BFB2;
    font-weight: 600;
	line-height: 2;
	margin-bottom: 0;
}
.reason .catchcopy p.beginning span {
	display: inline-block;
	font-size: 1.3rem;
	line-height: 1;
	background-image: linear-gradient(0deg, #cff6f380 0.5em, transparent 0.5em);
}
.reason .catchcopy p.catchcopy-text {
	font-style: italic;
	font-size: 2.2em;
	line-height: 2.2;
	text-align: center;
	font-family: serif;
	font-weight: bold;
	color: #BF202D;
	margin-bottom: 0;
}
.reason .catchcopy p.catchcopy-text span.dot {
	display: inline-block;
	background-image: radial-gradient(circle at center, #BF202D 20%, transparent 20%);
	background-position: top right -6px;
	background-repeat: repeat-x;
	background-size: 39px 36px;
	padding-top: .3em;
}
.reason .catchcopy p.catchcopy-text span.kakeru {
	display: inline-block;
	margin: 0 4px 0 6px;
	font-size: 1.4em;
}


@media screen and (max-width: 960px) {
	.reason .catchcopy p.catchcopy-text span.text {
		display: block;
		margin-top: -28px;
	}
}
@media screen and (max-width: 768px) {
	.reason .catchcopy {
		margin-top: -30px;
	}
	.reason .catchcopy p.catchcopy-text {
		font-size: 2.2em;
		line-height: 1.8;
	}
}
@media screen and (max-width: 559px) {
	.reason .catchcopy p.catchcopy-text {
		font-size: 2em;
	}
	.reason .catchcopy p.catchcopy-text span.dot {
		background-position: top right -3px;
		background-size: 32px 32px;
	}
	.reason .catchcopy p.catchcopy-text span.kakeru {
		margin-top: -22px;
	}
	.reason .catchcopy p.beginning {
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 430px) {
	.reason .catchcopy {
		margin-bottom: 60px;
	}
	.reason .catchcopy p.catchcopy-text {
		        font-size: 1.6em;
        line-height: 2;
	}
	.reason .catchcopy p.catchcopy-text span.dot {
		background-position: top right -6px;
		background-size: 28px 28px;
	}
	.reason .catchcopy p.catchcopy-text span.text {
		margin-top: -24px;
	}
	.reason .catchcopy p.beginning {
		margin-top: 12px;
		margin-bottom: 45px;
	}
}
@media screen and (max-width: 380px) {
	.reason .catchcopy p.catchcopy-text {
		font-size: 1.6em;
	}
	.reason .catchcopy p.catchcopy-text span.text {
		margin-top: -22px;
	}
}
@media screen and (max-width: 320px) {
	.reason .catchcopy p.catchcopy-text {
		font-size: 1.5em;
	}
	.reason .catchcopy p.catchcopy-text span.dot {
		font-size: 1.04em;
		background-position: top right -5px;
		background-size: 22px 22px;
	}
	.reason .catchcopy p.catchcopy-text span.kakeru {
		margin: 0 1px 0 2px;
	}
	.reason .catchcopy p.catchcopy-text span.text {
		margin-top: -20px;
	}
}



.reason {
	padding-top: 180px;
	border-top: 1px solid #8cc120;
	background: #F3FAE4 url(images/front-page/reason_bg.webp) no-repeat;
	background-size: 100%;
	background-position: top center;
	border-top: 18px solid #FFF;
}
.reason .reason-items {
	margin-top: 30px;
}
.reason .reason-item:not(:first-child) {
	margin-top: 48px;
}
.reason .reason-item .reason-item-title {
	color: #fff;
    border-radius: 6px 6px 0 0;
    padding: 15px 15px 15px 5em;
	background: #8cc11f;
    position: relative;
}
.reason .reason-item .reason-item-title span {
	font-size: 1.8rem;
    font-weight: 600;
	line-height: 1.4;
}

.reason .reason-item .reason-item-inbox {
	    background: #fff;
    border-radius: 0 0 6px 6px;
    max-width: 1120px;
    padding: 42px 42px 42px;
    width: 100%;
}

.reason .reason-item .reason-item-flex {
	display: flex
}
.reason .reason-item .reason-item-flex .reason-item-flex___img {
	width: 50%;
    max-width: 420px;
	position: relative;
}
.reason .reason-item .reason-item-flex .reason-item-flex___img img {
	border-radius: 6px;
}
.reason .reason-item .reason-item-flex .reason-item-flex___text {
	width: 60%;
	max-width: 600px;
	padding-left: 45px;
	font-weight: 600;
}
.reason .reason-item .reason-item-flex .reason-item-flex___text span {
	color: #0b71ac;
}
.reason .reason-item .reason-item-sdgs {
	margin-top: 38px;
	padding: 42px 30px 30px;
	border-radius: 6px;
	border: 3px solid #0b71ac;
	font-weight: 600;
}
.reason .reason-item .reason-item-sdgs .reason-item-sdgs-title {
	margin: -58px 0 12px 0;
}
.reason .reason-item .reason-item-sdgs .reason-item-sdgs-title span {
	display: inline-block;
	background: #FFF;
    color: #0b71ac;
    font-weight: 600;
	font-size: 1.1em;
	padding: 0 9px;
}
.reason .reason-item .reason-item-sdgs .img-reason01-sdgs {
	width: 360px;
	float: right;
	margin: 0 0 12px 12px;
}
.reason .reason-item .reason-item-text {
	position: relative;
    margin-top: -24px;
    z-index: 1;
}
.reason .reason-item.item01 .reason-item-text {
	margin-top: 18px;
}
.reason .reason-item .reason-item-title {
	display: flex;
	flex-direction: column;
	text-align: left;
}
.reason .reason-item.item01 .reason-item-title {
	display: flex;
    flex-direction: row;
    justify-content: stretch;
	position: relative;
}
.reason .reason-item .reason-item-title:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 1em;
	transform: translateY(-50%);
	width: 100px;
	height: 100px;
}
.reason .reason-item.item01 .reason-item-title:before {
	background: url(images/front-page/reason-step01.svg) no-repeat;
	background-size: 100%;
}
.reason .reason-item.item02 .reason-item-title:before {
	background: url(images/front-page/reason-step02.svg) no-repeat;
	background-size: 100%;
}
.reason .reason-item.item03 .reason-item-title:before {
	background: url(images/front-page/reason-step03.svg) no-repeat;
	background-size: 100%;
}
.reason .reason-item.item04 .reason-item-title:before {
	background: url(images/front-page/reason-step04.svg) no-repeat;
	background-size: 100%;
}
.reason .reason-item.item05 .reason-item-title:before {
	background: url(images/front-page/reason-step05.svg) no-repeat;
	background-size: 100%;
}
.reason .reason-item.item06 .reason-item-title:before {
	background: url(images/front-page/reason-step06.svg) no-repeat;
	background-size: 100%;
}
.reason .reason-item.item07 .reason-item-title:before {
	background: url(images/front-page/reason-step07.svg) no-repeat;
	background-size: 100%;
}
.reason .reason-item .reason-item-title b {
	color: #8cc11f;
	font-weight: 600;
}

.reason .reason-item .reason-item-text div {
	margin-top: 18px;
}

@media screen and (max-width: 1194px) {
	.reason {
		padding-top: 150px;
	}
	.reason .reason-item .reason-item-title span {
		font-size: 2.4vw;
	}
	.reason .reason-item .reason-item-flex {
		display: block;
	}
	.reason .reason-item .reason-item-flex .reason-item-flex___img {
		float: left;
		margin: 0 42px 30px 0;
	}
	.reason .reason-item .reason-item-flex .reason-item-flex___text {
		width: 100%;
		max-width: 100%;
		padding: 0;
	}

}
@media screen and (max-width: 768px) {
	.reason {
		padding-top: 90px;
	}
	.reason .reason-item .reason-item-title {
		padding: 15px 15px 15px 5.6em;
	}
	.reason .reason-item .reason-item-title span {
		font-size: 2.8vw;
	}
	.reason .reason-item .reason-item-flex .reason-item-flex___img {
		width: 45%;
		margin: 0 28px 18px 0;
	}
	.reason .reason-item .reason-item-sdgs .img-reason01-sdgs {
		width: 32%;
        max-width: 160px;
	}
}
@media screen and (max-width: 559px) {
	.reason .reason-items {
		width: calc(100% + 60px);
		margin-left: -30px;
	}
	.reason .reason-item .reason-item-title {
		padding: 15px 15px 15px 6em;
	}
	.reason .reason-item .reason-item-title span {
		font-size: 3.8vw;
	}
	.reason .reason-item .reason-item-inbox {
		padding: 30px;
	}
	.reason .reason-item .reason-item-flex .reason-item-flex___img {
		float: none;
		width: 100%;
		max-width: 100%;
	}
	.reason .reason-item .reason-item-flex .reason-item-flex___text {
		margin-top: 22px;
	}
	.reason .reason-item .reason-item-sdgs {
		padding: 36px 22px 22px;
	}
	.reason .reason-item .reason-item-sdgs .img-reason01-sdgs {
		width: 35%;
	}
}
@media screen and (max-width: 430px) {
	.reason .reason-item:not(:first-child) {
		margin-top: 60px;
	}
	.reason .reason-item .reason-item-title {
		padding: 15px 30px 15px 30px;
	}
	.reason .reason-item .reason-item-title:before {
		width: 60px;
		height: 60px;
		top: -45px;
		left: 50%;
		transform: translateX(-50%);
	}
	.reason .reason-item .reason-item-title span {
		font-size: 100%;
	}
	.reason .reason-item .reason-item-inbox {
		padding: 0 30px 30px 30px;
	}
	.reason .reason-item .reason-item-flex .reason-item-flex___img {
		margin: 0;
	}
	.reason .reason-item .reason-item-flex .reason-item-flex___img img {
		width: calc(100% + 60px);
		max-width: calc(100% + 60px);
		margin-left: -30px;
		border-radius: 0;
	}
}
@media screen and (max-width: 380px) {
	.reason {
		padding-top: 68px;
	}
	.reason .reason-items {
		width: calc(100% + 40px);
		margin-left: -20px;
	}
	    .reason .reason-item .reason-item-title {
        padding: 15px 20px 15px 20px;
    }
}
	
/*



.reason {
	padding: 180px 0 90px;
	border-top: 1px solid #8cc120;
	background: #FFF url(images/front-page/reason_bg.webp) no-repeat;
	background-size: 100%;
	background-position: top center;
	border-top: 18px solid #FFF;
}
.reason .reason_items {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.reason .reason_item {
	width: calc(100% / 3 - 30px);
	margin-top: 45px;
}
.reason .reason_item.item01 {
	width: 100%;
}
.reason .reason_item .reason_title {
	display: flex;
	flex-direction: column;
	font-size: 1.7rem;
}
.reason .reason_item.item01 .reason_title {
	display: flex;
	flex-direction: row;
	justify-content: stretch;
}
.reason .reason_item .reason_title b {
	color: #8cc11f;
font-weight: 600;
}
.reason .reason_item .reason_title span {
	display: inline-block;
	text-align: center;
	line-height: 1.4;
	font-weight: 600;
	margin-top: 12px;
}
.reason .reason_item.item01 .reason_title span {
	margin-top: 0;
	text-align: left;
}
.reason .reason_item .reason_title span.number {
	display: block;
	width: 90px;
	color: #FFF;
	background: #8cc11f;
	text-align: center;
	margin: 0 auto;
}
.reason .reason_item.item01 .reason_title span.number {
	display: flex;
	align-items: center;
	width: auto;
	color: #FFF;
	background: #8cc11f;
	padding: 0 12px;
	margin: 0 18px 0 0;
	text-align: left;
}
.reason .reason_item .reason_item_flex {
	display: flex
}
.reason .reason_item .reason_item_flex .reason_item_flex___img {
	width: 320px;
	position: relative;
}

.reason .reason_item .reason_item_flex .reason_item_flex___txt {
	width: calc(100% - 320px);
	padding-left: 45px;
}
.reason .reason_item .reason_item_flex .reason_item_flex___txt .reason_item_flex___txt_box {
	margin-top: 12px;
	font-size: 1rem;
}
.reason .reason_item .reason_item_flex .reason_item_flex___img img.reason_img_icon {
	position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(100% - 372px);
    z-index: 1;
}
.reason .reason_item .reason_item_txt {
	position: relative;
	margin-top: -24px;
	z-index: 1;
}
.reason .reason_item .reason_item_txt .reason_item_txt_box {
	margin-top: 18px;
	font-size: 1rem;
}
.reason .reason_item .reason_item_txt .reason_item_txt_box img.reason_10poff {
	margin-top: -12px;
}

.reason .reason_newbox {
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
}
.reason .reason_newbox .reason_newbox_item {
	background: #FFF;
	border-top: 1px solid #8cc120;
}
.reason .reason_newbox .reason_newbox_item .reason_newbox_title {
	display: flex;
	align-items: center;
}
.reason .reason_newbox .reason_newbox_item .reason_newbox_title span {
	text-align: center;
	display: flex;
	align-items: center;
    justify-content: center;
	font-size: 1.6em;
	font-weight: bold;
	background: #8cc120;
	width: 90px;
	height: 90px;
	color: #FFF;
}
.reason .reason_newbox .reason_newbox_item .reason_newbox_title .reason_title {
	margin: 0;
	padding-left: 30px;
    font-size: 1.6em;
	line-height: 1.3;
	color: #8cc11f;
}
.reason .reason_newbox .reason_newbox_itembox {
	overflow: hidden;
	padding: 60px;
}
.reason .reason_newbox .reason_newbox_itembox figure.reason_img {
	float: left;
	margin-right: 60px;
	margin-bottom: 45px;
	position: relative;
}
.reason .reason_newbox .reason_newbox_itembox img.reason_img_icon {
	position: absolute;
    left: 50%;
    bottom: -45px;
    transform: translateX(-50%);
}
.reason .reason_newbox .reason_newbox_itembox .button_box {
	margin-top: 30px;
}
.reason .reason_newbox .reason_newbox_itembox ul {
	list-style: inside;
}

@media screen and (max-width: 1194px) {
	.reason .reason_item .reason_title span {
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 960px) {
	.reason .reason_item {
		width: calc(100% / 2 - 30px);
	}
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 560px) {
	.reason {
		padding: 135px 0 60px;
		background: #FFF url(images/front-page/reason_bg_sp.webp) no-repeat;
		background-size: 100%;
		background-position: top center;
	}
	.reason .reason_items {
		margin-top: -45px;
	}
	.reason .reason_item img.reason_img {
		border-radius: 12px;
	}
	.reason .reason_item .reason_item_flex {
		flex-direction: column;
	}
	.reason .reason_item .reason_item_flex .reason_item_flex___img,
	.reason .reason_item .reason_item_flex .reason_item_flex___txt {
		width: 100%;
		padding: 0;
	}
	.reason .reason_item .reason_item_flex .reason_item_flex___txt {
		position: relative;
		margin-top: -24px;
		z-index: 1;
	}
	.reason .reason_item {
		width: 100%;
	}
	.reason .reason_item .reason_item_flex .reason_item_flex___img img.reason_img_icon {
		right: 0;
		left: auto;
		bottom: -40px;
		transform: none;
	}
	.reason .reason_item.item01 .reason_title {
		flex-direction: column;
		align-items: center;
	}
	.reason .reason_item.item01 .reason_title span {
		display: inline-block;
		font-weight: bold;
		text-align: center;
		line-height: 1.6;
		margin-top: 12px;
	}
	.reason .reason_item.item01 .reason_title span.number {
		display: block;
		width: 90px;
		color: #FFF;
		background: #8cc11f;
		text-align: center;
		margin: 0 auto;
	}
	.reason .reason_item .reason_title span {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 430px) {
	.reason {
		padding: 105px 0 60px;
	}
	.reason .reason_item .reason_item_flex .reason_item_flex___img img.reason_img_icon {
		width: 130px;
		bottom: auto;
		top: -40px;
	}
	.reason .reason_item .reason_title {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 380px) {
	.reason {
		padding: 90px 0 60px;
	}
	.reason .reason_newbox .reason_newbox_item .reason_newbox_title .reason_title {
		font-size: 1.2em;
	}
}
@media screen and (max-width: 380px) {
	.reason .reason_item .reason_title span {
		font-size: 1.3rem;
	}
}

*/

/* バナー
 * **************************************/

.bannerF p.memo {
	text-align: right;
	font-size: .8rem;
	margin-top: 9px;
}

@media screen and (max-width: 560px) {
.bannerF p.memo {
	padding: 0;
	
	}
}


/* 事例・実績紹介
 * **************************************/

.cases {
	background: #8cc11f;
}
.cases ul.cases_slider {
	margin: 0 auto;
	padding: 0;
}
.cases ul.cases_list li {
	height: auto;
	padding: 45px;
	margin: 0 18px;
	border-radius: 4px;
	background: #FFF;
	box-shadow: 0 0 6px rgb(0 0 0 / 20%);
}
.cases ul.cases_list li a {
	display: block;
}
.cases ul.cases_list li a img:hover {
	opacity: 1;
}
.cases ul.cases_slider a {
	display: flex !important;
	flex-direction: column;
	height: 100%;
}

/*BA画像*/
.cases .ba_images {
	margin-top: 12px;
	height: 100%;
	display: flex;
	position: relative;
}
.cases .ba_images figcaption {
	text-align: center;
	margin-top: 0;
	padding: 6px;
	font-size: 1rem;
	font-weight: bold;
	color: #000;
}
.cases .ba_images figcaption.before {
	background: #ededed;
}
.cases .ba_images figcaption.after {
	background: #FCEA2A;
}
.cases .ba_images img.ba_arrow {
	width: 60px;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
}

/*単体画像*/
.cases .single_images {
	margin-top: 12px;
	height: 100%;
	display: flex;
}


.cases .meta {
	width: 100%;
	margin-top: 12px;
}
.cases .meta .cases_title {
	text-align: center;
	font-size: 1rem;
	font-weight: bold;
	color: #333;
}
.cases .meta .work {
	color: #333;
	background: #fafafa;
	margin: 9px 0 9px;
	padding: 18px;
	border-radius: 6px;
	text-align: center;
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.4;
}
.cases .meta .work p {
	margin: 0;
}
.cases .meta div {
	margin-top: 12px;
	margin-bottom: 18px;
}
.cases .meta div p.cost {
	color: #333;
	margin: 0;
	font-size: 1rem;
	font-weight: bold;
	text-align: right;
	line-height: 1.4;
	display: flex;
	align-items: center;
}
.cases .meta div p.cost span.cost_title {
	margin-right: auto;
	color: #8cc11f;
	background: #E8F9E0;
	display: inline-block;
	padding: 9px 12px;
	border-radius: 30px;
}
.cases .meta div p.cost span.cost_txt {
	color: #8cc11f;
	letter-spacing: 3px;
	font-size: 1.4rem;
	font-weight: bold;
	font-family: "NotoSansJP", sans-serif;
}
.cases .meta div p.cost span.cost_txt span {
	font-size: 1.9rem;
	letter-spacing: 0;
}
.cases p.pseudolink {
	text-align: center;
    margin-top: auto;
}
.cases p.pseudolink span {
    display: inline-block;
    background: #8cc020;
	color: #FFF;
    font-weight: bold;
    padding: 12px 30px;
    border-radius: 30px;
    transition: all .3s;
}

/* 事例・実績紹介 slick */
.cases_slider .slick-track {
	display: flex;
	align-items: stretch;
}
.cases_slider .slick-prev, 
.cases_slider .slick-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
	z-index: 1;
}
.cases_slider .slick-prev {
	left: -1.5%;
}
.cases_slider .slick-next {
	right: -1.5%;
}

@media screen and (max-width: 768px) {
	.cases ul.cases_list li {
		margin: 0;
	}
	.cases .meta div p.cost span.cost_title {
		font-size: .9rem;
	}
	.cases .meta div p.cost span.cost_txt span {
		font-size: 1.6rem;
	}

}
@media screen and (max-width: 560px) {
	.cases ul.cases_list li {
		padding: 30px;
	}
	.cases ul.cases_list .slick-prev, 
	.cases ul.cases_list .slick-next {
		width: 45px;
	}
	.cases .meta div p.cost span.cost_title {
		font-size: .8rem;
		padding: 6px 12px;
	}
	
}
@media screen and (max-width: 430px) {
	.cases ul.cases_list li {
		padding: 20px;
	}
}
@media screen and (max-width: 380px) {
	.cases .meta div p.cost span.cost_txt {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 320px) {
	.cases_slider .slick-prev, 
	.cases_slider .slick-next {
		width: 30px;
	}
}


/* お声・アンケート
 * **************************************/

.voice_box {
	margin: 0 auto;
	padding: 0;
}
.voice_box ul.voice_slider {
   width: 90%;
	margin: 0 auto;
	padding: 0;
}
.voice_box ul.voice_slider li {
	width: 100%;
	margin: 0 12px !important;
}

@media screen and (max-width: 559px) {
	.voice ul.voice_slider li,
	.voice ul.voice_list li:nth-child(odd),
	.voice ul.voice_list li:nth-child(even) {
		margin: 0 12px !important;
	}
}
@media screen and (max-width: 430px) {
	.voice ul.voice_slider {
		width: 96%;
	}
}


/* お知らせ
 * **************************************/

#news-sns .news_box {
	position: relative;
}
#news-sns .news_box img.mascot_two {
	position: absolute;
	right: 30px;
	top: -90px;
}

/* バナー */
#news-sns .bnr_box {
	margin-top: 60px;
}
#news-sns .bnr_box ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
}
#news-sns .bnr_box ul li {
	margin-right: 30px;
}

@media screen and (max-width: 834px) {
	#news-sns .news_box img.mascot_two {
		width: 150px;
	}
}
@media screen and (max-width: 559px) {
	#news-sns .news_box img.mascot_two {
		width: 120px;
	}
	#news-sns .bnr_box ul {
		flex-direction: column;
	}
	#news-sns .bnr_box ul li {
		margin: 12px 0 0 0;
		text-align: center;
	}
}
@media screen and (max-width: 430px) {
	#news-sns .news_box img.mascot_two {
		width: 120px;
	}
}
@media screen and (max-width: 320px) {
	#news-sns .news_box img.mascot_two {
		width: 105px;
		right: 0;
		top: -75px;
	}
}


/* 料金事例 
 * **************************************/

.price_case .inner {
	width: 100%;
	padding: 0 90px;
}
.price_case .price_case_title {
	text-align: center;
	margin: 0 0 30px;
	font-size: 2.4em;
}
.price_case .price_case_title span {
	display: block;
}
.price_case .price_case_title span.line {
	display: inline-block;
	position: relative;
	padding: 0 1.8rem;
	color: #000;
	font-size: .8em;
	font-weight: bold;
	text-align: center;
}
.price_case .price_case_title span.line:before,
.price_case .price_case_title span.line:after {
	content: '';
	background: #000;
	position: absolute;
	top: 50%;
	width: 4px;
	height: 25px;
}
.price_case .price_case_title span.line:before {
	left: 0;
	transform: translateY(-50%) rotate(-30deg);
}
.price_case .price_case_title span.line:after {
	right: 0;
	transform: translateY(-50%) rotate(30deg);
}

.price_case .price_case_titlebox {
	text-align: center;
}
.price_case .price_case_titlebox img.clover {
	margin-bottom: 8px;
}
.price_case .price_case_titlebox p.price_case_titleB_top {
	font-size: 1.6em;
	font-family: serif;
	font-weight: bold;
	margin-bottom: 8px;
}

/*ドラッグ*/
.price_case p.drag {
	text-align: right;
	margin: 0 0 12px;
	font-weight: bold;
	font-size: .8em;
	animation: SlideIn 1.6s infinite;
}
.price_case p.drag span {
	border-bottom: 2px solid;
}
@keyframes SlideIn {
	0% {
		opacity: 0;/*初期状態では透明に*/
		transform: translateX(-64px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}
/*ドラッグ*/

.price_case .scrollbar {
  width: 100%;
  height: 20px;
  overflow-x: scroll;
  overflow-y: hidden;
}
.price_case .price_case_items_scroll {
	display: flex;
	width: 100%;
	height: 100%;
	overflow-x: auto;
	
	white-space: nowrap;
	padding: 0 0 30px;
}

/*スクロールバー*/
.price_case .price_case_items_scroll::-webkit-scrollbar {
	height: 20px;
}
.price_case .price_case_items_scroll::-webkit-scrollbar-track {
	background: #FFF;
	border-radius: 20px;
}
.price_case .price_case_items_scroll::-webkit-scrollbar-thumb {
	background: #206dbf;
	border-radius: 20px;
}

.price_case .price_case_items_scroll.green::-webkit-scrollbar {
	height: 20px;
}
.price_case .price_case_items_scroll.green::-webkit-scrollbar-track {
	background: #FFF;
	border-radius: 20px;
}
.price_case .price_case_items_scroll.green::-webkit-scrollbar-thumb {
	background: #4FBC20;
	border-radius: 20px;
}
/*スクロールバー ここまで*/

.price_case .price_case_item {
	width: 700px;
	flex-shrink: 0;
	
	background: #FFF;
	margin: 0 60px 0 0;
	padding: 150px 60px 60px;
	position: relative;
}
.price_case .price_case_item:last-child {
	margin: 0;
}
.price_case .price_case_item .price_case_item_title {
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	padding: 6px 20px;
	background: red;
	color: #FFF;
	font-weight: bold;
	font-size: 1em;
	display: flex;
	flex-direction: column;
}
.price_case .price_case_item .price_case_item_title.green {
	background: #4FBC20;
}
.price_case .price_case_item .price_case_item_title span.typetag {
	display: block;
	font-size: 1.3em;
}
.price_case .price_case_item .price_case_item_title span.typetag span.area {
	display: inline-block;
	font-size: .8em;
	margin-left: 12px;
	padding-left: 12px;
	border-left: 3px solid;
	line-height: 1;
}
.price_case .price_case_item .price_case_item_title span.price {	
	display: block;
	text-align: right;
	font-size: 1.6em;
}
.price_case .price_case_item .price_case_text {
	white-space: initial;
	margin: 30px 0 -30px;
	font-size: .9em;
}
.price_case .price_case_item .price_case_text .price_case_contents {
	border-top: 1px solid #ededed;
	border-bottom: 1px solid #ededed;
	padding: 12px 0;
}
.price_case .price_case_item .price_case_text .price_case_contents ol {
	margin: 0 0 12px;
	padding: 0 0 0 1.3em;
}
.price_case .price_case_item .price_case_text .price_case_contents p.price_case_detail {
	font-weight: bold;
	color: red;
}
.price_case .price_case_item .price_case_text .price_case_contents p.price_case_detail span.date {
	display: block;
}
.price_case .price_case_item .price_case_text .price_case_contents p.price_case_detail span.price {
	display: inline-block;
	margin-right: 12px;
}

.price_case .bnr_odor {
	display: flex;
	justify-content: center;
	text-align: center;
	margin: 45px auto 0;
}
.price_case .bnr_odor a {
	width: calc(100%/2);
	display: block;
}

@media screen and (max-width: 1024px) {
	.price_case .inner {
		width: 94%;
		padding: 0;
	}
	.price_case .price_case_item {
		width: 620px;
		margin: 0 45px 0 0;
	}
}
@media screen and (max-width: 768px) {
	.price_case .inner {
		width: 90%;
		padding: 0;
	}
	.price_case .price_case_item {
		width: 610px;
		margin: 0 30px 0 0;
		padding: 150px 45px 60px;
	}
	.price_case .price_case_item .price_case_item_title span.price {
		font-size: 1.4em;
	}
	.price_case .price_case_item .price_case_text {
		margin: 30px 0 0;
	}
	.price_case .price_case_titlebox p.price_case_titleB_top {
		font-size: 1.3em;
	}
}
@media screen and (max-width: 560px) {
	.price_case .inner {
		width: 90%;
		padding: 0;
	}
	.price_case .price_case_title {
		font-size: 1.8em;
	}
	.price_case .price_case_title span.line {
		padding: 0 1.3rem;
	}
	.price_case .price_case_title span.line:before,
	.price_case .price_case_title span.line:after {
		height: 22px;
	}
	.price_case .price_case_item {
		width: 440px;
		margin: 0 30px 0 0;
		padding: 130px 30px 30px;
	}
	.price_case .price_case_item .price_case_item_title span.typetag {
		font-size: 1.1em;
	}
	.price_case .price_case_item .price_case_item_title span.price {
		font-size: 1.3em;
	}
	.price_case .price_case_item .price_case_text {
		margin: 30px 0 0;
	}
	.price_case .price_case_item .price_case_text .price_case_contents p.price_case_detail span.price {
		display: block;
		margin: 0;
	}
	
	.price_case .price_case_titlebox img.clover {
		width: 60px;
	}
	.price_case .price_case_titlebox p.price_case_titleB_top {
		font-size: 1.1em;
	}
	
	.price_case .bnr_odor {
		flex-direction: column;
	}
	.price_case .bnr_odor a {
		width: 100%;
	}
}
@media screen and (max-width: 430px) {
	.price_case .price_case_title {
		font-size: 1.4em;
	}
	.price_case .price_case_title span.line {
		padding: 0 1rem;
	}
	.price_case .price_case_title span.line:before,
	.price_case .price_case_title span.line:after {
		width: 3px;
		height: 20px;
	}
	.price_case .price_case_item {
		width: 92%;
		margin: 0 12px 0 0;
		padding: 100px 20px 20px;
	}
	.price_case .price_case_item .price_case_item_title span.typetag {
		font-size: 1em;
	}
	.price_case .price_case_item .price_case_item_title span.typetag span.area {
		display: block;
		margin-left: 0;
		padding-left: 8px;
	}
	.price_case .price_case_item .price_case_item_title span.price {
		font-size: 1.1em;
	}

}
@media screen and (max-width: 320px) {
	.price_case .price_case_title {
		font-size: 1.2em;
	}
	.price_case .price_case_item {
		width: 92%;
		margin: 0 10px 0 0;
		padding: 100px 20px 20px;
	}
	.price_case .price_case_item .price_case_item_title span.typetag span.area {
		font-size: .7em;
	}
	.price_case .price_case_item .price_case_item_title span.price {
		font-size: 1em;
	}
	.price_case .price_case_item .price_case_item_title span.price span.floor {
		display: inline-block;
		font-size: .7em;
	}
	.price_case .price_case_titlebox p.price_case_titleB_top {
		font-size: 1em;
	}
}


/****************************************
 * 固定ページ・投稿ページ共通
 * **************************************/

#title_hero {
	padding: 45px 0;
	background: url(images/title_image.webp) no-repeat;
	background-size: cover;
	background-position: center;
}

@media screen and (max-width: 560px) {
	#title_hero {
		background: url(images/title_image_sp.webp) no-repeat;
		background-size: cover;
		margin: 0;
	}
}
@media screen and (max-width: 430px) {
	#title_hero {
		padding: 30px;
	}
}

.summary {
	font-weight: bold;
	margin: 0 auto 60px;
	width: 800px;
}
p.name {
	text-align: right;
	margin-top: 45px;
}

@media screen and (max-width: 768px) {
	.summary {
		width: 100%;
	}
}
@media screen and (max-width: 560px) {
	.summary {
		margin: 0 auto 45px;
	}
}
@media screen and (max-width: 480px) {
	.summary {
		margin: 0 auto 30px;
	}
	p.name {
		margin-top: 30px;
	}
}
@media screen and (max-width: 320px) {
	.summary {
		margin: 0 auto 20px;
	}
	p.name {
		margin-top: 20px;
	}
}


/* チームで一括サポートも可能
* **************************************/

#alignment {
	    background: #E4FAF8;
    border-bottom: 18px solid #FFF;
}
#alignment .alignment_flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#alignment .alignment_flex .alignment_flex___img {
	max-width: 560px;
	width: 56%;
}
#alignment .alignment_flex .alignment_flex___text {
	max-width: calc(100% - 560px);
	width: 44%;
}
#alignment .alignment-text {
	font-size: 1.3em;
	font-weight: bold;
	background: #FFF;
	border-radius: 12px;
	padding: 45px;
	margin-top: -22px;
}


@media screen and (max-width: 960px) {
	#alignment .alignment_flex {
		flex-direction: column;
	}
	#alignment .alignment_flex .alignment_flex___img {
		order: 2;
		max-width: 100%;
		width: 100%;
		margin-top: 60px;
	}
	#alignment .alignment_flex .alignment_flex___img img {
		display: block;
		width: 70%;
		margin: 0 auto;
	}
	#alignment .alignment_flex .alignment_flex___text {
		order: 1;
		max-width: 100%;
		width: 100%;
	}
}
@media screen and (max-width: 560px) {
	#alignment .alignment_flex .alignment_flex___img {
		margin-top: 30px;
	}
	#alignment .alignment_flex .alignment_flex___img img {
		width: 100%;
	}
	#alignment .alignment-text {
		font-size: 1.2em;
		padding: 30px;
	}
}


/****************************************
 * サービスページで共通
*****************************************/

.head {
	padding: 60px 0;
	text-align: center;
	background: url(images/head_organize.webp) no-repeat;
	background-size: cover;
	background-position: bottom center;
}
.head.head_house {
	background: url(images/head_house.webp) no-repeat;
	background-size: cover;
	background-position: bottom center;
}
.head.head_organize {
	background: url(images/head_organize.webp) no-repeat;
	background-size: cover;
	background-position: bottom center;
}
.head.head_office {
	background: url(images/head_office.webp) no-repeat;
	background-size: cover;
	background-position: bottom center;
}
.head.head_odor {
	background: url(images/head_odor.webp) no-repeat;
	background-size: cover;
	background-position: bottom center;
}
.head.head_cleared {
	background: url(images/head_cleared.webp) no-repeat;
	background-size: cover;
	background-position: bottom center;
}
.head.head_cleaning img.discount {
	display: block;
	width: 1100px;
	margin: 18px auto 0;
}

@media screen and (max-width: 559px) {
	.head {
		padding: 60px 18px;
		background: url(images/head_sp_organize.webp) no-repeat;
		background-size: cover;
		background-position: bottom center;
	}
	.head.head_house {
		background: url(images/head_sp_house.webp) no-repeat;
		background-size: cover;
		background-position: bottom center;
	}
	.head.head_office {
		background: url(images/head_sp_office.webp) no-repeat;
		background-size: cover;
		background-position: bottom center;
	}
	.head.head_odor {
		background: url(images/head_sp_odor.webp) no-repeat;
		background-size: cover;
		background-position: bottom center;
	}
	.head.head_cleared {
		background: url(images/head_sp_cleared.webp) no-repeat;
		background-size: cover;
		background-position: bottom center;
	}
	
	/* 遺品整理・生前整理ページの地域割 */
	.head img.discount {
		margin-top: 12px;
	}
}
@media screen and (max-width: 430px) {
	.head {
		padding: 45px 12px;
	}
}


/* 問題
 * ***********************************/

.page_service {
	background: #E4FAF8;
	padding-top: 120px;
	padding-bottom: 0;
	border-top: 18px solid #FFF;
}
.page_service .page_service_flex {
	display: flex;
	background: #FFF;
	padding: 60px;
	border-radius: 24px 24px 0 0;
}
.page_service .page_service_flex .page_service_flex___left {
	width: calc(100% / 2 - 30px);
	margin-right: 30px;
}
.page_service .page_service_flex .page_service_flex___right {
	width: calc(100% / 2 - 30px);
	margin-left: 30px;
}
#cleaning .page_service .page_service_flex .page_service_flex___right {
	display: flex;
	align-items: center;
	flex-direction: column;
	font-weight: bold;
	font-size: 1rem;
}
#office .page_service .page_service_flex .page_service_flex___right,
#house .page_service .page_service_flex .page_service_flex___right {
	font-weight: bold;
	font-size: 1rem;
}
#cleaning .page_service .page_service_flex .page_service_flex___right .button_box {
	margin-top: 12px;
}
.page_service .page_service_flex .page_service_flex_img {
	text-align: center;
}
.page_service .page_service_flex .page_service_flex_img p.page_service_flex_title {
	text-align: center;
	margin-top: -90px;
}
.page_service .page_service_flex .page_service_flex_img p.page_service_flex_title span {
	display: inline-block;
	background: #21bfb2;
	color: #FFF;
	border-radius: 40px;
	padding: 9px 30px;
	font-size: 1.6rem;
	font-weight: bold;
	position: relative;
}
.page_service .page_service_flex .page_service_flex_img p.page_service_flex_title span img.page_service_fukidashi {
	position: absolute;
	left: -136px;
	top: -36px;
	z-index: 1;
}

.page_service .page_service_flex .page_service_flex_txt {
	margin-top: 30px;
	font-weight: bold;
	font-size: 1rem;
	line-height: 2;
	padding: 0 30px;
}
#cleaning .page_service_cleaning {
	background: #FFF;
	padding: 0 60px 60px;
	display: flex;
	align-items: stretch;
}
#cleaning .page_service_cleaning p.page_service_cleaning_title {
	width: 220px;
	font-weight: bold;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-right: 1px solid;
}
#cleaning .page_service_cleaning p {
	width: calc(100% - 220px);
	padding-left: 30px;
	font-size: 1rem;
}


@media screen and (max-width: 960px) {
	#cleaning .page_service_cleaning p.page_service_cleaning_title {
		width: 160px;
	}
	#cleaning .page_service_cleaning p {
    width: calc(100% - 160px);
	}
}
@media screen and (max-width: 834px) {
	.page_service .page_service_flex {
		padding: 45px;
		flex-direction: column;
	}
	.page_service .page_service_flex .page_service_flex___left,
	.page_service .page_service_flex .page_service_flex___right {
		width: 100%;
		margin: 0;
	}
	.page_service .page_service_flex .page_service_flex___right {
		margin-top: 30px;
	}
	#organize .page_service .page_service_flex .page_service_flex___right {
		margin-top: 120px;
	}
}
@media screen and (max-width: 768px) {
	#cleaning .page_service_cleaning p.page_service_cleaning_title {
		width: 120px;
	}
	#cleaning .page_service_cleaning p {
    width: calc(100% - 120px);
		font-size: .9rem;
	}
}
@media screen and (max-width: 560px) {
	.page_service .inner_wide {
		padding: 0;
	}
	.page_service .page_service_flex {
		padding: 60px 30px 30px;
		border-radius: 0;
	}
	.page_service .page_service_flex .page_service_flex_img p.page_service_flex_title span img.page_service_fukidashi {
		width: 90px;
		left: -96px;
	}
	
	#cleaning .page_service_cleaning {
    flex-direction: column;
		background: #fafafa;
		padding: 30px 30px 30px;
    border-top: 1px solid #999;
	}
	#cleaning .page_service_cleaning p.page_service_cleaning_title,
	#cleaning .page_service_cleaning p {
    width: 100%;
		padding: 0;
	}
	#cleaning .page_service_cleaning p.page_service_cleaning_title {
		display: block;
		text-align: left;
		border-right: none;
	}
}
@media screen and (max-width: 430px) {
	#office .page_service .page_service_flex .page_service_flex___right,
	#house .page_service .page_service_flex .page_service_flex___right {
		font-size: 1em;
	}
	.page_service .page_service_flex .page_service_flex_img p.page_service_flex_title span {
		font-size: 1.4rem;
	}
	.page_service .page_service_flex .page_service_flex_img p.page_service_flex_title span img.page_service_fukidashi {
		width: 90px;
		left: -46px;
		top: -80px;
		transform: rotate(5deg);
	}
	.page_service .page_service_flex .page_service_flex_txt {
		padding: 0;
    font-size: 1em;
	}
	
	#cleaning .page_service_cleaning p.page_service_cleaning_title {
		font-size: 1em;
	}
	#cleaning .page_service .page_service_flex .page_service_flex___right {
		font-size: 1em;
	}
}
@media screen and (max-width: 320px) {
	.page_service .page_service_flex {
		padding: 60px 20px 20px;
	}
	.page_service .page_service_flex .page_service_flex_img p.page_service_flex_title span {
		font-size: 1.1rem;
	}
	#cleaning .page_service_cleaning {
		padding: 30px 20px;
	}
}


/* サービス〜おまかせください
 * ***********************************/

.page_solution {
	padding-top: 0;
}
.page_solution .page_solution_outline {
	position: relative;
}
.page_solution .page_solution_title {
	line-height: 1;
	text-align: center;
	position: absolute;
	top: -145px;
	left: 0;
	right: 0;
	margin: auto;
}
.page_solution .page_solution_title span {
	display: inline-block;
	min-width: 990px;
	background: #8cc11f;
	color: #FFF;
	padding: 24px 30px;
	border-radius: 60px;
}
.page_solution .page_solution_title span:after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #8cc11f;
}
#office .page_solution .page_solution_title span {
	background: #204DBF;
}
#office .page_solution .page_solution_title span:after {
	border-top: 15px solid #204DBF;
}

.page_solution .page_solution_box {
		margin-top: 105px;
}
.page_solution .page_solution_box .page_solution_box_summary {
	font-weight: bold;
}
.page_solution .page_solution_flex {
	margin-top: 60px;
	display: flex;
	gap: 45px;
}
.page_solution .page_solution_flex .page_solution_flex_item {
	width: 100%;
}
.page_solution .page_solution_flex .page_solution_flex_item img {
	display: block;
	margin: 0 auto;
}
.page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_title {
	text-align: center;
	line-height: 1.6;
}
.page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_txt {}
.page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_txt p {
	font-weight: bold;
}
.page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_txt p b {
	color: #8cc11f;
}
#office .page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_txt p b {
	color: #204DBF;
}
#house .page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_txt p b {
	color: #F79902;
}

/* 遺品整理・生前整理ページの地域割 */
#organize .page_solution img.discount,
#single-posts img.discount { /* 事例のsingle */
	display: block;
	margin: 30px auto 0;
}

@media screen and (max-width: 1194px) {
	.page_solution .page_solution_title span {
		min-width: 100%;
	}
	.page_solution .page_solution_flex {
		gap: 42px;
	}
}
@media screen and (max-width: 960px) {
}
@media screen and (max-width: 834px) {
	.page_solution .page_solution_flex {
		flex-direction: column;
		margin-top: 30px;
	}
	.page_solution .page_solution_flex .page_solution_flex_item {
		width: 100%;
		display: flex;
    align-items: center;
		padding: 30px 0;
	}
	.page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_txt {
		padding-left: 45px;
	}
	.page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_title {
		margin: 0 0 12px;
	}
}
@media screen and (max-width: 560px) {
	.page_solution .page_solution_title span {
		font-size: 1.3rem;
		    line-height: 1.4;
		padding: 18px;
	}
	.page_solution .page_solution_flex .page_solution_flex_item {
		flex-direction: column;
		padding: 0;
		margin-top: 18px;
	}
	.page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_txt {
		padding: 0;
		margin-top: 18px;
	}
	
	/* 遺品整理・生前整理ページの地域割 */
	#organize .page_solution img.discount,
	#single-posts img.discount { /* 事例のsingle */
		margin: 12px auto 0;
	}
}
@media screen and (max-width: 430px) {
	.page_solution .page_solution_title span {
		font-size: 1.2rem;
	}
	.page_solution .page_solution_flex .page_solution_flex_item img {
		width: 150px;
	}
	.page_solution .page_solution_flex .page_solution_flex_item .page_solution_flex_item_txt p {
		font-size: 1em;
	}
}
@media screen and (max-width: 320px) {
	.page_solution .page_solution_flex .page_solution_flex_item img {
		width: 120px;
	}
}


/* 作業内容
 * ***********************************/

.page_works {
	background: #f7f8fa;
}
.page_works ul.page_works_list {
	list-style: none;
	margin: -15px 0 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}
.page_works ul.page_works_list li {
	width: calc(100%/2);
	margin-top: 30px;
}
.page_works ul.page_works_list.cleaning_works_list li {
	width: 100%;
	padding: 0 !important;
}
.page_works ul.page_works_list li:nth-child(odd) {
	padding-right: 15px;
}
.page_works ul.page_works_list li:nth-child(even) {
	padding-left: 15px;
}
.page_works ul.page_works_list li .page_works_flex {
	width: 100%;
	height: 100%;
	display: flex;
	background: #FFF;
}
.page_works ul.page_works_list li .page_works_flex .page_works_flex___img {
	overflow: hidden;
	width: 280px;
}
.page_works ul.page_works_list li .page_works_flex .page_works_flex___img img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.page_works ul.page_works_list li .page_works_flex .page_works_flex___txt {
	width: calc(100% - 280px);
	padding: 45px;
}
.page_works ul.page_works_list li .page_works_flex .page_works_flex___txt .page_works_title {
	margin: 0 0 12px 0;
	line-height: 1.4;
}
.page_works ul.page_works_list li .page_works_flex .page_works_flex___txt p {
	font-weight: bold;
	font-size: 1rem;
	line-height: 1.6;
}

@media screen and (max-width: 1194px) {
	.page_works ul.page_works_list {
		flex-direction: column;
	}
	.page_works ul.page_works_list li {
		width: 100%;
		padding: 0;
	}
	.page_works ul.page_works_list li:nth-child(odd),
	.page_works ul.page_works_list li:nth-child(even) {
		padding: 0;
	}
}
@media screen and (max-width: 960px) {
}
@media screen and (max-width: 834px) {
	.page_works ul.page_works_list li .page_works_flex .page_works_flex___img {
		width: 250px;
	}
	.page_works ul.page_works_list li .page_works_flex .page_works_flex___txt {
		width: calc(100% - 250px);
	}
}
@media screen and (max-width: 560px) {
	.page_works ul.page_works_list li .page_works_flex {
		flex-direction: column;
	}
	.page_works ul.page_works_list li .page_works_flex .page_works_flex___img {
		width: 100%;
	}
	.page_works ul.page_works_list li .page_works_flex .page_works_flex___txt {
		width: 100%;
		padding: 30px;
	}
}
@media screen and (max-width: 430px) {
	.page_works ul.page_works_list li .page_works_flex .page_works_flex___txt {
		padding: 20px;
	}
	.page_works ul.page_works_list li .page_works_flex .page_works_flex___txt .page_works_title {
		text-align: center;
	}
	.page_works ul.page_works_list li .page_works_flex .page_works_flex___txt p {
		font-size: 1em;
	}
}
@media screen and (max-width: 320px) {
	.page_works ul.page_works_list {
		margin-top: -18px;
	}
	.page_works ul.page_works_list li {
		margin-top: 18px;
	}
	.page_works ul.page_works_list li .page_works_flex {
		background: none;
	}
	.page_works ul.page_works_list li .page_works_flex .page_works_flex___txt {
		padding: 20px 0;
	}
}


/* 料金
 * ***********************************/

.page_price {
	background: #FAFEFD;
	
}

/* 遺品整理・生前整理ページの地域割 */
.page_price img.discount {
	display: block;
	margin: 30px auto 0;
}


/* 流れ
 * ***********************************/

.page_flow {
	background: #F3FAE4;
}
.page_flow ul.flow_list {
	width: 100%;
	list-style: none;
	padding: 0;
	margin: 0 0;
	background: #FFF;
}
.page_flow ul.flow_list li {
	width: 100%;
	display: flex;
	position: relative;
	border-bottom: 1px dashed #ededed;
}
.page_flow ul.flow_list li:last-child {
	border-bottom: none;
}
.page_flow ul.flow_list li .flow_step {
	background: #8cc11f;
	color: #FFF;
}
.page_flow ul.flow_list li a {
	display: inline-block;
}
.page-service .flow img {
	float: left;
}

.page_flow .flow_step {
	width: 75px;
	display: flex;
	justify-content: center;
	text-align: center;
}
.page_flow .flow_step p {
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-size: .9rem;
	font-weight: bold;
	line-height: 1.3;
}
.page_flow .flow_step p span {
	display: block;
	font-size: 1.6rem;
}
.page_flow .flow_img {
	overflow: hidden;
	width: 300px;
}
.page_flow .flow_img img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.page_flow .flow_txt {
	width: calc(100% - ( 75px + 300px ) );
	padding: 45px;
}
.page_flow .flow_txt .flow_title {
	margin: 0;
}
.page_flow .flow_txt .flow_title span {
	
}
.page_flow .flow_txt p.text {
	margin-top: 12px;
}


@media screen and (max-width: 834px) {
	.page_flow ul.flow_list li .flow_step {
		width: 60px;
	}
	.page_flow .flow_img {
		width: 250px;
	}
	.page_flow .flow_txt {
    width: calc(100% - ( 60px + 250px ) );
	}
}
@media screen and (max-width: 560px) {
	
	/* 遺品整理・生前整理ページの地域割 */
	.page_price img.discount {
		margin: 12px auto 0;
	}
	
	.page_flow ul.flow_list li {
		flex-direction: column;
	}
	.page_flow ul.flow_list li .flow_step {
		width: 90px;
		position: absolute;
	}
	.page_flow .flow_img {
		width: 100%;
	}
	.page_flow .flow_txt {
		width: 100%;
		padding: 30px;
	}

	.page_flow .flow_step p {
		padding: 6px 0;
		display: flex;
		flex-direction: row;
		align-items: center;
		font-size: .6rem;
	}
	.page_flow .flow_step p span {
		font-size: 1.3rem;
		margin-left: 12px;
	}
}
@media screen and (max-width: 430px) {
	.page_flow .flow_txt {
		padding: 20px;
	}
}


/****************************************
 * お家片づけ・不用品整理
 * **************************************/

.housecleaning {
	margin-top: 60px;
	background: #FEF3E1 url(images/house/housecleaning_bg.webp) no-repeat;
	background-size: cover;
	background-position: bottom center;
	position: relative;
}
.housecleaning img.housecleaning_woman {
	position: absolute;
	bottom: 0;
	right: 10%;
	z-index: 1;
}
.housecleaning .housecleaning_title {
	text-align: center;
	margin-top: -135px;
}
.housecleaning .housecleaning_box {
}
.housecleaning .housecleaning_txt {
	padding-left: 75px;
	font-weight: bold;
}
.housecleaning .housecleaning_img {
	margin-top: 30px;
}

@media screen and (max-width: 1194px) {
	.housecleaning .housecleaning_title {
		margin-top: -150px;
	}
	.housecleaning img.housecleaning_woman {
		right: 0;
	}
}
@media screen and (max-width: 960px) {
	.housecleaning img.housecleaning_woman {
		width: 380px;
	}
	.housecleaning .housecleaning_txt {
		padding-left: 30px;
	}
	.housecleaning .housecleaning_img {
		width: 550px;
	}
}
@media screen and (max-width: 834px) {
	.housecleaning .housecleaning_title {
		display: block;
		width: 650px;
		margin: -150px auto 0;
	}
	.housecleaning img.housecleaning_woman {
		width: 280px;
	}
	.housecleaning .housecleaning_box {
		margin-top: 45px;
	}
	.housecleaning .housecleaning_txt {
		padding-left: 0;
	}
}
@media screen and (max-width: 768px) {
	.housecleaning .housecleaning_title {
		width: 100%;
		margin: -110px auto 0;
	}
}
@media screen and (max-width: 560px) {
	.housecleaning {
		margin-top: 60px;
		background: #FEF3E1 url(images/house/housecleaning_bg_sp.webp) no-repeat;
		background-size: cover;
		background-position: bottom center;
	}
	.housecleaning .housecleaning_title {
		margin: -105px auto 0;
	}
	.housecleaning .housecleaning_img {
		width: 100%;
		margin-top: 220px;
		position: relative;
		z-index: 1;
	}
	.housecleaning img.housecleaning_woman {
		width: 450px;
		bottom: calc(100% - 20px);
		right: auto;
		left: 50%;
		transform: translateX(-50%);
		z-index: -1;
	}
}
@media screen and (max-width: 430px) {
	.housecleaning {
		margin-top: 30px;
	}
	.housecleaning .housecleaning_title {
		margin: -90px auto 0;
	}
	.housecleaning .housecleaning_img {
		margin-top: 150px;
	}
	.housecleaning img.housecleaning_woman {
		width: 300px;
	}
}
@media screen and (max-width: 380px) {
	.housecleaning .housecleaning_img {
		margin-top: 170px;
	}
	.housecleaning .housecleaning_box {
		margin-top: 30px;
	}
}
@media screen and (max-width: 320px) {
	.housecleaning .housecleaning_img {
		margin-top: 150px;
	}
	.housecleaning img.housecleaning_woman {
		width: 100%;
	}
}


/****************************************
 * 特殊清掃
 * **************************************/

#cleaning .deodorize .deodorize_box {
	display: flex;
	align-items: stretch;
	position: relative;
}
#cleaning .deodorize .deodorize_main {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
#cleaning .deodorize .deodorize_main .deodorize_txtarea {
	display: flex;
    align-items: center;
	position: relative;
	max-width: 1140px;
	width: 100%;
	height: 100%;
	margin: 0 auto;
}
#cleaning .deodorize .deodorize_main .deodorize_txtarea .deodorize_txt {
	width: 480px;
	margin-right: auto;
	font-weight: bold;
}
#cleaning .deodorize .deodorize_main .deodorize_txtarea .deodorize_title {
	text-align: left;
	line-height: 1.6;
	margin-bottom: 30px;
}
#cleaning .deodorize .deodorize_img {
	width: 100%;
}
#cleaning .deodorize .deodorize_img img {
	width: 48%;
	display: block;
	margin-left: auto;
}


.original_cleaning {
	margin-top: 90px;
	padding: 75px 60px 60px;
	border-radius: 24px;
	background: #F6F8FD;
	border: 3px solid #214FBA;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 20%);
}
.original_cleaning .original_cleaning_title {
	text-align: center;
	margin-top: -105px;
}
.original_cleaning .original_cleaning_title span {
	display: inline-block;
	background: #214FBA;
	color: #FFF;
	line-height: 1.4;
	padding: 12px 30px;
	border-radius: 60px;
}
.original_cleaning .original_cleaning_flex {
	display: flex;
}
.original_cleaning .original_cleaning_flex .original_cleaning_flex___img {
	width: 380px;
}
.original_cleaning .original_cleaning_flex .original_cleaning_flex___img img {
	border-radius: 12px;
}
.original_cleaning .original_cleaning_flex .original_cleaning_flex___txt {
	width: calc(100% - 380px);
	padding-left: 45px;
	font-weight: bold;
}
.original_cleaning .original_cleaning_flex .original_cleaning_flex___txt .button_box {
	margin-top: 30px;
}
.original_cleaning .original_cleaning_flex .original_cleaning_flex___txt a.original_cleaning_link {
	display: inline-block;
}
.original_cleaning .original_cleaning_flex .original_cleaning_flex___txt a.original_cleaning_link span {
	display: inline-block;
	background: #FFF;
	color: #214FBA;
	border: 1px solid #214FBA;
	padding: 12px 30px;
	border-radius: 60px;
	transition: all .3s;
}
.original_cleaning .original_cleaning_flex .original_cleaning_flex___txt a.original_cleaning_link:hover {
	opacity: 1;
}
.original_cleaning .original_cleaning_flex .original_cleaning_flex___txt a.original_cleaning_link:hover span {
	background: #214FBA;
	color: #FFF;
}


/* 作業時間*/
.cleaningtime {
	margin-top: 30px;
	padding: 45px;
	background: #20BFB2;
}
.cleaningtime .cleaningtime_box {
	color: #FFF;
	font-weight: bold;
	font-size: 1rem;
}
.cleaningtime .cleaningtime_title {
	margin: 0 0 12px;
	font-size: 1.1rem;
	font-weight: bold;
	color: #FAFEFD;
}
.cleaningtime u {
	color: yellow;
}

/*不動産*/
#cleaning .realestate {
	background-color: #FEFAFB;
	background-image: repeating-linear-gradient(-45deg, #fff, #fff 7px, transparent 0, transparent 14px);
}
#cleaning .realestate img.realestate_title {
	display: block;
	margin: 0 auto 30px;
}
#cleaning .realestate a.arrow {
	background: #bf1f4f;
}
#cleaning .realestate a.arrow:hover {
	opacity: .7;
}


@media screen and (max-width: 1194px) {
	#cleaning .deodorize {
		padding: 120px 0;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea {
		max-width: 1060px;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea .deodorize_txt {
		    width: 480px
	}
}
@media screen and (max-width: 960px) {
	#cleaning .deodorize {
		padding: 230px 0;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea {
		max-width: 820px;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea .deodorize_txt {
		    width: 390px
	}

	.original_cleaning .original_cleaning_flex .original_cleaning_flex___img {
		width: 280px;
	}
	.original_cleaning .original_cleaning_flex .original_cleaning_flex___txt {
		width: calc(100% - 280px);
	}
}
@media screen and (max-width: 834px) {
	#cleaning .deodorize {
		padding: 0;
	}
	#cleaning .deodorize .deodorize_box {
		flex-direction: column;
	}
	#cleaning .deodorize .deodorize_img {
		margin-top: 380px;
	}
	#cleaning .deodorize .deodorize_img img {
		width: 100%;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea {
		flex-direction: column;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea {
		max-width: max-content;
		padding: 0 60px;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea .deodorize_txt {
		width: 100%;
		background: #FFF;
		padding: 45px;
	}
	
	.original_cleaning { 
		padding: 75px 45px 45px;
	}
}
@media screen and (max-width: 768px) {
	#cleaning .problem {
		padding: 0;
	}
	#cleaning .diagonal {
		padding: 45px;
	}
	#cleaning .problem ul {
		width: 100%;
	}
	#cleaning .problem .more {
		padding: 30px 30px 0 30px;
	}
	#cleaning .works {
		padding: 60px 0;
	}
	#cleaning .solution {
		padding: 0 0 60px;
	}
	#cleaning .solution_box {
		padding: 75px 0 0;
	}
	#cleaning .solution_title {
		top: -25px;
	}
	#cleaning .professional {
		padding: 60px 0;
	}
	#cleaning .professional_box img.toodor_button {
		top: 30px;
	}
	#cleaning .works ul.works_point li {
		width: 100%;
		padding: 0 !important;
	}
}
@media screen and (max-width: 559px) {
	#cleaning .problem {
		padding: 0 0 45px;
	}
	#cleaning .deodorize .deodorize_main {
		position: static;
		margin-top: 30px;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea .deodorize_title {
		text-align: center;
	}
	#cleaning .deodorize .deodorize_img {
		margin: 0;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea {
		padding: 0 30px;
	}
	#cleaning .deodorize .deodorize_main .deodorize_txtarea .deodorize_txt {
		padding: 0 0 30px;
	}

	/*消臭技術*/
	.original_cleaning {
		padding: 75px 30px 30px;
	}
	.original_cleaning .original_cleaning_flex {
		flex-direction: column;
	}
	.original_cleaning .original_cleaning_flex .original_cleaning_flex___img,
	.original_cleaning .original_cleaning_flex .original_cleaning_flex___txt {
		width: 100%;
		padding: 0;
	}
	.original_cleaning .original_cleaning_flex .original_cleaning_flex___txt {
		margin-top: 18px;
	}
	
	/*作業時間*/
	.cleaningtime {
		padding: 30px;
	}

}
@media screen and (max-width: 430px) {
	#cleaning .problem {
		padding: 0;
	}
	
	/*消臭技術*/
	.original_cleaning {
		padding: 45px 20px 20px;
	}
	.original_cleaning .original_cleaning_title {
		position: relative;
		top: -80px;
		margin-top: 0px;
	}
	.original_cleaning .original_cleaning_title span {
		padding: 12px;
		width: calc(100% + 4em);
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		font-size: 1.2rem;
	}
	
	/*作業時間*/
	 .cleaningtime {
		position: relative;
	}
	 .cleaningtime .original_cleaning_title {
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
		font-size: 1.1rem;
	}
	 .cleaningtime .original_cleaning_title span {
		padding: 12px 1em;
		width: 100%;
	}
	.cleaningtime .cleaningtime_box {
		font-size: 1em;
	}
}
@media screen and (max-width: 380px) {
	/*消臭技術*/
	.original_cleaning .original_cleaning_title span {
		font-size: 1rem;
	}
}
@media screen and (max-width: 320px) {
	/*消臭技術*/
	.original_cleaning {
		background: none;
		border: none;
		box-shadow: none;
		padding: 60px 0 0;
	}
	.original_cleaning .original_cleaning_title {
		font-size: .9rem;
	}
	.original_cleaning .original_cleaning_title span {
		width: 100%;
	}

	/*作業時間*/
	.cleaningtime {
		padding: 20px;
	}
}


/****************************************
 * 腐敗臭に対する取組
 * **************************************/

#odor .odor_box {
	margin: 60px auto 0;
}
#odor .odor_box .top_title {
	text-align: center;
}
#odor .odor_box .top_title.under_stripe:after {
	left: 50%;
	transform: translateX(-50%);
}
#odor .odor_flex {
	display: flex;
}
#odor .odor_flex .odor_flex__img {
	max-width: 500px;
	width: 46%;
}
#odor .odor_flex .odor_flex__img figure {
	line-height: 1.5;
	font-size: 1rem;
	font-weight: 500;
	text-align: center;
	margin: 0;
	color: #000;
}
#odor .odor_flex .odor_flex__text {
	width: 55%;
	max-width: 580px;
	padding-left: 45px;
}
#odor .odor_flex .odor_flex__text p.sup {
	font-size: .9em;
	color: #666;
}
#odor .odor_flex_bottom {
	margin: 30px auto 0;
	padding: 0 60px;
}

#odor .odor_measurement {
	margin: 45px 0 0;
}
#odor .odor_measurement .odor_measurement_title {
	text-align: center;
}
#odor .odor_flex2 {
	margin: 45px 0 0;
	display: flex;
}
#odor .odor_flex2 .odor_flex2__img {
	width: 62%;
	max-width: 680px;
}
#odor .odor_flex2 .odor_flex2__img figure {
	line-height: 1.5;
	font-size: 1rem;
	font-weight: 500;
	text-align: center;
	margin: 0;
	color: #000;
}
#odor .odor_flex2 .odor_flex2__text {
	width: 40%;
	max-width: 430px;
	padding-left: 45px;
}

@media screen and (max-width: 834px) {
	#odor .odor_flex_bottom {
		padding: 0;
	}
	#odor .odor_flex2 {
		flex-direction: column;
	}
	#odor .odor_flex2 .odor_flex2__img {
		width: 100%;
		max-width: 100%;
	}
	#odor .odor_flex2 .odor_flex2__text {
		width: 100%;
		max-width: 100%;
		margin-top: 30px;
        padding: 0;
	}
}
@media screen and (max-width: 768px) {
	#odor .odor_flex {
		flex-direction: column;
	}
	#odor .odor_flex .odor_flex__img,
	#odor .odor_flex .odor_flex__text {
		width: 100%;
		max-width: 100%;
	}
	#odor .odor_flex .odor_flex__text {
		margin: 30px auto 0;
		padding: 0;
	}
}
@media screen and (max-width: 560px) {
	#odor .odor_box {
		margin: 45px auto 0;
	}
	#odor .odor_flex .odor_flex__text {
		padding: 0;
	}
	#odor .odor_flex_bottom {
		padding: 0;
	}
	
	#odor .odor_flex2 .odor_flex2__text {
		padding: 0;
	}
}
@media screen and (max-width: 430px) {
	#odor .odor_box,
	#odor .odor_flex .odor_flex__text,
	#odor .odor_flex2 .odor_flex2__text {
		margin: 30px auto 0;
	}
}


#odor .point .point_box {
	padding: 60px;
}
#odor .point_summary {
	background: url(images/odor/point_summary_bg.webp) no-repeat;
	background-position: left -650px top;
	background-size: cover;
}
#odor .point_summary .point_summary_box {
	margin: 0 0 0 50%;
	font-weight: bold;
}
#odor .point_summary .point_summary_box img.point_summary_text {
	margin-bottom: 30px;
}


#odor .cleaning_cases_box {
	overflow: hidden;
	margin-top: 60px;
}
#odor .cleaning_cases_title {
	display: inline-block;
	margin-bottom: 30px;
}
#odor .cleaning_cases_title .cleaning_cases_title_h4 {
	display: inline-block;
	vertical-align: middle;
	padding-left: 30px;
	font-weight: bold;
	color: #246dbb;
}
#odor .cleaning_cases_title .cleaning_cases_title_h4 span {
	margin-left: 10px;
}
#odor .cleaning_cases ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	gap: 18px;
}
#odor .cleaning_cases ul li {
	width: 100%;
	position: relative;
}
#odor .cleaning_cases ul li p.text {
	font-size: .8em;
	margin-top: 10px;
	padding: 0 10px;
}
#odor .cleaning_cases ul li p.text span {
	font-weight: bold;
}
#odor .cleaning_cases ul li:after {
	text-align: center;
	font-family: "NotoSansJP", sans-serif;
	position: absolute;
	top: 0;
	left: 0;
	background: #246dbb;
	color: #FFF;
	width: 30px;
	display: inline-block;
}
#odor .cleaning_cases ul li:first-child:after {
	content: "1";
}
#odor .cleaning_cases ul li:nth-child(2):after {
	content: "2";
}
#odor .cleaning_cases ul li:nth-child(3):after {
	content: "3";
}
#odor .cleaning_cases ul li:nth-child(4):after {
	content: "4";
}
#odor .cleaning_cases ul li:nth-child(5):after {
	content: "5";
}
#odor .cleaning_cases ul li:nth-child(6):after {
	content: "6";
}
#odor .cleaning_cases ul li:nth-child(7):after {
	content: "7";
}
#odor .cleaning_cases ul li:nth-child(8):after {
	content: "8";
}
#odor .cleaning_cases ul li img {
	width: 100%;
}
#odor .cleaning_cases ul.big {
	display: flex;
	flex-wrap: wrap;
}
#odor .cleaning_cases ul.big li {
	width: 100%;
    max-width: 250px;
	position: relative;
}

@media screen and (max-width: 1194px) {
	#odor .point_summary {
		background-position: left -500px center;
	}
	#odor .cleaning_cases ul li {
	}
	#odor .cleaning_cases ul.big li {
		max-width: 255px;
	}
}
@media screen and (max-width: 960px) {
	#odor .point_summary {
		background-position: left -260px center;
	}
	#odor .point_summary .point_summary_box {
		margin: 0 0 0 40%;
	}
}
@media screen and (max-width: 864px) {
	#odor .point_summary {
		background-position: left -460px center;
	}
}
@media screen and (max-width: 768px) {
	#odor .point .point_box {
		padding: 30px 0 0;
	}
	#odor .point_summary {
		background-position: left -440px center;
	}
	#odor .point_summary .point_summary_box {
		margin: 0 0 0 20%;
	}
	#odor .point_summary .point_summary_box img.point_summary_text {
		padding: 0 30px;
	}
	#odor .cleaning_cases_title .cleaning_cases_title_h4 {
		width: 400px;
		line-height: 1.3;
	}
	#odor .cleaning_cases ul img,
	#odor .cleaning_cases ul.big img {
		width: 100%;
	}
	#odor .cleaning_cases ul li,
	#odor .cleaning_cases ul.big li {
		width: calc(50% - 9px);
        max-width: 50%;
	}
	#odor .cleaning_cases ul li p.text {
		font-size: .9em;
	}
}
@media screen and (max-width: 559px) {
	#odor .point .point_box {
		padding: 0;
		margin-top: 30px;
	}
	#odor .point_summary {
		background: url(images/odor/point_summary_bg_sp.webp) no-repeat;
		background-position: left -150px center;
		background-size: cover;
	}
	#odor .point_summary .point_summary_box {
		margin: 0;
	}
	#odor .cleaning_cases_box {
		margin-top: 45px;
	}
	#odor .cleaning_cases_title .cleaning_cases_title_h4 {
		width: 100%;
		padding: 0;
		margin-top: 12px;
	}
	#odor .cleaning_cases ul li p.text {
		padding: 0;
	}
}
@media screen and (max-width: 430px) {
	#odor .point_summary {
		background: url(images/odor/point_summary_bg_sp.webp) no-repeat;
		background-position: left -120px center;
		background-size: cover;
	}

	#odor .cleaning_cases_box {
		margin-top: 30px;
	}
	#odor .cleaning_cases_box img.cases_title {
		width: 160px;
	}
}


/****************************************
 * 固定ページ：生前整理
 * page-decluttering.php
*****************************************/

#decluttering .service_box .gray-box {
	background: #ededed url(images/organize/ihinseiritoha.jpg) no-repeat;
	background-size: 190px;
	background-position: left center;
	font-size: .9em;
	padding: 30px 30px 30px 220px;
}

#decluttering .problem {
	padding: 0 60px 60px;
}
#decluttering .problem ul {
	width: 720px;
	list-style: none;
	padding: 0;
	margin: 0 auto 30px;
}
#decluttering .problem ul li {
	background: #FFFBD4;
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 5px;
	position: relative;
	padding: 10px 10px 10px 45px;
}
#decluttering .problem ul li:before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 20px;
    top: 17px;
    width: 6px;
    height: 25px;
    background: #FFEB3D;
    border-radius: 5px;
}

#decluttering .solution {
	background: #F3FAE4;
	padding: 0 0 90px;
}
#decluttering .solution_outline {
	position: relative;
}
#decluttering .solution_title {
	line-height: 1;
	text-align: center;
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    margin: auto;
}
#decluttering .solution_title span {
	display: inline-block;
	background: #8cc11f;
	color: #FFF;
	padding: 16px 120px;
	border-radius: 4px;
}
#decluttering .solution_title span:after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #8cc11f;
}
#decluttering .solution_box {
	padding: 90px 60px 0;
}

#decluttering .solution_description {
	background: #FFF;
	padding: 60px;
	border-radius: 12px;
	margin-top: 60px;
}
#decluttering .solution_description_box {
	overflow: hidden;
	margin-top: 45px;
}
#decluttering .solution_description_box .description_title,
#decluttering .works .works_title {
	text-align: left;
	font-weight: bold;
	margin: 0 0 15px;
	font-size: 1.1em;
	line-height: 1.3;
}
#decluttering .solution_description_box img {
	float: left;
}
#decluttering .solution_description_text {
	padding-left: 260px;
}
#decluttering .hoarding_house {
	padding: 90px 0;
	background: #ededed url(images/decluttering/hoarding_house_bg.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
#decluttering .hoarding_house ul.example {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
}
#decluttering .hoarding_house ul.example li {
	color: #FFF;
	background: #f26360;
	display: inline-block;
	padding: 5px 30px;
	margin: 0 8px;
	font-size: 1.1em;
	font-weight: bold;
	border-radius: 4px;
}
#decluttering .hoarding_house ul.example li:last-child {
	margin: 0 0 0 8px;
}
#decluttering .hoarding_house_msg {
	margin-top: 30px;
	padding: 60px;
	background: #FFF;
}
#decluttering .forwoman .forwoman_title {
	color: #FFF;
	background: #f26360 url(images/decluttering/forwoman_bg.png) no-repeat;
	background-position: center;
	background-size: cover;
	margin: 0;
	padding: 15px 0;
	text-align: center;
	font-weight: bold;
	font-size: 1.1em;
	line-height: 1.3;
}
#decluttering .forwoman .forwoman_box {
	background: #FDECEC;
	padding: 30px 260px 30px 60px;
	text-align: left;
	position: relative;
}
#decluttering .forwoman .forwoman_box img.forwoman_button {
	position: absolute;
	right: 60px;
	top: -10px;
}

#decluttering .works {
	background: #f7f8fa;
	padding: 100px 0;
}
#decluttering .works ul.works_point {
	list-style: none;
	margin: 0;
	padding: 0;
}
#decluttering .works ul.works_point li {
	margin-top: 30px;
}
#decluttering .works ul.works_point li .works_box {
	overflow: hidden;
	background: #FFF;
}
#decluttering .works ul.works_point li .works_box img {
	float: left;
	width: 250px;
}
#decluttering .works .works_box .works_text {
	padding: 30px 30px 30px 280px;
}
#decluttering .works .works_box .works_text p {
	line-height: 1.6;
}
#decluttering .works .days {
	margin-top: 30px;
}
#decluttering .works .days_box {
	padding: 60px;
	border: 5px solid #FFF;
	background: rgba(255,255,255,.5);
}
#decluttering .works .days .days_title {
	margin: 0 0 15px;
	font-size: 1.1em;
	font-weight: bold;
	border-bottom: 1px solid #ededed;
}

@media screen and (max-width: 768px) {
	#decluttering .problem ul {
		width: 100%;
	}
	#decluttering .solution,
	#decluttering .works {
		padding: 60px 0;
	}
	#decluttering .solution {
		padding: 0 0 60px;
	}
	#decluttering .solution_box {
		padding: 75px 0 0;
	}
	#decluttering .solution_title {
		top: -25px;
	}
	#decluttering .hoarding_house {
		padding: 60px 0;
	}
	#decluttering .forwoman .forwoman_box img.forwoman_button {
		top: 30px;
	}
	#decluttering .works ul.works_point li {
		width: 100%;
		padding: 0 !important;
	}
}
@media screen and (max-width: 560px) {
	#decluttering .problem {
		padding: 0 0 45px;
	}
	#decluttering .solution,
	#decluttering .works {
		padding: 45px 0;
	}
	#decluttering .solution_title {
		top: -65px;
	}
	#decluttering .solution_title span {
		padding: 16px 15px;
	}
	#decluttering .solution_box {
		padding: 45px 0 0;
	}
	#decluttering .solution_description {
		padding: 45px;
		margin-top: 45px;
	}
	#decluttering .solution_description_box img {
		width: 120px;
	}
	#decluttering .solution_description_text {
		padding-left: 150px;
	}
	#decluttering .hoarding_house {
		padding: 45px 0;
		background: #ededed url(images/decluttering/hoarding_house_bg_sp.jpg) no-repeat;
		background-size: cover;
		background-position: center;
	}
	#decluttering .hoarding_house ul.example li {
		padding: 5px 20px;
	}
	#decluttering .hoarding_house_msg {
		padding: 45px;
	}
	#decluttering .forwoman .forwoman_title {
		background: #f26360 url(images/decluttering/forwoman_bg_sp.png) no-repeat;
		background-position: center;
		background-size: cover;
	}
	#decluttering .forwoman .forwoman_box {
		padding: 30px 30px 180px 30px;
	}
	#decluttering .works ul.works_point li .works_box img {
		width: 200px;
	}
	#decluttering .forwoman .forwoman_box img.forwoman_button {
		top: unset;
		bottom: 30px;
		left: 0;
		right: 0;
		margin: auto;
	}
	#decluttering .works .works_box .works_text {
		padding: 28px 28px 28px 220px;
	}
}
@media screen and (max-width: 480px) {
	#decluttering .problem {
		padding: 0 0 30px;
	}
	#decluttering .solution,
	#decluttering .works {
		padding: 30px 0;
	}
	#decluttering .solution_description {
		padding: 30px;
		margin-top: 30px;
	}
	#decluttering .solution_description_box img {
		width: 100px;
	}
	#decluttering .solution_description_text {
		padding-left: 130px;
	}
	#decluttering .hoarding_house {
		padding: 30px 0;
	}
	#decluttering .hoarding_house ul.example li {
		padding: 8px 14px;
	}
	#decluttering .hoarding_house_msg {
		padding: 30px;
	}
	#decluttering .works ul.works_point li .works_box img {
		width: 200px;
		margin-left: -40px;
	}
	#decluttering .works .works_box .works_text {
		padding: 25px 25px 25px 180px;
	}
}
@media screen and (max-width: 430px) {
	#decluttering .solution_description_box img {
		float: none;
		display: block;
		width: 120px;
		margin: 0 auto;
	}
	#decluttering .solution_description_text {
		padding: 30px 0 0;
	}
	#decluttering .hoarding_house ul.example li {
		width: calc(100%/2 - 30px);
		margin: 5px 0 0;
	}
	#decluttering .hoarding_house ul.example li:last-child {
		margin: 5px 0 0;
	}
	#decluttering .forwoman .forwoman_box {
		padding: 30px 30px 150px 30px;
	}
	#decluttering .forwoman .forwoman_box img.forwoman_button {
		width: 130px;
	}
	#decluttering .works .works_box .works_text {
		float: none;
		margin-top: 30px;
		padding: 0 30px 30px 30px;
	}
	#decluttering .works ul.works_point li .works_box img {
		float: none;
		width: 100%;
		display: block;
		margin: -200px 0 0;
	}
}
@media screen and (max-width: 380px) {
	#decluttering .hoarding_house ul.example li {
		width: calc(100%/2 - 5px);
		margin: 5px 0 0;
	}
}
@media screen and (max-width: 320px) {
	#decluttering .solution_description {
		padding: 20px;
		margin-top: 20px;
	}
	#decluttering .works .works_box .works_text {
		padding: 0 20px 20px 20px;
	}
	#decluttering .works ul.works_point li .works_box img {
		margin: -80px 0 0;
	}
	#decluttering .hoarding_house_msg {
		padding: 20px;
	}
	#decluttering .forwoman .forwoman_title {
		font-size: 1em;
		padding: 20px 10px;
	}
	#decluttering .forwoman .forwoman_box {
		padding: 20px 20px 160px 20px;
	}
}


/****************************************
 * 固定ページ：片付けた物の行方
 * page-cleared.php
*****************************************/

#cleared .introduction {
	text-align: center;
	font-weight: bold;
}
#cleared .issue {
	background: #fafafa;
}
#cleared .issue .issue_title {
	border-top: 1px solid;
	border-bottom: 1px solid;
	color: #bc204c;
	padding: 20px;
	margin: 0 0 60px;
}
#cleared .issue .issue_box {
	background: #FFF url(images/cleared/issue_box_bg.webp) no-repeat;
	background-position: bottom;
	background-size: contain;
	padding: 60px 60px 320px;
	border-radius: 10px;
	font-weight: bold;
}

#cleared .whereabout {
	background: #FFF;
}
#cleared .whereabout .comment {
	text-align: center;
	margin-bottom: 60px;
}
#cleared .whereabout .whereabout_flex {
	display: flex;
	align-items: center;
}
#cleared .whereabout .whereabout_flex .whereabout_flex___img {
	width: 540px;
}
#cleared .whereabout .whereabout_flex .whereabout_flex___txt {
	width: calc(100% - 540px);
}
#cleared .whereabout .whereabout_flex table.whereabout_classification {
	width: 100%;
}
#cleared .whereabout .whereabout_flex table.whereabout_classification,
#cleared .whereabout .whereabout_flex table.whereabout_classification tr,
#cleared .whereabout .whereabout_flex table.whereabout_classification th,
#cleared .whereabout .whereabout_flex table.whereabout_classification td {
	border-collapse: collapse;
}
#cleared .whereabout .whereabout_flex table.whereabout_classification tr:not(:first-child){
	border-top: 6px solid #FFF;
}
#cleared .whereabout .whereabout_flex table.whereabout_classification th {
	background: #bc204c;
	color: #FFF;
	width: 220px;
	padding: 30px;
}
#cleared .whereabout .whereabout_flex table.whereabout_classification td {
	width: calc(100% - 220px);
	padding: 30px;
}
#cleared .whereabout .whereabout_flex table.whereabout_classification td p.classification {
	font-weight: bold;
	margin: 0 0 12px;
}
#cleared .whereabout .whereabout_flex table.whereabout_classification td span.sort {
	display: block;
}
#cleared .whereabout .whereabout_flex table.whereabout_classification td span.sort {
	padding-left: 26px;
	position: relative;
}
#cleared .whereabout .whereabout_flex table.whereabout_classification td span.sort:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url(images/common/icon_arrowRed.png) no-repeat;
	background-size: 100%;
	width: 18px;
	height: 18px;
}

#cleared .promise {
	background: #FFF url(images/cleared/promise_bg.webp) no-repeat;
	background-position: center;
	background-size: cover;
}
#cleared .promise .promise_box {
	width: 600px;
}
#cleared .promise .promise_box .promise_txt {
	margin-top: 45px;
	font-family: serif;
}

@media screen and (max-width: 1194px) {
	#cleared .whereabout .whereabout_flex .whereabout_flex___img {
		width: 400px;
	}
	#cleared .whereabout .whereabout_flex .whereabout_flex___txt {
		width: calc(100% - 400px);
	}
	#cleared .whereabout .whereabout_flex table.whereabout_classification th {
		width: 150px;
		padding: 30px;
	}
	#cleared .whereabout .whereabout_flex table.whereabout_classification td {
		width: calc(100% - 150px);
	}
}
@media screen and (max-width: 960px) {
	#cleared .whereabout .whereabout_flex .whereabout_flex___img {
		width: 340px;
	}
	#cleared .whereabout .whereabout_flex .whereabout_flex___txt {
		width: calc(100% - 340px);
	}
}
@media screen and (max-width: 768px) {
	#cleared .whereabout .whereabout_flex {
		flex-direction: column;
	}
	#cleared .whereabout .whereabout_flex .whereabout_flex___img {
		width: 100%;
	}
	#cleared .whereabout .whereabout_flex .whereabout_flex___txt {
		width: 100%;
		margin-top: -120px;
	}
	#cleared .whereabout .whereabout_flex table.whereabout_classification {
		background: #FFF;
	}
}
@media screen and (max-width: 560px) {
	#cleared .issue .issue_title {
		line-height: 1.4;
		margin: 0 0 45px;
		padding: 20px 0;
	}
	#cleared .issue .issue_box {
		background: #FFF url(images/cleared/issue_box_bg_sp.webp) no-repeat;
		background-position: bottom;
		background-size: contain;
		padding: 30px 30px 150px;
	}
	#cleared .whereabout .comment {
		margin-bottom: 45px;
	}
	#cleared .whereabout .whereabout_flex .whereabout_flex___img {
		width: 400px;
	}
	#cleared .whereabout .whereabout_flex .whereabout_flex___txt {
		margin-top: -90px;
	}
	#cleared .promise {
		width: 100%;
		background: url(images/cleared/promise_bg_sp.webp) no-repeat;
		background-size: cover;
		background-position: center right;
	}
	#cleared .promise .promise_box {
		width: 100%;
		padding-right: 120px;
	}
}
@media screen and (max-width: 430px) {
	#cleared .issue .issue_box {
		padding: 20px 20px 120px;
	}
	#cleared .whereabout .comment {
		margin-bottom: 30px;
	}
	#cleared .whereabout .whereabout_flex .whereabout_flex___img {
		width: 320px;
	}
	#cleared .whereabout .whereabout_flex .whereabout_flex___txt {
		margin-top: 0;
	}
	#cleared .whereabout .whereabout_flex table.whereabout_classification th {
		width: 105px;
		padding: 20px 9px;
	}
	#cleared .whereabout .whereabout_flex table.whereabout_classification td {
		width: calc(100% - 105px);
		padding: 20px;
	}
	#cleared .promise .promise_box {
		padding-right: 0;
	}
	#cleared .promise .promise_box .promise_txt {
		font-weight: bold;
	}
}
@media screen and (max-width: 380px) {
	#cleared .whereabout .whereabout_flex table.whereabout_classification th,
	#cleared .whereabout .whereabout_flex table.whereabout_classification td {
		display: block;
		width: 100%;
	}
	#cleared .whereabout .whereabout_flex table.whereabout_classification th {
		padding: 12px;
	}
	#cleared .whereabout .whereabout_flex table.whereabout_classification td {
				padding: 12px 0;
		}
}
@media screen and (max-width: 320px) {
	#cleared .whereabout .whereabout_flex .whereabout_flex___img {
		width: 260px;
	}
	#cleared .issue .problem_box {
		padding: 20px 20px 160px;
	}
}

/****************************************
 * 会社案内 
 * **************************************/

#company .company_box {
	margin-top: 150px;
}

#company #greeting {
	margin-top: 0;
	margin-bottom: 60px;
}
#company #greeting .greeting_flex {
	display: flex;
	justify-content: space-between;
}
#company #greeting .greeting_flex .greeting_flex___photo {
	max-width: 320px;
	width: 29%;
}
#company #greeting .greeting_flex .greeting_flex___msg {
	max-width: 780px;
	width: 70%;
	padding: 60px;
	margin-top: 60px;
	background: #FDFEFA;
	font-family: serif;
}

#company #about table {
	table-layout: fixed;
	width: 100%;
	margin: 0 auto 30px;
}
#company #about table tr {
	display: table;
	width: 100%;
	margin-top: 12px;
}
#company #about table tr:first-child {
	margin-top: 0;
}
#company #about table th {
	display: table-cell;
	width: 30%;
	text-align: center;
	font-weight: normal;
	background: #fafafa;
	padding: 18px 18px 18px 18px;
}
#company #about table td {
	display: table-cell;
	padding: 18px 18px 18px 32px;
	border-left: 1px solid #8cc11f;
}
#company #about table td span {
	display: block;
	font-size: .9rem;
}
#company #about table td p.branch {
	margin-top: 15px;
}
#company #about table td p.branch .area {
	
}
#company #about table td .appointment {
	background: #fafafa;
    border-radius: 3px;
    padding: 20px;
    margin-top: 10px;
	font-size: .9em;
}
#company #about table td p.appointment_title {
	font-weight: bold;
    margin: 0 0 10px;
    background: #1e6dbf;
    color: #FFF;
    padding: 0 10px;
    display: inline-block;
    border-radius: 3px;
}
#company #about table td p.appointment_text {
	
}
#company #about a.office-contact {
	display: block;
	color: #5FB2CD;
}

#company #map {
	text-align: center;
	padding-bottom: 90px;
}
#company #map .map_title {
	margin-bottom: 30px;
}
#company #map div {
	margin-top: 60px;
}

@media screen and (max-width: 768px) {
	#company #greeting .greeting_flex {
		display: block;
	}
	#company #greeting .greeting_flex .greeting_flex___photo {
		float: left;
		margin: 0 32px 22px 0;
	}
	#company #greeting .greeting_flex .greeting_flex___msg {
		max-width: 100%;
		width: 100%;
		padding: 0;
	}
	
	#company table {
		width: 100%;
	}
	#company #map {
		padding-bottom: 75px;
	}
}
@media screen and (max-width: 560px) {
	#company .company_box {
		margin-top: 90px;
	}
	#company #greeting .greeting_flex {
		flex-direction: column;
	}
	#company #greeting .greeting_flex .greeting_flex___photo {
		float: none;
		max-width: 280px;
		margin: 0 auto;
	}
	#company #greeting .greeting_flex .greeting_flex___photo,
	#company #greeting .greeting_flex .greeting_flex___msg {
		width: 100%;
	}
	#company #greeting .greeting_flex .greeting_flex___msg {
		margin-top: 30px;
		padding: 30px;
	}
	
	#company #about table tr,
	#company #about table th,
	#company #about table td {
		display: block;
		width: 100%;
		text-align: left;
	}
	#company #about table th {
		padding: 12px 12px 12px 18px;
		border-left: 2px solid #8cc11f;
	}
	#company #about table td {
		padding: 12px 12px 12px 18px;
		border-left: none;
	}
	
	#company #map {
		padding-bottom: 60px;
	}
	#company #map div iframe {
		height: 380px;
	}
}
@media screen and (max-width: 430px) {
	#company #greeting .greeting_flex .greeting_flex___msg {
		padding: 20px;
	}
}
@media screen and (max-width: 380px) {
	#company .company_box {
		margin-top: 60px;
	}
	#company #greeting .greeting_flex .greeting_flex___photo {
		max-width: 220px;
	}
	#company #map div iframe {
		height: 320px;
	}
}
@media screen and (max-width: 320px) {
	#company .company_box {
		margin-top: 45px;
	}
	#company #map {
		padding-bottom: 45px;
	}
}



/****************************************
 * 安全対策・資格保有への取り組み 
 * **************************************/

#safety {
	
}
#safety #greeting {
	margin-top: 0;
}
#safety #greeting .greeting-main {
	position: relative;
}
#safety #greeting .greeting-main .greeting-main-text {
	max-width: 1045px;
	width: 95%;
	padding: 60px 60px 60px 14vw;
	margin: 60px 0 0 auto;
	background: #E4FAF8;
	border-radius: 24px;
}
#safety #greeting .greeting-main .greeting-main-text-title {
	text-align: left;
	font-size: 1.6rem;
}
#safety #greeting .greeting-main p.img {
	max-width: 220px;
	width: 20%;
	position: absolute;
	top: -50px;
    left: 0;
}

#safety #safety-qualification {
	margin: 90px 0;
}
#safety #safety-qualification ul.safety-qualification-list {
	margin: 0;
	border-bottom: 1px solid #ededed;
}
#safety #safety-qualification ul.safety-qualification-list li {
	display: flex;
	align-items: flex-start;
	padding: 38px 0;
    border-top: 1px solid #ededed;
}
#safety #safety-qualification .certificate-img {
	overflow: hidden;
	max-width: 480px;
	width: 45%;
	border-radius: 24px;
	box-shadow: 0 0 12px 0 rgb(19 71 52 / 14%);
}
#safety #safety-qualification .certificate-img p.certificate-name {
	background: #FFF;
	padding: 6px 18px;
	text-align: center;
}
#safety #safety-qualification .certificate-img p.certificate-name span {
	display: inline-block;
	font-size: .8em;
    font-weight: 600;
	font-family: serif;
}
#safety #safety-qualification .certificate-text {
    max-width: 600px;
    width: 60%;
	padding-left: 45px;
}
#safety #safety-qualification .certificate-text .certificate-name-title {
	line-height: 1.4;
	font-size: 1.2em;
	font-family: serif;
	margin-bottom: 9px;
}
#safety #safety-qualification .certificate-text p.certificate-name-bottom {
	margin-bottom: 9px;
}
#safety #safety-qualification .certificate-text p.certificate-name-bottom span {
	display: inline-block;
	background: #178980;
	padding: 0 6px;
	color: #FFF;
	font-weight: 600;
	font-size: .9em;
	border-radius: 3px;
}
#safety #safety-qualification ul.points {
	
}
#safety #safety-qualification ul.points li {
	display: list-item;
	list-style: disc !important;
	padding: 0;
	margin: 3px 0 0 0;
	line-height: 1.6;
	border: none;
}

@media screen and (max-width: 1194px) {
	#safety #safety-qualification .summary {
		width: 100%;
	}
}
@media screen and (max-width: 768px) {
	#safety #greeting .greeting-main .greeting-main-text {
		padding: 45px 45px 45px 14vw;
	}
	
	#safety #safety-qualification {
		margin: 60px 0;
	}
	#safety #safety-qualification ul.safety-qualification-list li {
		flex-direction: column;
	}
	#safety #safety-qualification .certificate-img,
	#safety #safety-qualification .certificate-text {
		max-width: 100%;
		width: 100%;
		
	}
	#safety #safety-qualification .certificate-text {
		padding: 0;
		margin-top: 18px;
	}
}
@media screen and (max-width: 559px) {
	#safety #greeting .greeting-main .greeting-main-text {
		padding: 30px 30px 30px 30px;
		width: 100%;
	}
	#safety #greeting .greeting-main .greeting-main-text-title {
		font-size: 1.1em;
		margin-bottom: 12px;
	}
	#safety #greeting .greeting-main p.img {
		max-width: 240px;
        width: 48%;
		position: absolute;
		top: -12vw;
		left: auto;
		right: 5vw;
	}
	
	#safety #safety-qualification {
		margin: 45px 0;
	}
	#safety #safety-qualification .certificate-text p.certificate-name-bottom span {
		    font-size: 1em;
	}
}
@media screen and (max-width: 430px) {
	#safety #greeting .greeting-main p.img {
		top: -9vw;
		right: 0;
	}
	#safety #greeting .greeting-main .greeting-main-text {
	margin: 38px 0 0 auto;
	}
}
@media screen and (max-width: 380px) {
	
}
@media screen and (max-width: 320px) {
	#safety #greeting .greeting-main p.img {
		top: -12vw;
	}
}


/****************************************
 * 費用例
 * parts/example_
 * **************************************/

.organize_example {
	background: url(images/parts/example/bg_red.webp) no-repeat;
	background-size: cover;
	border-bottom: 18px solid #FFF;
}
.cleaning_example {
	background: url(images/parts/example/bg_green.webp) no-repeat;
	background-size: cover;
	margin-top: 210px;
	border-bottom: 18px solid #FFF;
}

/*特殊清掃のみ*/
.example .example_introduction {
	text-align: center;
	margin-top: -260px;
}
.example .example_introduction p.example_introduction_txt {
	font-size: 1.6rem;
	font-family: serif;
	margin: 0 60px 60px;
	padding: 60px;
	background: #FFF;
	border-radius: 12px;
}

.example p.drag {
	text-align: right;
	margin: 0 0 12px;
	font-weight: bold;
	font-size: .8rem;
	animation: SlideIn 1.6s infinite;
}
@keyframes SlideIn {
	0% {
		opacity: 0;/*初期状態では透明に*/
		transform: translateX(-64px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}
.example .example_scroll {
	display: flex;
	width: 100%;
	height: 100%;
	overflow-x: auto;
	padding: 0 0 30px;
}
.example .example_item {
	width: 700px;
	flex-shrink: 0;
	background: #FFF;
	margin: 0 30px 0 0;
	padding: 0;
	box-shadow: 0px 3px 6px rgba(0,0,0,20%);
	position: relative;
}
.example .example_item:last-child {
	margin-right: 0;
}
.example .example_item span.typetag {
	position: absolute;
	display: inline-block;
	font-size: 1.3rem;
	background: #FFF;
	padding: 3px 18px;
	font-weight: 900;
	font-family: "NotoSansJP", sans-serif;
}
.example.organize_example span.typetag {
	color: red;
}
.example.cleaning_example span.typetag {
	color: #8cc11f;
}
.example .example_item .example_box {
	padding: 45px;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}
.example .example_item .example_box .example_title {
	line-height: 1;
	padding-left: 12px;
}
.example.organize_example .example_item .example_box .example_title {
	border-left: 6px solid red;
}
.example.cleaning_example .example_item .example_box .example_title {
	border-left: 6px solid #8cc11f;
}
.example .example_item .example_box .example_cost {
	margin-top: 18px;
}
.example .example_item .example_box .example_cost dl {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 1.6rem;
	font-weight: 900;
	font-family: "NotoSansJP", sans-serif;
}
.example.organize_example .example_item .example_box .example_cost dl {
	color: red;
}
.example.cleaning_example .example_item .example_box .example_cost dl {
	color: #8cc11f;
}
.example .example_item .example_box .example_cost dt {}
.example .example_item .example_box .example_cost dd {
	font-size: 2rem;
}
.example .example_item .example_box .example_cost dl.sub dd {
	font-size: 1.8rem;
}
.example .example_item .example_box .example_cost dd span {
	font-size: .7em;
	margin-left: 3px;
}
.example .example_item .example_box .example_cost .example_detail {
	background: #F3FAE4;
	padding: 30px;
	margin-top: 12px;
}
.example .example_item .example_box .example_cost .example_detail ol {
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
	counter-reset: li;
}
.example .example_item .example_box .example_cost .example_detail ol li {
	margin: 12px 0 0 34px;
	line-height: 1.4;
	font-size: 1rem;
    font-weight: bold;
	position: relative;
}
.example .example_item .example_box .example_cost .example_detail ol li:before {
	position: absolute;
	font-weight: bold;
	counter-increment: li;
	content: counter(li) "";
	left: -34px;
	top: -1px;
	color: #fff;
	width: 24px;
	height: 24px;
	font-size: .9rem;
	text-align: center;
	box-sizing: border-box;
	font-weight: bold;
	line-height: 1;
	background: #8cc11f;
	padding: 6px 0;
}
.example .example_item .example_box .example_cost .example_detail p.example_days {
	text-align: right;
	margin-top: 9px;
	font-size: 1rem;
	font-weight: bold;
}
.example .example_item .example_txt {
	margin-top: 18px;
	white-space: initial;
	font-size: 1rem;
}

/* バナー */
.example .example_bnr {
	display: flex;
	justify-content: center;
	text-align: center;
	margin: 45px auto 0;
}
.example .example_bnr a {
	display: inline-block;
	width: calc(100% / 2 - 18px);
	margin: 0 9px;
}

/*スクロールバー*/
.example.organize_example .example_scroll::-webkit-scrollbar {
	height: 12px;
}
.example.organize_example .example_scroll::-webkit-scrollbar-track {
	background: #999;
	border-radius: 20px;
}
.example.organize_example .example_scroll::-webkit-scrollbar-thumb {
	background: #FFF;
	border-radius: 20px;
}
.example .example_scroll::-webkit-scrollbar {
	height: 12px;
}
.example .example_scroll::-webkit-scrollbar-track {
	background: #FFF;
	border-radius: 20px;
}
.example .example_scroll::-webkit-scrollbar-thumb {
	background: #4FBC20;
	border-radius: 20px;
}
/*スクロールバー*/

@media screen and (max-width: 1194px) {
	.example .example_item {
		width: 620px;
	}
	.example .example_introduction p.example_introduction_txt {
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 864px) {
	.example .example_item {
		width: 580px;
	}
}
@media screen and (max-width: 768px) {
	.example .example_introduction p.example_introduction_txt {
		margin: 0 0 45px;
		padding: 30px;
		font-size: 1.3rem;
	}
	.example .example_item {
		width: 550px;
	}
	.example.organize_example .example_item .example_box .example_cost dl {
		font-size: 1.5rem;
	}
	.example .example_item .example_box .example_cost dd {
		font-size: 1.7rem;
	}
}
@media screen and (max-width: 560px) {
	.organize_example {
		background: url(images/parts/example/bg_sp_red.webp) no-repeat;
		background-size: cover;
		border-bottom: 18px solid #FFF;
	}
	.cleaning_example {
		background: url(images/parts/example/bg_sp_green.webp) no-repeat;
		background-size: cover;
		margin-top: 210px;
		border-bottom: 18px solid #FFF;
	}
	
	.example .example_introduction p.example_introduction_txt {
		font-size: 1.1rem;
	}
	.example .example_item {
		width: 420px;
	}
	.example .example_item .example_box {
		padding: 30px;
	}
	.example.organize_example .example_item .example_box .example_cost dl {}
	.example .example_item .example_box .example_cost dt {
		font-size: 1.3rem;
	}
	.example .example_item .example_box .example_cost dd,
	.example .example_item .example_box .example_cost dl.sub dd {
		font-size: 1.6rem;
	}
	.example .example_item .example_txt {
		font-size: .9rem;
	}
	.example .example_item .example_box .example_cost .example_detail ol li:before {
		left: -30px;
	}
	
	.example .example_bnr {
		flex-direction: column;
	}
	.example .example_bnr a {
		width: 100%;
		margin: 12px 0 0;
	}

}
@media screen and (max-width: 430px) {
	.example .example_introduction img.clover {
		width: 100px;
	}
	.example .example_introduction p.example_introduction_txt {
		font-size: 1rem;
		padding: 20px;
	}
	.example .example_item {
		width: 100%;
	}
	.example .example_item .example_box {
		padding: 20px;
	}
	.example.organize_example .example_item .example_box .example_cost dl {
		flex-direction: column;
	}
	.example .example_item .example_box .example_cost dt {
		width: 100%;
		font-size: 1.1rem;
		text-align: left;
	}
	.example .example_item .example_box .example_cost dd,
	.example .example_item .example_box .example_cost dl.sub dd {
		width: 100%;
		font-size: 1.4rem;
		text-align: right;
		line-height: 1;
	}
	.example .example_item .example_box .example_cost .example_detail {
		padding: 20px;
	}
	.example .example_item .example_box .example_cost .example_detail ol li {
		font-size: .9rem;
		margin: 12px 0 0 25px
	}
	.example .example_item .example_box .example_cost .example_detail ol li:before {
		left: -25px;
		width: 20px;
		height: 20px;
		font-size: .7rem;
	}
}
@media screen and (max-width: 380px) {
	.example .example_introduction img.clover {
		width: 75px;
	}
	.example .example_introduction p.example_introduction_txt {
		font-size: .9rem;
		padding: 12px;
		margin: 0 0 90px;
		padding: 0;
	}
}
@media screen and (max-width: 320px) {
	.example .example_introduction img.clover {
		width: 60px;
	}
	.example .example_introduction p.example_introduction_txt {
		font-size: .8rem;
		padding: 12px;
	}
}


/****************************************
 * parts/price_
 * **************************************/

.price_title {
	text-align: center;
	font-size: 2.9rem;
	font-family: "NotoSansJP", sans-serif;
	font-weight: 900;
	color: #20BFB2;
	line-height: 1.4;
	margin-bottom: 60px;
}
span.tax {
	font-size: 1.2rem;
	margin-right: 3px;
}
span.yen {
	font-size: 1.5rem;
}

/* 片づけ
 * **************************************/

table.tableBasic {
	width: 100%;
	border-top: 1px solid #ededed;
	margin-top: 30px;
}
table.tableBasic,
table.tableBasic tr,
table.tableBasic th,
table.tableBasic td {
	border-collapse: collapse;
}
table.tableBasic tr {
	border-bottom: 1px solid #ededed;
}
table.tableBasic th {
	width: 40%;
	text-align: center;
	padding: 18px;
	font-size: 1.3rem;
	background: #fafafa;
}
table.tableBasic td {
	width: 60%;
	text-align: center;
	padding: 18px;
	font-family: "NotoSansJP", sans-serif;
	font-weight: 600;
	font-size: 1.6rem;
	background: #FFF;
	color: #178980;
}

/* 料金表の下 */
.price_graph {
	margin-top: 60px;
}
.price_graph .price_graph_flex {
	display: flex;
}
.price_graph .price_graph_flex .price_graph_flex___img {
	width: 350px;
}
.price_graph .price_graph_flex .price_graph_flex___txt {
	width: calc(100% - 350px);
	padding: 0 0 0 45px;
}
.price_graph p.price_point {
	font-size: 1.4rem;
	font-weight: bold;
	margin: 0 0 9px;
	padding: 0 0 0 42px;
	line-height: 1.6;
	position: relative;
}
.price_graph p.price_point:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url(images/common/icon_check.png) no-repeat;
	background-size: 100%;
	background-position: center;
	width: 28px;
	height: 28px;
}
.price_graph .price_loan {
	margin-top: 30px;
	padding: 30px;
	font-size: 1rem;
	background: #E4FAF8;
	border-radius: 12px;
	border: 2px solid #20BFB2;
}
.price_graph .price_loan p.price_loan_title {
	margin-top: -48px;
}
.price_graph .price_loan p.price_loan_title span {
	display: inline-block;
	padding: 6px 18px;
	font-weight: bold;
	color: #20BFB2;
	background: #FFF;
	border-radius: 30px;
	border: 2px solid #20BFB2;
}
.price_graph .price_loan ul {
	list-style: none;
	margin: 0 0 12px;
	padding: 0;
}
.price_graph .price_loan ul li {
	font-weight: bold;
}
.price_graph .price_loan ul li span {
	background: #FFF;
}

/*パックの内容*/
.pack_included,
.pack_noincluded {
	padding: 45px;
	margin-top: 45px;
}
.pack_included {
	background: #E4FAF8;
}
.pack_noincluded {
	background: #EFF9E5;
}
.pack_included .pack_included_title,
.pack_noincluded .pack_included_title {
	text-align: center;
	margin: 0 0 18px;
	font-size: 1.9rem;
}
.pack_included .pack_included_title {
	color: #20BFB2;
}
.pack_noincluded .pack_included_title {
	color: #8cc11f;
}
.pack_included ul {}
.pack_included ul li {
	font-weight: bold;
}

table.tablePack.noinclude {
	border-top: 1px solid #ededed;
}
table.tablePack.noinclude tr {
	border-bottom: 1px solid #ededed;
}
table.tablePack.noinclude th {
	width: 35%;
	text-align: center;
	padding: 18px;
}
table.tablePack.noinclude th:after {
	content: none;
}
table.tablePack.noinclude td {
	width: 65%;
	text-align: center;
	padding: 18px;
	font-size: 1rem;
	font-weight: bold;
	background: #FFF;
	color: #000;
	border-radius: 0;
}
table.tablePack.noinclude td span.hosoku {
	color: #999;
	display: block;
}

/* 特殊清掃
 * **************************************/

table.tablePack {
	width: 100%;
}
table.tablePack,
table.tablePack tr,
table.tablePack th,
table.tablePack td {
	border-collapse: collapse;
}
table.tablePack th {
	position: relative;
	padding: 18px;
}
table.tablePack th:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	background: #20BFB2;
	width: 1px;
	height: 80%;
}
table.tablePack td {
	text-align: center;
	font-weight: bold;
	font-size: 3rem;
	background: #FFF;
	color: #178980;
	border-radius: 12px;
	padding: 18px;
}


@media screen and (max-width: 1024px) {
	.price_title {
		font-size: 2.3rem;
	}
}
@media screen and (max-width: 768px) {
	.price_graph .price_graph_flex .price_graph_flex___img {
		width: 260px;
	}
	.price_graph .price_graph_flex .price_graph_flex___txt {
		width: calc(100% - 260px);
		    padding: 0 0 0 30px;
	}
	.price_graph p.price_point {
		font-size: 1.3rem;
	}
	.price_graph .price_loan {
		padding: 20px;
	}
}
@media screen and (max-width: 560px) {
	span.yen {
		font-size: 1.1rem;
	}
	span.tax {
		font-size: 1rem;
	}
	.price_title {
		font-size: 2rem;
	}
	
	.table_scroll {
		overflow-x: scroll;
	}
	table.tableBasic {
		min-width: 500px;
		margin: 0;
	}
	table.tableBasic th {
		width: 35%;
		font-size: 1.1rem;
	}
	table.tableBasic td {
		width: 65%;
		font-size: 1.3rem;
	}
	.price_graph .price_graph_flex {
		flex-direction: column;
	}
	.price_graph .price_graph_flex .price_graph_flex___img,
	.price_graph .price_graph_flex .price_graph_flex___txt {
		width: 100%;
		padding: 0;
	}
	.price_graph .price_graph_flex .price_graph_flex___img {
		width: 100%;
	}
	.price_graph .price_graph_flex .price_graph_flex___img img {
		    width: 250px;
    display: block;
    margin: 0 auto;
	}
	.price_graph .price_graph_flex .price_graph_flex___txt {
		margin-top: 30px;
	}
	.price_graph p.price_point {
		font-size: 1.2rem;
	}
	.price_graph .price_loan {
		font-weight: bold;
		font-size: .9rem;
		margin-top: 45px;
	}
	.price_graph .price_loan ul li {
		font-size: 1.1rem;
	}
	
	
	.pack_included {
		padding: 30px;
	}
	.pack_noincluded {
		padding: 30px 0;
	}
	
	table.tablePack th,
	table.tablePack td {
		display: block;
		width: 100%;
	}
	table.tablePack th {
		border-right: none;
		    margin: 0;
		border-bottom: 1px solid #20BFB2;
	}
	table.tablePack th:after {
		content: none;
	}
	table.tablePack td {
		line-height: 1;
		font-size: 2.3rem;
	}

	.pack_included .pack_included_title,
	.pack_noincluded .pack_included_title {
		font-size: 1.4rem;
	}

	table.tablePack.noinclude {
		width: 100%;
		min-width: 680px;
		border-collapse: collapse;
	}
	table.tablePack.noinclude tr {
		display: flex;
		align-items: stretch;
	}
	table.tablePack.noinclude th {
		width: 230px;
		line-height: 1.8;
		background: #fafafa;
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}
	table.tablePack.noinclude td {
		width: calc(100% - 230px);
		line-height: 1.8;
	}
}
@media screen and (max-width: 430px) {
	.price_title {
		font-size: 1.6rem;
	}
	
	table.tablePack td {
		line-height: 1;
		font-size: 1.9rem;
	}
	
}
@media screen and (max-width: 380px) {
	.price_title {
		font-size: 1.5rem;
	}
	table.tablePack td {
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 380px) {
	/*パックの内容*/
	.pack_included,
	.pack_noincluded {
		padding: 20px;
	}
}


/****************************************
 * 料金案内
 * **************************************/

#price {
	background: #FAFEFD;
}
#price .price_box {
	padding-bottom: 90px;
}

#price .price_box p.drag {
	display: none;
}
	

/*タブ*/
#price ul.tab {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
}
#price ul.tab li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(100% / 3 - 18px);
	min-width: 280px;
	height: 100%;
	border-radius: 4px;
	padding: 24px;
	line-height: 1;
	font-weight: bold;
	color: #565656;
	background: #ededed;
	text-align: center;
	transition: all .3s ease;
}
#price ul.tab li a:hover {
	opacity: 0.7;
	cursor: pointer;
}
#price ul.tab li.active a {
	background: #20BFB2;
	color: #FFF;
}

#price .tab_content { /*非表示*/
	display: none;
	opacity: 0;
	width: 100%;
	padding: 0;
	margin-top: 90px;
}
#price .tab_content.is-active { /*表示 */
	display: block;
	animation-name: displayAnime;
	animation-duration: 2s;
	animation-fill-mode: forwards;
}
@keyframes displayAnime{
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}


/* 片づけ・整理
 * **************************************/

#price .price_item {
	margin-top: 60px;
}
#price .price_item .price_table {
	width: 100%;
}


/* その他追加サービス
 * **************************************/

#price .price_other {
	margin-top: 90px;
}
#price table.tableOther {
	width: 100%;
	border-top: 1px solid #ededed;
}
#price table.tableOther,
#price table.tableOther tr,
#price table.tableOther th,
#price table.tableOther td {
	border-collapse: collapse;
}
#price table.tableOther tr {
	border-bottom: 1px solid #ededed;
}
#price table.tableOther th {
	width: 50%;
	text-align: center;
	padding: 18px;
	font-size: 1rem;
	background: #fafafa;
}
#price table.tableOther td {
	width: 50%;
	text-align: center;
	padding: 18px;
	font-size: 1rem;
	font-weight: bold;
}
#price table.tableOther td span.hosoku {
	display: block;
	font-size: .9em;
}
#price table.tableOther td dl {
	display: flex;
	align-items: center;
	margin-top: 9px;
}
#price table.tableOther td dt {
	width: 50%;
}
#price table.tableOther td dd {
	width: 50%;
}
.price_memo {
	margin-top: 30px;
	padding: 45px;
	background: #E4FAF8;
}
.price_memo ul {
	margin: 0 0 0 1em;
}
.price_memo ul li {
	font-weight: bold;
}


@media screen and (max-width: 1024px) {
	#price ul.tab li a {
		min-width: 270px;
	}
}
@media screen and (max-width: 768px) {
	#price ul.tab li a {
		min-width: 200px;
		padding: 24px 12px;
	}
	#faq dl dt {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 559px) {
	/* ドラッグ */
	#price .price_box p.drag {
		display: block;
		text-align: right;
		margin: 12px 0;
		font-weight: bold;
		font-size: .8em;
		animation: SlideIn 1.6s infinite;
	}
	#price .price_box p.drag span {
		border-bottom: 2px solid;
	}
	@keyframes SlideIn {
		0% {
			opacity: 0;/*初期状態では透明に*/
			transform: translateX(-64px);
		}
		100% {
			opacity: 1;
			transform: translateX(0);
		}
	}
	/* ドラッグ */

	#price ul.tab {
		margin-top: -12px;
	}
	#price ul.tab li {
		width: 100%;
		margin-top: 12px;
	}
	#price ul.tab li a {
		min-width: 100%;
		width: 100%;
	}
	
	#price table.tableOther {
		min-width: 540px;
	}
	#price table.tableOther th {
		width: 35%;
	}
	#price table.tableOther td {
		width: 65%;
	}
	#price table.tableOther td span.hosoku {
		font-size: .8em;
		line-height: 1.4;
	}
	.price_memo {
		padding: 30px;
	}
}
@media screen and (max-width: 430px) {
	#price .tab_content {
		margin-top: 60px;
	}
	.price_memo {
		padding: 20px;
	}

}

/* 遺品整理 */
#price .organize-price-area {
	padding: 0;
}
#price .organize-price-area table.basic {
	float: left;
	width: 600px;
	table-layout: fixed;
	margin: 0 10px 30px 0;
	font-weight: bold;
}
#price .organize-price-area table.basic caption {
	font-size: 1.5em;
}
#price .organize-price-area table th {
	display: table-cell;
	width: 22%;
	font-size: 1.6em;
	background: #F3FAE4;
	padding: 10px 0;
	border-bottom: 1px solid #8cc11f;
}
#price .organize-price-area table.basic th.floor {
	width: 45% !important;
}
#price .organize-price-area table.basic th.total {
	width: 55% !important;
}
#price .organize-price-area table.basic td {
	display: table-cell;
	padding: 10px;
	border-bottom: 1px solid #8cc11f;
}
#price .organize-price-area table.basic td.floor {
	width: 45% !important;
	text-align: center;
}
#price .organize-price-area table.basic td.total {
	width: 55% !important;
	text-align: right;
	font-size: 1.2em;
}
#price .organize-price-area .graph_box {
	float: right;
}
#price .organize-price-area .other-box {
	clear: both;
	background: #ededed url(images/organize/other-cost.jpg) no-repeat;
	background-size: 190px;
	background-position: left center;
	font-size: .9em;
	padding: 20px 20px 20px 210px;
	margin-bottom: 15px;
}
#price .organize-price-area .other-box table.other {
	table-layout: fixed;
	width: 100%;
	margin-bottom: 15px;
}
#price .organize-price-area .other-box table.other th {
	font-size: 1em;
	width: 28%;
	padding: 5px 10px !important;
	font-weight: normal;
	border-bottom: 1px solid #fafafa;
	background: #ededed;
	text-align: left;
}
#price .organize-price-area .other-box table.other th:after {
	content: ":";
	float: right;
}
#price .organize-price-area .other-box table.other td {
	width: 25%;
	text-align: right;
	padding: 5px 10px !important;
	border-bottom: 1px solid #fafafa;
}
#price .organize-price-area .other-box table.other td span {
	display: inline-block;
	font-size: .75em;
}
#price .organize-price-area .other-box table.add {
	table-layout: fixed;
	width: 100%;
	margin-bottom: 15px;
}
#price .organize-price-area .other-box table.option caption,
#price .organize-price-area .other-box table.other caption,
#price .organize-price-area .other-box table.add caption {
	font-size: 1em;
	text-align: left;
	font-weight: bold;
	background: url(images/organize/icon.png) no-repeat;
	background-size: 15px;
	background-position: center left;
	padding-left: 20px;
}
#price .organize-price-area .other-box table.add th {
	font-size: 1em;
	width: 28%;
	padding: 5px 10px !important;
	font-weight: normal;
	border-bottom: 1px solid #fafafa;
	background: #ededed;
	text-align: left;
}
#price .organize-price-area .other-box table.add th:after {
	content: ":";
	float: right;
}
#price .organize-price-area .other-box table.add td {
	width: 25%;
	text-align: right;
	padding: 5px 10px !important;
	border-bottom: 1px solid #fafafa;
}
#price .organize-price-area .other-box table.add td dl {
	display: table;
	font-size: .9em;
	width: 100%;
}
#price .organize-price-area .other-box table.add td dt {
	display: table-cell;
	width: 40%;
}
#price .organize-price-area .other-box table.add td dd {
	display: table-cell;
	width: 50%;
}
#price .organize-price-area .other-box table.add td dd span {
	font-size: .8em;
	display: inline-block;
}
#price .organize-price-area .other-box span.memo {
	display: block;
	font-size: .9em;
}
#price .organize-price-area .other-box span.memo:before {
	content: "-";
}
#price .organize-price-area .gray-box {
	background: #ededed url(images/organize/separate-cost.jpg) no-repeat;
	background-size: 190px;
	background-position: left center;
	font-size: .9em;
	padding: 20px 20px 20px 210px;
	min-height: 120px;
}

@media screen and (max-width: 768px) {
	.price_box {
		margin: 60px 0 0;
	}
	table.option th {
		width: 180px;
	}
	#loan {
		height: 130px;
	}
	#loan img.loan {
		position: static;
		margin-top: -10px;
	}
}
@media screen and (max-width: 560px) {
	.price_box {
		margin: 45px 0 0;
	}
	.price_menu ul {
		display: block;
	}
	.price_menu ul li {
		width: 100%;
		height: auto;
	}
	table.basic,
	table.basic th,
	table.basic td,
	table.other,
	table.other th,
	table.other td,
	table.add,
	table.add th,
	table.add td {
		padding: 10px;
		font-size: .9em;
	}
	.basic_box {
		margin-bottom: 45px;
	}
	.basic_box {
		margin-bottom: 45px;
	}
	table.option th,
	table.option td {
		display: block;
		width: 100%;
	}
	.memo {
		padding: 30px;
	}
	.basic_box .table,
	.basic_box .graph_box {
		display: block;
		width: 100%;
	}
	.basic_box .graph_box {
		text-align: center;
		padding: 0;
		margin-top: 30px;
	}
	dl.pack_price {
		font-size: 1.3em;
	}
	.pack_price_included {
		padding: 45px;
	}
	.pack_price_included ul {
		font-size: 1em;
	}
	.pack_price_no-included {
		padding: 45px;
	}
	.pack_price_included ul {
		font-size: 1em;
	}
	.pack_price_no-included table.no-included,
	.pack_price_no-included table.no-included th,
	.pack_price_no-included table.no-included td {
		display: block;
		width: 100%;
	}
	.pack_price_no-included table.no-included th,
	.pack_price_no-included table.no-included td {
		padding: 10px;
	}
	.pack_price_included,
	.pack_price_no-included {
		padding: 30px;
	}
	#loan {
		height: 100px;
	}
}
@media screen and (max-width: 430px) {
	#loan {
		height: 80px;
	}
}
@media screen and (max-width: 430px) {
	table.other,
	table.add {
		display: block;
		overflow-x: scroll;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		border: none !important;
	}
	dl.pack_price,
	dl.pack_price dt,
	dl.pack_price dd {
		display: block;
		width: 100%;
	}
	dl.pack_price dt,
	dl.pack_price dd {
		padding: 10px;
	}
	dl.pack_price {
		border-radius: 4px;
	}
	dl.pack_price dt {
		font-size: 1.2em;
	}
	dl.pack_price dd {
		font-size: 1.3em;
		border-radius: 0 0 4px 4px;
	}
	.pack_price_included,
	.pack_price_no-included {
		padding: 20px;
	}
	#loan {
		height: 65px;
	}
}
@media screen and (max-width: 380px) {
	.memo {
		padding: 20px;
	}
	#loan {
		height: 60px;
	}
}
@media screen and (max-width: 320px) {
	dl.pack_price,
	dl.pack_price dd,
	dl.pack_price dt {
		display: table;
		width: 100%;
		padding: 3px;
	}
	#loan {
		height: 50px;
	}
}




/****************************************
 * 固定ページ
 * ご相談の流れ
*****************************************/

#flow ul.step {
	list-style: none;
	margin: 0;
	padding: 0;
}
#flow ul.step li {
	margin-bottom: 50px;
	clear: both;
	position: relative;
	background: #fafafa;
	padding: 30px;
	min-height: 250px;
}
#flow ul.step li:after {
	content: " ";
	position: absolute;
	top: 100%;
	left: 50%;
	width: 0;
	height: 0;
	margin-left: -30px;
	border-color: #fafafa rgba(232, 232, 232, 0) rgba(232, 232, 232, 0);
	border-image: none;
	border-style: solid;
	border-width: 30px;
	pointer-events: none;
}
#flow ul.step li:last-child:after {
	content: none;
}
#flow ul.step li img {
	float: left;
}
#flow ul.step li dl.step_detail {
	display: table;
	width: 100%;
}
#flow ul.step li dl.step_detail p {
	margin-bottom: .5em;
}
#flow ul.step li dl.step_detail dt,
#flow ul.step li dl.step_detail dd {
	vertical-align: middle;
	display: table-cell;
}
#flow ul.step li dl.step_detail dt {
	vertical-align: top;
	text-align: center;
	border-right: 3px solid #5FB2CD;
	width: 36%;
	color: #5FB2CD;
	font-weight: bold;
	position: relative;
}
#flow ul.step li dl.step_detail dt h2 {
	text-align: left;
	padding: 0;
	font-size: 1.3em;
	font-weight: bold;
	background: none;
	margin-bottom: 15px;
}
#flow ul.step li dl.step_detail dt h2:before,
#flow ul.step li dl.step_detail dt h2:after {
	content: none;
}
#flow ul.step li dl.step_detail dt h2 span {
	background: #5FB2CD;
	color: #FFF;
	display: inline-block;
	padding: 0 15px;
	margin-right: 15px;
}
#flow ul.step li:first-child dl.step_detail dt:before {
	content:"";
	display: inline-block;
	position: absolute;
	top: 50px;
	left: 0;
	background: url(images/flow/step-bg-01.jpg) no-repeat;
	background-size: 100%;
	width: 250px;
	height: 120px;
	z-index: 1;
}
#flow ul.step li:nth-child(2) dl.step_detail dt:before {
	content:"";
	display: inline-block;
	position: absolute;
	top: 50px;
	left: 0;
	background: url(images/flow/step-bg-02.jpg) no-repeat;
	background-size: 100%;
	width: 250px;
	height: 120px;
	z-index: 1;
}
#flow ul.step li:nth-child(3) dl.step_detail dt:before {
	content:"";
	display: inline-block;
	position: absolute;
	top: 50px;
	left: 0;
	background: url(images/flow/step-bg-03.jpg) no-repeat;
	background-size: 100%;
	width: 250px;
	height: 120px;
	z-index: 1;
}
#flow ul.step li:nth-child(4) dl.step_detail dt:before {
	content:"";
	display: inline-block;
	position: absolute;
	top: 50px;
	left: 0;
	background: url(images/flow/step-bg-04.jpg) no-repeat;
	background-size: 100%;
	width: 250px;
	height: 120px;
	z-index: 1;
}
#flow ul.step li:nth-child(5) dl.step_detail dt:before {
	content:"";
	display: inline-block;
	position: absolute;
	top: 50px;
	left: 0;
	background: url(images/flow/step-bg-05.jpg) no-repeat;
	background-size: 100%;
	width: 250px;
	height: 120px;
	z-index: 1;
}
#flow ul.step li:nth-child(6) dl.step_detail dt:before {
	content:"";
	display: inline-block;
	position: absolute;
	top: 50px;
	left: 0;
	background: url(images/flow/step-bg-06.jpg) no-repeat;
	background-size: 100%;
	width: 250px;
	height: 120px;
	z-index: 1;
}
#flow ul.step li:nth-child(7) dl.step_detail dt:before {
	content:"";
	display: inline-block;
	position: absolute;
	top: 50px;
	left: 0;
	background: url(images/flow/step-bg-07.jpg) no-repeat;
	background-size: 100%;
	width: 250px;
	height: 120px;
	z-index: 1;
}
#flow ul.step li dl.step_detail dd {
	padding: 0 30px;
}
#flow .tel-box {
	float: left;
	width: 50%;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro', 'YuGothic', 'Yu Gothic', '游ゴシック', 'Meiryo', 'メイリオ', Helvetica, sans-serif;
	color: #C54D61;
}
#flow .tel-box span {
	display: block;
	font-size: 1.6em;
	font-weight: bold;
	margin-top: -5px;
}
#flow .mail-box {
	float: right;
	width: 50%;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro', 'YuGothic', 'Yu Gothic', '游ゴシック', 'Meiryo', 'メイリオ', Helvetica, sans-serif;
	padding: 10px;
}
#flow .mail-box a {
	display: block;
	text-align: center;
	padding: 10px 30px 10px 10px;
	background: #C54D61;
	color: #FFF;
}
#flow .mail-box a:after {
	border-top: solid 1px #FFF;
	border-right: solid 1px #FFF;
}
#flow .mail-box a:hover {
	opacity: .7;
}

@media screen and (max-width: 1380px) {
	#flow .tel-box,
	#flow .mail-box {
		float: none;
		width: 100%;
		padding: 0;
	}
	#flow ul.step li:first-child dl.step_detail dt:before,
	#flow ul.step li:nth-child(2) dl.step_detail dt:before,
	#flow ul.step li:nth-child(3) dl.step_detail dt:before,
	#flow ul.step li:nth-child(4) dl.step_detail dt:before,
	#flow ul.step li:nth-child(5) dl.step_detail dt:before,
	#flow ul.step li:nth-child(6) dl.step_detail dt:before,
	#flow ul.step li:nth-child(7) dl.step_detail dt:before {
		width: 190px;
		height: 90px;
	}
}
@media screen and (max-width: 1170px) {
	#flow ul.step li dl.step_detail dl,
	#flow ul.step li dl.step_detail dt,
	#flow ul.step li dl.step_detail dd {
		display: block;
		width: 100%;
		padding: 0;
	}
	#flow ul.step li dl.step_detail dt {
		border-right: none;
	}
	#flow ul.step li:first-child dl.step_detail dt:before,
	#flow ul.step li:nth-child(2) dl.step_detail dt:before,
	#flow ul.step li:nth-child(3) dl.step_detail dt:before,
	#flow ul.step li:nth-child(4) dl.step_detail dt:before,
	#flow ul.step li:nth-child(5) dl.step_detail dt:before,
	#flow ul.step li:nth-child(6) dl.step_detail dt:before,
	#flow ul.step li:nth-child(7) dl.step_detail dt:before {
		left: unset;
		right: 0;
		top: 0;
	}
	#flow ul.step li dl.step_detail dd {
		padding: 50px 0 20px;
	}
	#flow .tel-box span {
		display: inline-block;
		margin-left: 10px;
	}
}
@media screen and (max-width: 768px) {
	#flow .tel-box,
	#flow .mail-box {
		float: left;
		width: 50%;
		padding: 0;
	}
	#flow .tel-box span {
		display: block;
		margin-left: 0;
	}
	#flow .mail-box {
		margin-top: 10px;
	}
}
@media screen and (max-width: 480px) {
	#flow ul.step li:first-child dl.step_detail dt:before,
	#flow ul.step li:nth-child(2) dl.step_detail dt:before,
	#flow ul.step li:nth-child(3) dl.step_detail dt:before,
	#flow ul.step li:nth-child(4) dl.step_detail dt:before,
	#flow ul.step li:nth-child(5) dl.step_detail dt:before,
	#flow ul.step li:nth-child(6) dl.step_detail dt:before,
	#flow ul.step li:nth-child(7) dl.step_detail dt:before {
		top: 50px;
		left: 0;
		right: 0;
		margin: auto;
	}
	#flow ul.step li dl.step_detail dd {
		padding: 110px 0 20px;
	}
	#flow .tel-box,
	#flow .mail-box {
		float: none;
		width: 100%;
		padding: 0;
		margin: 0;
	}
	#flow .tel-box span {
		font-size: 1.5em;
	}
}


	
/****************************************
 * 対応エリア
 * **************************************/

#area {
	background: #F3FAE4;
}
#area .area_box {
	text-align: center;
	font-weight: bold;
}
#area .area_box .area_list {
	padding: 60px;
	margin-top: -30px;
	background: #FFF;
	border-radius: 12px;
}
#area .area_box .area_list ul.main_city {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: left;
}
#area .area_box .area_list ul.main_city:not(:first-child) {
	margin-top: 30px;
}
#area .area_box .area_list ul.main_city li {
	display: inline-block;
	margin-right: 18px;
	font-size: 1.3rem;
}
#area .area_box .area_list ul.main_city li.parent {
	display: block;
	color: #8cc11f;
}

@media screen and (max-width: 768px) {
	#area .area_box .area_list {
		padding: 60px 45px 45px;
	}
}
@media screen and (max-width: 559px) {
	#area .area_box img.campaign {
		width: 380px;
	}
	#area .area_box .area_list {
		padding: 45px 30px 30px;
		margin-top: -12px;
	}
	#area .area_box .area_list ul.main_city li {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 430px) {
	#area .area_box img.campaign {
		width: 350px;
	}
	#area .area_box .area_list {
		padding: 30px 20px 20px;
	}
	#area .area_box .area_list ul.main_city li {
		font-size: 1.1rem;
		margin-right: 12px;
	}
}
@media screen and (max-width: 380px) {
	#area .area_box .area_list ul.main_city li {
		font-size: 1em;
		margin-right: 9px;
	}
}
@media screen and (max-width: 320px) {
	#area .area_box .area_list ul.main_city li {
		font-weight: normal;
	}
	#area .area_box .area_list ul.main_city li.parent {
		font-weight: bold;
	}
}


/****************************************
 * お問い合わせ
 * **************************************/

#mail .contact_phone_box {
    border-radius: 12px;
    padding: 60px 45px;
    border: 3px solid #20BFB2;
	background: #E4FAF8;
	box-shadow: 0px 3px 6px rgba(0,0,0,20%);
}
#mail .contact_phone_box p {
	text-align: center;
	font-weight: bold;
}
#mail .contact_phone_box ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: center;
}
#mail .contact_phone_box ul li {
	margin: 0 30px;
}

#mail .contact_form_box {}
#mail .contact_form p.contact_form_kantan {
	text-align: center;
	font-weight: bold;
	font-size: 1.6rem;
	color: #20BFB2;
	margin-bottom: 0;
}
#mail .contact_form p.contact_form_kantan span {
	display: inline-block;
	padding: 0 22px;
	position: relative;
}
#mail .contact_form p.contact_form_kantan span:before {
	content: "";
	position: absolute;
	display: block;
	top: 50%;
	left: 0;
	width: 3px;
	height: 22px;
	border-radius: 3px;
	background: #20BFB2;
	transform: translateY(-50%) rotate(-30deg);
}
#mail .contact_form p.contact_form_kantan span:after {
	content: "";
	position: absolute;
	display: block;
	top: 50%;
	right: 0;
	width: 3px;
	height: 22px;
	border-radius: 3px;
	background: #20BFB2;
	transform: translateY(-50%) rotate(30deg);
}

#mail .contact_form_box table.form {
	width: 100%;
}
#mail .contact_form_box table.form,
#mail .contact_form_box table.form tr,
#mail .contact_form_box table.form th,
#mail .contact_form_box table.form td {
	border-collapse: collapse;
}
#mail .contact_form_box table.form tr {
	border-top: 6px solid #FFF;
}
#mail .contact_form_box table.form th {
	width: 320px;
	border-right: 2px solid #20BFB2;
	padding: 30px;
}
#mail .contact_form_box table.form td {
	width: calc(100% - 320px);
	padding: 30px;
}
#mail .contact_form_box table.form th.hissu,
#mail .contact_form_box table.form td.hissu {
	background: #FAFEFD;
}
#mail .contact_form_box table.form td .postcode_flex span.wpcf7-form-control-wrap {
	width: auto;
}
#mail .contact_form_box table.form th span {
	display: block;
	text-align: center;
	color: #20BFB2;
	font-size: .8rem;
}


/* 項目 */
#mail p.formtype_txt {
	margin-bottom: 9px;
}

/* メール */
#mail input.email_confirm {
	margin-top: 9px;
}

/* 電話番号 */
#mail .contact_form_box table.form td p.memo {
	font-size: .8rem;
    font-weight: 600;
	padding: 0;
    margin-bottom: 6px;
}

/* 郵便番号 */
#mail table td.position .postcode_flex {
	display: flex;
	align-items: center;
	margin-bottom: 5px;
}
#mail table td.position .postcode_flex p {
	margin-bottom: 0;
}
#mail table td.position .postcode_flex p.postmark {
	color: #999;
	margin-right: 6px;
	font-size: 1.3rem;
}
#mail table td.position .postcode_flex p.postcode_memo {
	display: inline-block;
	font-size: .8rem;
	line-height: 1;
	margin-left: 12px;
}
#mail input.postcode {
	width: 160px;
}

/* 住所 */
#mail input.addr {
	width: 100%;
}


/* 日付 */
#mail .preferred_day {}
#mail .preferred_day dl {
	display: flex;
	align-items: center;
}
#mail .preferred_day dl:not(:first-child) {
	margin-top: 18px;
}
#mail .preferred_day dl dt {
	min-width: 82px;
	margin-right: 18px;
}
#mail .preferred_day dl dt span.hissu {
	display: block;
	text-align: center;
	color: #20BFB2;
	font-size: .8rem;
	font-weight: bold;
}
#mail .preferred_day dl dd {}
#mail .preferred_day p.datememo {
	font-weight: 600;
	line-height: 1.2;
}
#mail input.formdate {
	width: 180px;
	font-size: 1.2rem;
	padding: 18px;
	line-height: 1;
	border-radius: 4px;
	color: #000;
	border: 1px solid #ededed;
}
#mail .wpcf7-select {
	width: 180px;
	top: 0;
	font-size: 1.2rem;
	padding: 18px;
	margin-left: 12px;
	border-radius: 4px;
	color: #000;
	background: #FFF;
}

/* 時間 */
input.other_time {
	max-width: 180px !important;
	font-size: 1.2rem !important;
	margin-left: 12px !important;
	border-radius: 4px !important;
	background: #FFF !important;
	color: #000 !important;
}

/* ポリシー */
#mail .agree_box {
	margin-top: 60px;
	text-align: center;
}

/* 送信ボタン */
#mail .button_box input.send,
#mail .button_box input.back {
	margin: 0;
	font-weight: normal;
	transition: all .3s;
}


/* zipaddr-jp
 * ***************************************/

div#autozip {
	display: none !important;
}


/* Contact Form 7
 * ***************************************/

.wpcf7-list-item {
	margin: 0 1em 0 0;
	line-height: 2;
}
.wpcf7-not-valid-tip { /*エラーメッセージ*/
	color: #BC204C !important;
	font-weight: bold !important;
	margin-top: 3px !important;
}
div.wpcf7 .wpcf7-spinner {
	display: none !important;
}
span.wpcf7-form-control-wrap {
	display: inline-flex;
	flex-direction: column;
	width: 100%;
}
#mail .preferred_day span.wpcf7-form-control-wrap {
	width: auto;
}


/* 送信完了
 * ***************************************/

#mail .contact_comp {
	text-align: center;
    font-weight: bold;
}


@media screen and (max-width: 1194px) {
	/*日付*/
	#mail .preferred_day dl {
		flex-direction: column;
		align-items: flex-start;
	}
	#mail .preferred_day dl dt {
		margin-right: 0;
	}
	#mail .preferred_day dl dt span.hissu {
		display: inline-block;
		margin-left: 12px;
	}
	#mail .preferred_day dl dd {
		display: flex;
	}
	#mail input.formdate,
	#mail .wpcf7-select,
	input.other_time {
		width: auto;
		max-width: 160px;
        min-width: 120px;
	}
}
@media screen and (max-width: 960px) {
	#mail .contact_form_box table.form th {
		width: 260px;
	}
}
@media screen and (max-width: 768px) {
	#mail .contact_form p.contact_form_kantan {
		font-size: 1.4rem;
	}
	#mail .contact_form_box table.form tr {
		display: flex;
		flex-direction: column;
	}
	#mail .contact_form_box table.form th {
		display: block;
		width: 100%;
		text-align: left;
		padding: 12px;
		border-right: none;
		border-left: 1px solid #20BFB2;
		background: #E4FAF8 !important;
	}
	#mail .contact_form_box table.form th span {
		display: inline-block;
		font-size: 1rem;
		margin-left: 9px;
	}
	#mail .contact_form_box table.form td {
		display: block;
		width: 100%;
		padding: 18px 12px;
		background: #FFF !important;
	}
	
	/*日付*/
	#mail .wpcf7-select {
		width: 160px;
	}
}
@media screen and (max-width: 559px) {
	#mail .contact_phone_box {
		padding: 30px;
	}
	#mail .contact_phone_box ul {
		flex-direction: column;
		margin-top: -12px;
	}
	#mail .contact_phone_box ul li {
		text-align: center;
		margin: 12px 0 0;
	}
	#mail .contact_form_box table.form td {
		padding: 18px 0;
	}
	
	/*郵便番号*/
	#mail table td.position .postcode_flex p.postcode_memo {
		font-size: .8rem;
	}
	
	/*日付*/
	#mail .preferred_day dl {
		flex-direction: column;
	}
	#mail .preferred_day dl:not(:first-child) {
		border-top: 1px solid #ededed;
	}
	#mail .preferred_day dl dt,
	#mail .preferred_day dl dd {
		text-align: left;
		width: 100%;
	}
	#mail .preferred_day dl dt {
		padding-top: 12px;
		margin: 0;
	}
	#mail .preferred_day dl dt span.hissu {
		display: inline-block;
		font-size: 1rem;
		    margin-left: 9px;
	}
	#mail .preferred_day dl dd {
		flex-wrap: wrap;
		gap: 12px;
	}
	#mail .preferred_day span.wpcf7-form-control-wrap {
		width: calc(100% / 2 - 6px);
	}
	#mail input.formdate,
	#mail .wpcf7-select,
	input.other_time {
		width: 100%;
		max-width: 100% !important;
		font-size: 1rem !important;
		margin: 0 !important;
	}
}
@media screen and (max-width: 430px) {
	#mail .contact_phone_box {
		padding: 20px;
	}
	#mail .contact_form {
		
	}
	#mail .contact_form p.contact_form_kantan {
		font-size: 1.2rem;
	}
	
	/*日付*/
	#mail input.other_time {
		width: 100%;
		margin: 9px 0 0 0 !important;
	}
	
}
@media screen and (max-width: 320px) {
	#mail .tel-box img.for-woman-image {
		width: 50px;
	}
}

/****************************************
 * フォーム
 * **************************************/

/* iOSリセット */
input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}
select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	outline: none;
	background: transparent;
}
button,
input[type="submit"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: none;
	outline: none;
}
input[type="date"] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-color: white;
}


textarea {
	overflow: auto;
}
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="search"],
textarea {
	font-size: 1em;
	margin: 0;
	padding: 18px;
	max-width: 100%;
	width: 100%;
	outline: none;
	color: #000;
	vertical-align: bottom;
	transition: .3s;
	letter-spacing: 1px;
	line-height: 1;
	border-radius: 4px;
	border: 1px solid #ededed;
	background: #fafafa;
}
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
textarea:focus {
	border: 1px solid #20BFB2;
	background: #FFF;
	outline: none;
}
select {/*デフォルトスタイルをリセット*/
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
select {
	position: relative;
	top: -6px;
	width: 100%;
	padding: 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #ededed;
	background: #fafafa url(images/mail/select-arrow.jpg) right 50% no-repeat;
	background-size: 25px, 100%;
	font-size: 1em;
}
input[type=checkbox],
input[type=radio] {
	width: 25px;
	height: 25px;
	vertical-align: top;
	line-height: 1;
}

/*ボタン*/
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"],
.button:before,
button:before,
input[type="submit"]:before,
input[type="reset"]:before,
input[type="button"]:before,
.button:after,
button:after,
input[type="submit"]:after,
input[type="reset"]:after,
input[type="button"]:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
	display: inline-block;
	min-width: 280px;
	font-size: 1.3rem;
	background: #20BFB2;
	color: #FFF;
	font-weight: bold;
	padding: 24px;
	border-radius: 4px;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.2), 0 0 40px rgba(128, 128, 128, 20%);
}
.button:before,
button:before,
input[type="submit"]:before,
input[type="reset"]:before,
input[type="button"]:before,
.button:after,
button:after,
input[type="submit"]:after,
input[type="reset"]:after,
input[type="button"]:after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
	background: #178980;
}

@media screen and (max-width: 380px) {
	input[type="text"],
	input[type="tel"],
	input[type="email"],
	input[type="search"],
	textarea,
	select {
		font-size: .9em;
	}
}


/***************************************
 * ページナビゲーション
 * *************************************/

nav.navigation {
	overflow: hidden;
	float: none;
	max-width: 100%;
	text-align: center;
	padding: 0;
	margin: 60px 0 0;
}
nav.navigation h2.screen-reader-text {
	display: none;
}
nav.navigation .nav-links {
	width: 100%;
	display: flex;
    justify-content: center;
}
nav.navigation .page-numbers {
	display: inline-block;
	margin: 0 18px;
	padding: 0 1em;
	border-radius: 4px;
	width: auto;
	height: 48px;
	line-height: 48px;
}
nav.navigation .nav-links span.current {
	background: #F6FDFC;
	color: #20BFB2;
}
nav.navigation a {
	display: inline-block !important;
	color: #FFF;
}
nav.navigation .nav-links a.page-numbers {
	background: #20BFB2;
	color: #FFF;
}
nav.navigation .nav-links a.prev,
nav.navigation .nav-links a.next {
	width: auto;
}

@media screen and (max-width: 768px) {
	nav.navigation {
		display: block;
	}
}
@media screen and (max-width: 560px) {
	nav.navigation .page-numbers {
		margin: 0 6px;
		padding: 0 12px;
	}
}


/****************************************
 * WPネイティブCSS
 * **************************************/

.alignleft {
	float: left;
}
.alignright {
	float: right;
}
img[class*="wp-image-"],
img[class*="attachment-"] {
	max-width: 100%;
	height: auto;
}
img.alignright {
	display: block;
	margin: 0 0 0 auto;
}
img.alignleft {
	display: block;
	margin: 0 auto 0 0;
}
img.aligncenter {
	display: block;
	margin: 0 auto;
}
blockquote {
	display: block;
	-webkit-margin-before: 1em;
	-webkit-margin-after: 1em;
	-webkit-margin-start: 40px;
	-webkit-margin-end: 40px;
	margin: 50px;
	border-left: 1px solid #ededed;
	padding-left: 30px;
}
cite {
	font-size: .8em;
}
cite a {
	display: inline;
}

/* clearfix */
.clearfix {
	overflow: hidden;
	zoom: 1;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
@media screen and (max-width: 480px) {
	blockquote {
		margin: 30px;
	}
}

/****************************************
画像キャプション
*****************************************/
.wp-caption {
	text-align: right;
}
.wp-caption-text,
.gallery-caption　{
	font-size: 12px;
	margin: 0;
	color: #333;
}
.wp-caption img {
	margin: 0;
	padding: 0;
	border: 0 none;
	vertical-align: bottom;
}
.wp-caption-dd {
	margin: 0;
	padding: 0 4px 5px;
	font-size: 11px;
	line-height: 17px;
}


/****************************************
 * 投稿のカテゴリ
 * **************************************/

.category_list_box {
	margin-bottom: 90px;
}
.category_list_box ul.category_list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #20BFB2;
	border-radius: 12px;
}
.category_list_box ul.category_list li {
	width: 100%;
	text-align: center;
	position: relative;
}
.category_list_box ul.category_list li:not(:last-child)::before {
	content: "";
	display: inline-block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: #FFF;
	width: 1px;
	height: 47%;
}
.category_list_box ul.category_list li a {
	color: #FFF;
	padding: 18px 30px;
	font-weight: bold;
}
.category_list_box select.category_select {
	display: none;
}

@media screen and (max-width: 560px) {
	.category_list_box {
		margin-bottom: 60px;
	}
	.category_list_box select.category_select {
		display: block;
		position: static;
		padding: 18px 80px 18px 18px;
		background: none;
		width: 100%;
		color: #000;
		font-weight: bold;
		border: 2px solid #20BFB2;
		border-radius: 60px;
		background: url(images/common/icon_arrowBlueDown.png) no-repeat;
		background-position: center right 9px;
		background-size: 38px;
	}
}



/****************************************
 * 404 error
 * **************************************/

#error .error_box {
	text-align: center;
	font-size: 1.2rem;
}

@media screen and (max-width: 560px) {
	#error .error_box {
		font-size: 1rem;
		font-weight: bold;
	}
}
@media screen and (max-width: 430px) {
	#error .error_box {
		font-size: .9rem;
	}
}

/****************************************
 * フッター
 * **************************************/

footer {
	background: #F3FAE4;
	padding: 90px 0 0;
	font-size: 1rem;
}
footer .totop {
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 9;
}
footer .footer-logo {
	text-align: center;
	font-size: .8em;
	margin-bottom: 20px;
}
footer a {
	color: #000033;
}
footer a:hover {
	color: #8cc11f;
}

footer .license {
	margin-bottom: 45px;
}
footer .license .license-outline {
	border-bottom: 1px solid #EAF6CF;
	display: flex;
	align-items: center;
	padding-bottom: 45px;
	position: relative;
	gap: 60px;
}
footer .license .license-outline:after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 0;
	background: #FDFEFA;
	width: 100%;
	height: 1px;
}
footer .license ul.license-list1 {
	width: 37%;
	max-width: 400px;
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 18px;
}
footer .license ul.license-list1 li {
	
}
footer .license ul.license-list2 {
	width: 60%;
	max-width: 650px;
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
footer .license ul.license-list2 li {
	font-size: .92em;
}
footer .license ul.license-list2 li:not(:last-child):after {
	content: "／";
	margin: 0 3px;
}

@media screen and (max-width: 1194px) {
	footer .license .license-outline {
		gap: 30px;
	}
}
@media screen and (max-width: 768px) {
	footer .license .license-outline {
		flex-direction: column;
	}
	footer .license ul.license-list1 {
		width: 100%;
	}
	footer .license ul.license-list2 {
		width: 100%;
		max-width: 100%;
		display: inline-block;
		text-align: center;
	}
	footer .license ul.license-list2 li {
		display: inline-block;
	}
}
@media screen and (max-width: 430px) {
	footer .license ul.license-list2 {
		font-size: .97em;
	}
}


footer .footer_flex {
	display: flex;
	justify-content: space-between;
}
footer .footer_flex .footer_flex___information {
	max-width: 320px;
	min-width: 250px;
    width: 30%;
}
footer .footer_flex .footer_flex___information .footer_logo {
	text-align: center;
}
footer .footer_flex .footer_flex___information .footer_logo a.footer_lgoo_img {
	display: inline-block;
	text-align: center;
	margin-bottom: 18px;
}
footer .footer_flex .footer_flex___information p.infop {
	margin: 0 0 12px;
	font-size: 1rem;
	line-height: 1.4;
	font-weight: bold;
}
footer .footer_flex .footer_flex___information .footer_contact {
	margin-top: 18px;
}
footer .footer_flex .footer_flex___information .footer_contact a {
	width: 100%;
	margin-top: 18px;
}
footer .footer_flex .footer_flex___information .sns {
	text-align: center;
	margin-top: 30px;
}
footer .footer_flex .footer_flex___information img.sonpo {
	display: block;
	margin-top: 30px;
}

@media screen and (max-width: 768px) {
	footer .footer_flex {
		flex-direction: column;
	}
	footer .footer_flex .footer_flex___information {
		flex-direction: column;
		text-align: center;
		width: 100%;
		max-width: 100%;
	}
	footer .footer_flex .footer_flex___information .footer_logo,
	footer .footer_flex .footer_flex___information .footer_contact {
		width: 100%;
		max-width: 100%;
	}
	footer .footer_flex .footer_flex___information .footer_contact img.phone {
		width: 80%;
		max-width: 350px;
	}
	footer .footer_flex .footer_flex___information img.sonpo {
		display: none;
	}
	footer .footer_flex .footer_flex___information .footer_contact {
		margin: 18px 0 0;
	}
	footer .footer_flex .footer_flex___information .footer_contact img.phone {
		display: block;
		width: 70%;
		max-width: 250px;
        margin: 0 auto;
	}	
	footer .footer_flex .footer_flex___information .footer_contact .footer_contact-button {
		flex-direction: column;
		margin-top: 18px;
	}
	footer .footer_flex .footer_flex___information .footer_contact a {
		width: 80%;
		max-width: 350px;
        margin: 0 auto;
	}
	footer .footer_flex .footer_flex___information .footer_contact a:not(:first-child) {
		margin-top: 12px;
	}
	footer .footer_flex .footer_flex___information .sns {
		display: none;
	}
}
@media screen and (max-width: 768px) {
	
	
	
}



/* フッターナビゲーション 
 * *************************************/

footer .footer_flex .footer_flex___nav {
	max-width: 720px;
	min-width: 520px;
    width: 70%;

	margin-left: 60px;
	background: #FFF;
	padding: 45px;
	border-radius: 12px;
}
footer .footer_flex .footer_flex___nav a.home {
	display: inline-block;
	color: #000033;
	font-size: 1.1rem;
	font-weight: bold;
	padding-left: 26px;
	position: relative;
}
footer .footer_flex .footer_flex___nav a.home:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%) rotate(45deg);
	width: 9px;
	height: 9px;
	border-top: solid 2px #8cc11f;
	border-right: solid 2px #8cc11f;
}
footer .footer_flex .footer_flex___nav nav {}
footer .footer_nav_flex {
	margin-top: 12px;
	display: flex;
}
footer .footer_nav_flex nav.footer-gnav1 {
	max-width: 410px;
	width: 65%;
}
footer .footer_nav_flex nav.footer-gnav2 {
	max-width: 220px;
	width: 35%;
}
footer ul.footer_nav {
	list-style: none;
	margin: 0;
	padding: 0;
}
footer ul.footer_nav li {
	line-height: 2.2;
}
footer ul.footer_nav li span {
	display: inline-block;
	padding-left: 26px;
	line-height: 1.4;
	position: relative;
}
footer ul.footer_nav li span:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%) rotate(45deg);
	width: 9px;
	height: 9px;
	border-top: solid 2px #8cc11f;
	border-right: solid 2px #8cc11f;
}
footer ul.footer_nav li ul.sub-menu {
	list-style: none;
	margin: 0 0 0 1em;
	padding: 0;
}
footer ul.footer_nav li ul.sub-menu li {}
footer ul.footer_nav li ul.sub-menu li span {
	display: inline-block;
	padding-left: 26px;
	position: relative;
}
footer ul.footer_nav li ul.sub-menu li span:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%) rotate(45deg);
	width: 9px;
	height: 9px;
	border-top: solid 2px #CCEC8C;
	border-right: solid 2px #CCEC8C;
}
footer ul.footer_nav li.organize-nav ul.sub-menu {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}
footer ul.footer_nav li.organize-nav ul.sub-menu li {
	font-size: .9em;
	line-height: 1.8;
}
footer ul.footer_nav li a {
	opacity: 1;
	font-weight: bold;	
}

@media screen and (max-width: 1194px) {
	footer .footer_flex .footer_flex___nav {
		padding: 45px 32px;
	}
	footer .footer_flex .footer_flex___nav a.home,
	footer ul.footer_nav li span,
	footer ul.footer_nav li ul.sub-menu li span {
		padding-left: 22px;
		line-height: 1.4;
	}
	footer ul.footer_nav li.organize-nav ul.sub-menu {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media screen and (max-width: 1024px) {
	footer .footer_nav_flex nav.footer-gnav1 {
		max-width: 410px;
		width: 60%;
	}
	footer .footer_nav_flex nav.footer-gnav2 {
		max-width: 220px;
		width: 40%;
	}
}
@media screen and (max-width: 768px) {
	footer .footer_flex .footer_flex___nav {
		display: none;
	}
}


/* フッター説明とSNS
 * *************************************/

footer .footer_description {
	margin-top: 30px;
	font-size: .9em;
	font-weight: 600;
}
footer .sns-sp {
	display: none;
}

@media screen and (max-width: 768px) {
	footer .sns-sp {
		display: block;
		text-align: center;
		margin-top: 30px;
	}
	footer .sns-sp ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}
	footer .sns-sp ul li {
		display: inline-block;
		line-height: 0;
		vertical-align: middle;
		font-size: 1.5em;
	}
}


/* マスト 
 * *************************************/

footer .footer_must {
	padding: 30px 0;
	text-align: right;
}
footer .footer_must ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
footer .footer_must ul li {
	display: inline-block;
	font-size: .9rem;
}
footer .footer_must ul li:first-child {
	margin-right: 18px;
}

@media screen and (max-width: 768px) {
	footer .footer_must ul li {
		font-size: .8em;
	}
}
@media screen and (max-width: 559px) {
	footer .footer_must {
		margin-top: 30px;
	}
	footer .footer_must ul {
		text-align: center;
		display: flex;
		flex-direction: column;
		gap: 18px;
	}
}


/* コピーライト 
 * *************************************/

footer .copyright {
	padding: 30px 0;
	background: #8cc11f;
	color: #FFF;
}
footer .copyright a {
	color: #FFF;
}
footer .copyright #copyright{
	padding: 0;
	text-align: center;
}
footer .copyright #copyright span {
	display: block;
	font-size: .9em;
}
footer .copyright #copyright a {
	display: inline;
}

@media screen and (max-width: 768px) {
	footer .copyright #copyright span {
		font-size: .8em;
	}
}
@media screen and (max-width: 559px) {
	footer .copyright {
		padding: 30px 0 30vw;
	}
}
@media screen and (max-width: 559px) {
	footer .copyright {
		padding: 30px 0 38vw;
	}
}


/****************************************
 * 下部固定問い合わせ
 * **************************************/

.foot-contact {
	display: none;
}

@media screen and (max-width: 559px) {
	.foot-contact {
		display: block;
		width: 100%;
		position: fixed;
		bottom: 0;
		left: 0;
		padding: 18px;
		background: rgba(32, 191, 178, .8);
		z-index: 10;
	}
	.foot-contact p.foot-contact-msg {
		text-align: center;
		color: #ffff00;
		font-weight: 600;
		font-size: 1.3rem;
		margin: 0 0 9px 0;
	}
	.foot-contact ul.foot-contact-btn {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		align-items: stretch;
	}
	.foot-contact ul.foot-contact-btn li {
		width: calc(100% / 3 - 12px);
		padding: 12px 32px;
		border-radius: 4px;
	}
	.foot-contact ul.foot-contact-btn li.phone {
		background: #FFF;
	}
	.foot-contact ul.foot-contact-btn li.web {
		background: yellow;
		margin: 0 24px;
	}
	.foot-contact ul.foot-contact-btn li.line {
		background: #00B900;
	}
}
@media screen and (max-width: 430px) {
	.foot-contact {
		padding: 12px;
	}
	.foot-contact p.foot-contact-msg {
		font-size: 1.1rem;
	}
	.foot-contact ul.foot-contact-btn li {
		width: calc(100% / 3 - 8px);
		padding: 12px 18px;
	}
	.foot-contact ul.foot-contact-btn li.web {
		margin: 0 12px;
	}
}
@media screen and (max-width: 320px) {
	.foot-contact {
		padding: 9px;
	}
	.foot-contact p.foot-contact-msg {
		font-size: 1rem;
		margin: 0 0 3px 0
	}
	.foot-contact ul.foot-contact-btn li {
		width: calc(100% / 3 - 3px);
		padding: 9px 12px;
	}
	.foot-contact ul.foot-contact-btn li.web {
		margin: 0 7px;
	}
}