@charset "utf-8";

/*
Theme Name: ecoos
Author: minoru kubota
Version: 1
*/

/*
----------------------------------------
reset
----------------------------------------
*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

nav ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote: before, blockquote:after,
q: before, q:after {
	content: "";
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

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

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

.pc-none {
	display: none;
}

input,
select {
	vertical-align: middle;
}

input,
button,
textarea,
select {
	font-size: 1.6rem;
	margin: 0;
	padding: 0;
	background: none;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="number"],
input[type="date"],
select,
textarea {
	display: inline-block;
	max-width: 100%;
	background: #fff;
	border: solid 1px #ddd;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

input[type="radio"] {
	margin-right: 5px;
	transform: translateY(-2px);
}

input.l,
textarea {
	width: 100%;
}

select {
	padding: 10px 30px 10px 10px;
	background: #fff url(img/common/arrow-select.svg) right 10px center / 10px no-repeat;
}

input[type="submit"] {
	display: inline-block;
	padding: 10px 60px 10px 40px;
	letter-spacing: 2px;
	color: #fff;
	background: #35ae37 url(img/common/arrow-02-wh.svg) right 15px center / 24px no-repeat;
	border-radius: 6px;
	transition: all 0.2s;
	cursor: pointer;
}

input[type="submit"]:hover {
	background: #000 url(img/common/arrow-02-wh.svg) right 10px center / 24px no-repeat;
}

.wpcf7-back {
	display: inline-block;
	padding: 10px 30px;
	letter-spacing: 2px;
	background: #eee;
	border: solid 1px #ddd;
	border-radius: 6px;
	transition: all 0.2s;
	cursor: pointer;
	margin-right: 15px;
}

.wpcf7-back:hover {
	color: #fff;
	background: #333;
}

label {
	cursor: pointer;
}

input::-webkit-input-placeholder {
	color: #aaa;
	font-weight: normal;
}

.wpcf7c-conf,
.wpcf7c-conf {
	background: #fff !important;
	border: none !important;
}

input:-webkit-autofill {
	box-shadow: 0 0 0px 1000px white inset;
}

span.wpcf7-list-item {
	margin: 0 !important;
}

span.wpcf7-list-item label {
	display: inline-block;
	margin-right: 2rem;
	vertical-align: middle;
}

#sidebar > .search-form {
	margin: 0 0 30px 0;
	position: relative;
}

.search-form input[type="text"] {
	display: block;
	width: 100%;
	padding: 10px 40px 10px 10px;
	border: solid 1px #999;
	box-sizing: border-box;
	line-height: 2rem;
}

.search-form button {
	display: block;
	width: 40px;
	height: 40px;
	text-align: center;
	position: absolute;
	right: 1px;
	top: 1px;
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: url(img/common/icon-search.svg) center center / 16px no-repeat;
}

::-webkit-scrollbar {
	width: 5px;
}

::-webkit-scrollbar-track {
	background: #fafafa;
}

::-webkit-scrollbar-thumb {
	background: #ddd;
}

/*
----------------------------------------
clearfix
----------------------------------------
*/

.clearfix: before,
.clearfix:after {
	display: table;
	content: " ";
}
.clearfix:after {
	clear: both;
}

/*
----------------------------------------
common
----------------------------------------
*/

.left {
	text-align: left;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.video {
	max-width: 800px;
	margin: 30px auto;
}

.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/*
----------------------------------------
default
----------------------------------------
*/

html {
	font-size: 62.5%;
}

body {
	font-size: 1.6rem;
	line-height: 1.8;
	font-weight: normal;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	text-align: center;
	position: relative;
	min-width: 375px;
	-webkit-text-size-adjust: 100%;
}

a {
	color: #000;
	text-decoration: none;
}

ul,
ol {
	list-style: none;
	margin: 0;
}

ul.list,
ol.list {
	list-style: disc;
	margin-left: 20px;
}

img {
	max-width: 100%;
	height: auto;
}

figcaption {
	font-size: 1.2rem;
}

div.wpcf7 .ajax-loader {
	display: none !important;
}

/*
----------------------------------------
layout
----------------------------------------
*/

#wrapper {
	width: 100%;
	margin: 0 auto;
}

.wrap {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 20px;
	text-align: left;
}

/*
----------------------------------------
header
----------------------------------------
*/

#wrapper > header h1 {
	background: #eee;
	padding: 2px 10px;
	font-size: 1.2rem;
	font-weight: normal;
	text-align: left;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#nav-set,
#nav-set-sp {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 100%;
	padding: 15px;
	position: relative;
	z-index: 999;
	background: #fff;
}

#nav-set.fixed,
#nav-set-sp.fixed {
	position: fixed;
	top: -300px;
	left: 0;
	right: 0;
	z-index: 999;
	transition: all 0.8s;
}

#nav-set.fixed.active,
#nav-set-sp.fixed.active {
	top: 0;
}

#nav-set #logo,
#nav-set-sp #logo {
	width: 240px;
}

#nav-set #logo img,
#nav-set-sp #logo img {
	max-height: 78px;
	width: auto;
}

#nav-set-sp {
	display: none;
}

header .contact-set {
	width: 240px;
	text-align: left;
	position: relative;
}

.contact-set_b {
	width: 240px;
	text-align: left;
	position: relative;
	padding: 20px;
	border-radius: 20px;
}

header .contact-set .num {
	display: block;
	padding-left: 25px;
	font-family: "Josefin Slab", serif;
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1;
	color: #35ae37;
	background: url(img/common/icon-tel.svg) left center / 18px no-repeat;
}

header .contact-set .note {
	font-size: 1.1rem;
	padding-left: 25px;
}

.contact-set_b .note {
	font-size: 1.1rem;
	padding-left: 25px;
}

header .contact-set .mail a {
	display: block;
	font-size: 1.2rem;
	padding: 2px 30px 2px 0;
	background: url(img/common/arrow-bg.svg) right 5px bottom no-repeat;
	transition: all 0.2s;
}

header .contact-set .mail a:hover {
	background: url(img/common/arrow-bg.svg) right bottom no-repeat;
}

header .contact-set .mail a::before {
	content: url(img/common/icon-mail.svg);
	display: inline-block;
	width: 16px;
	margin: 0 6px 0 3px;
}

header .contact-set .line a {
	display: block;
	width: 32px;
	position: absolute;
	top: 0;
	right: 5px;
}

.contact-set_b .line a {
	display: block;
	width: 32px;
	position: absolute;
	top: 20px;
	right: 20px;
}

/* header-01 */

.contents .header-01 {
	margin-bottom: 30px;
	text-align: center;
}

.contents .header-01 .en {
	font-size: 4rem;
	font-weight: 600;
	color: #35ae37;
	letter-spacing: 1rem;
}

.contents .header-01 h2 {
	font-size: 2rem;
	font-weight: normal;
	letter-spacing: 1rem;
	margin-bottom: 20px;
}

/*
----------------------------------------
g-nav
----------------------------------------
*/

#g-nav > ul.wrap {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	padding: 0;
}

#g-nav > ul > li {
	position: relative;
}

#g-nav > ul > li > a {
	font-size: 1.6rem;
	text-align: center;
	display: block;
	padding: 15px 20px;
	position: relative;
}

#g-nav > ul > li > a::before {
	content: "";
	position: absolute;
	left: 50%;
	right: 50%;
	top: 3.3rem;
	height: 10px;
	background: #d4e67e;
	transition: all 0.2s;
}

#g-nav > ul > li:hover > a::before {
	left: 15px;
	right: 15px;
}

#g-nav > ul > li span {
	position: relative;
	z-index: 999;
}

#g-nav > ul > li .en {
	font-size: 1.4rem;
	font-family: "Josefin Slab", serif;
	font-weight: bold;
	display: block;
}

/* sub-menu */

#g-nav li ul {
	min-width: 100%;
	padding: 0 10px;
	box-sizing: border-box;
	position: absolute;
	top: 90%;
	left: 50%;
	background: #35ae37;
	border-radius: 8px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.25);
	color: #fff;
	visibility: hidden;
	opacity: 0;
	z-index: 999;
	transform: translateX(-50%);
	transition: all 0.2s;
}

#g-nav li:hover ul {
	top: 100%;
	visibility: visible;
	opacity: 1;
}

#g-nav li ul li {
	border-top: solid 1px #ccc;
}

#g-nav li ul li:first-child {
	position: relative;
	border: none;
}

#g-nav li ul li:first-child::before {
	content: "";
	border: solid 10px transparent;
	border-bottom: solid 12px #35ae37;
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
}

#g-nav li ul a {
	display: block;
	background: url(img/common/arrow-01-wh.svg) right 5px center / 5px no-repeat;
	padding: 10px 20px 10px 5px;
	font-size: 1.4rem;
	text-align: left;
	color: #fff;
	white-space: nowrap;
	transition: all 0.2s;
}

#g-nav li ul a:hover {
	background: url(img/common/arrow-01-wh.svg) right center / 5px no-repeat;
}

#sp-h,
#sp-contact,
#open-btn {
	display: none;
}

/*
----------------------------------------
page
----------------------------------------
*/

#page-ttl {
	background: #eee url(img/common/page-ttl-bg.png) center center / cover no-repeat;
	padding: 80px 20px;
	position: relative;
}

#feature #page-ttl {
	background: #eee url(img/page/feature/page-ttl-bg.png) center center / cover no-repeat;
}

#remains #page-ttl {
	background: #eee url(img/page/remains/page-ttl-bg.png) center center / cover no-repeat;
}

#adjustment #page-ttl {
	background: #eee url(img/page/adjustment/page-ttl-bg.png) center center / cover no-repeat;
}

#where #page-ttl {
	background: #eee url(img/page/where/page-ttl-bg.png) center center / cover no-repeat;
}

#disposal #page-ttl {
	background: #eee url(img/page/disposal/page-ttl-bg.png) center center / cover no-repeat;
}

#vacant #page-ttl {
	background: #eee url(img/page/vacant/page-ttl-bg.png) center center / cover no-repeat;
}

#price #page-ttl {
	background: #eee url(img/page/price/page-ttl-bg.png) center center / cover no-repeat;
}

#company #page-ttl {
	background: #eee url(img/page/company/page-ttl-bg.png) center center / cover no-repeat;
}

#staff #page-ttl {
	background: #eee url(img/page/staff/page-ttl-bg.png) center center / cover no-repeat;
}

#estimate #page-ttl {
	background: #eee url(img/page/estimate/page-ttl-bg.png) center center / cover no-repeat;
}

#recovery #page-ttl {
	background: #eee url(img/page/recovery/page-ttl-bg.png) center center / cover no-repeat;
}

#purchase #page-ttl {
	background: #eee url(img/page/purchase/page-ttl-bg.png) center center / cover no-repeat;
}

#page-ttl .box {
	display: inline-block;
	background: rgba(255, 255, 255, 0.9);
	padding: 20px 40px 30px;
	line-height: 1.4;
}

#page-ttl .box p.en {
	font-size: 4rem;
	font-weight: 600;
	text-transform: uppercase;
	color: #35ae37;
	letter-spacing: 4px;
}

#page-ttl .box h2 {
	font-size: 1.8rem;
	font-weight: normal;
	letter-spacing: 4px;
}

#page-ttl .box.logo {
	border: #35ae37;
	padding: 20px 40px;
}

#page-ttl .box.logo h2 {
	font-size: 2.4rem;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

#page-ttl .box.logo h2.en {
	font-family: "Josefin Slab", serif;
	font-weight: 600;
	color: #35ae37;
}

#page-ttl .logo img {
	max-height: 50px;
	width: auto;
	margin-bottom: 5px;
}

/*
----------------------------------------
topic-path
----------------------------------------
*/

.topic-path {
	padding: 10px 0;
}

.topic-path .wrap {
	text-align: left;
}

.topic-path i {
	margin: 0 5px;
}

/*
----------------------------------------
container
----------------------------------------
*/

#container {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-direction: row;
	text-align: left;
	margin-top: 30px;
	padding-bottom: 60px;
}

#container #contents {
	width: 75%;
	padding: 0 40px 0 0;
	box-sizing: border-box;
	margin-bottom: 40px;
}

#voice #container #contents {
	width: 100%;
	padding-right: 0;
}

#voice #container #sidebar {
	display: none;
}

#voice #container #contents .head-comment {
	margin: 0 20px 30px;
}

#voice #container #contents .head-comment h2 {
	font-size: 2.6rem;
	font-weight: bold;
	text-align: center;
}

#voice #container #contents .head-comment h2 span {
	color: #34ae37;
}

#voice #container #contents .head-comment .text {
	text-align: center;
}

#contents {
	position: relative;
	z-index: 99;
	background: #fff;
	padding: 40px 0 60px;
}

#head-contents {
	margin: 20px 0;
	text-align: left;
}

#sidebar {
	width: 25%;
	margin-bottom: 40px;
}

.sp {
	display: none;
}

/*
----------------------------------------
contents
----------------------------------------
*/

#contents > p,
#contents > figure {
	margin-bottom: 30px;
}

#contents .bnr {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	margin: 30px 0;
}

#contents .bnr figure {
	text-align: center;
	padding: 0 5px;
}

#contents .post {
}

.cat {
	display: inline-block;
	margin-right: 10px;
	margin-bottom: 10px;
}

.cat a,
.cat span {
	display: inline-block;
	font-size: 1.1rem;
	color: #35ae37;
	border: solid 1px #35ae37;
	padding: 2px 10px;
	transition: all 0.2s;
}

.cat a:hover {
	color: #fff;
	background: #35ae37;
}

.cat-list {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
}

.cat-list li {
	margin: 0 5px 5px 0;
}

.cat-list a {
	font-size: 1.4rem;
}

.name {
	display: inline-block;
	font-size: 1.4rem;
	margin-bottom: 10px;
}

.post .post-header {
	border-top: solid 1px #35ae37;
	border-bottom: solid 1px #35ae37;
	padding: 25px 0 20px;
	margin-bottom: 30px;
}

#contents .post .post-header h1,
#contents .post .post-header h1 a {
	line-height: 1.4;
	margin-bottom: 5px;
}

.post-contents h1,
.post-contents h2,
.post-contents h3,
.post-contents h4,
.post-contents h5,
.post-contents h6 {
	border-bottom: solid 1px #333;
	padding: 0 0 5px 0;
	margin-bottom: 20px;
}

.post .flex {
	margin: 20px 0;
}

.post .flex > .thumb {
	width: 32%;
	padding-right: 30px;
	box-sizing: border-box;
}

.post .flex > .txt {
	width: 100%;
}

.post .flex > .txt .thumb a {
	display: inline-block;
	border: solid 1px #ccc;
}

.post .flex > .thumb + .txt {
	width: 60%;
}

.user-comment {
	margin: 40px 0;
}

.post .more {
	text-align: right;
}

.post .more a {
	display: inline-block;
	padding: 2px 25px 2px 10px;
	margin: 10px 0;
	border-bottom: solid 2px #000;
	background: url(img/common/arrow-01-bk.svg) right 10px center / 5px no-repeat;
	position: relative;
	transition: all 0.2s;
}

.post .more a:hover {
	background: url(img/common/arrow-01-bk.svg) right 5px center / 5px no-repeat;
}

.post-contents p,
.post-contents a {
	font-size: 1.5rem;
}

.post-contents .photo {
	text-align: center;
}

.post-contents img {
	max-width: 100%;
	height: auto;
}

.post-contents .search-ans {
	background: #f3f3f3;
	padding: 10px 20px;
	margin-bottom: 30px;
}

.post-contents p {
	margin-bottom: 20px;
}

.post-contents ul,
.post-contents ol {
	margin-bottom: 30px;
}

.post-contents ul li {
	list-style: disc;
	margin-left: 30px;
}

.post-contents ol li {
	list-style: decimal;
	margin-left: 30px;
}

.post-contents blockquote {
	background: #f3f3f3 url() 20px 20px no-repeat;
	padding: 30px 60px 10px 60px;
	margin-bottom: 30px;
	border-radius: 12px;
}

.post-contents blockquote p,
.post-contents blockquote ul,
.post-contents blockquote ol {
	margin-bottom: 20px;
}

.post-nav {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 60px 0;
}

.post-nav .prev,
.post-nav .next {
	width: calc(40% - 20px);
}

.post-nav a {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	font-size: 1.5rem;
	padding: 0 0 0 2.5rem;
	position: relative;
	transition: all 0.2s;
}

.post-nav .prev a {
	background: url(img/common/arrow-back.svg) 10px center / 6px no-repeat;
}

.post-nav .prev a:hover {
	background: url(img/common/arrow-back.svg) 5px center / 6px no-repeat;
}

.post-nav .next a {
	flex-direction: row-reverse;
	padding: 0 2.5rem 0 0;
	background: url(img/common/arrow-01-bk.svg) right 10px center / 6px no-repeat;
}

.post-nav .next a:hover {
	background: url(img/common/arrow-01-bk.svg) right 5px center / 6px no-repeat;
}

.post-nav img {
	width: 60px;
	line-height: 1;
}

.post-nav .prev img {
	margin: 0 10px 0 0;
}

.post-nav .next img {
	margin: 0 0 0 10px;
}

.post-nav .back-link {
	width: 20%;
}

.post-nav .back-link a {
	display: block;
	text-align: center;
	padding: 15px 5px;
	box-sizing: border-box;
	border: solid 1px #ccc;
	transition: all 0.2s;
}

.post-nav .back-link a:hover {
	background: #000;
	color: #fff;
}

.page-nav .wp-pagenavi {
	clear: both;
	text-align: center;
	margin-top: 60px;
}

.page-nav .wp-pagenavi a,
.page-nav .wp-pagenavi span {
	font-size: 1.5rem;
	padding: 10px 15px;
	margin: 0 5px;
	transition: all 0.4s;
}

.page-nav .wp-pagenavi a:hover,
.page-nav .wp-pagenavi span.current {
	background: #35ae37;
	border: solid 1px #35ae37;
	color: #fff;
}

.addtoany_share_save_container {
	background: #fafafa;
	padding: 20px;
	margin: 40px 0;
}

#contents section.relation-post {
	padding: 0;
}

#contents section.relation-post h2 {
	text-align: center;
	background: #333;
	color: #fff;
	font-size: 1.6rem;
	padding: 5px;
	margin-bottom: 0;
}

#contents section.relation-post .flex {
	padding: 10px;
	margin-bottom: 0;
}

#contents section.relation-post .flex h3 {
	font-size: 1.6rem;
}

#contents section.relation-post ul.cat-list {
	margin-bottom: 5px;
}

#contents section.relation-post ul.cat-list a {
	font-size: 1.1rem;
}

#contents section.relation-post p.user {
	font-size: 1.3rem;
}

/*
----------------------------------------
sidebar
----------------------------------------
*/

#sidebar .back-link a {
	display: block;
	padding: 15px;
	text-align: center;
	border: solid 1px #ccc;
	margin-bottom: 60px;
	transition: all 0.2s;
}

#sidebar .back-link a:hover {
	background: #35ae37;
	color: #fff;
}

#sidebar .bnr {
	margin-bottom: 15px;
}

#sidebar .bnr figure {
	margin-bottom: 10px;
}

#sidebar .bnr figcaption {
	text-align: left;
}

#sidebar > div {
	margin-bottom: 15px;
}

.side-menu h2 {
	font-size: 1.6rem;
	font-weight: normal;
	color: #35ae37;
	border-bottom: solid 1px #ccc;
	padding: 5px 0 5px 15px;
	position: relative;
}

.side-menu h2::before {
	content: "";
	width: 4px;
	background: #35ae37;
	position: absolute;
	top: 5px;
	bottom: 5px;
	left: 0;
}

.side-menu > ul {
	margin-bottom: 30px;
}

.side-menu .en {
	display: none;
}

.side-menu > ul > li {
	border-bottom: solid 1px #ccc;
}

.side-menu li li {
	border-top: solid 1px #ccc;
}

.side-menu ul a,
.side-menu .cat-item-none {
	display: block;
	padding: 15px 30px 15px 0;
	position: relative;
	transition: all 0.2s;
}

.side-menu ul a {
	background: url(img/common/arrow-01.svg) right 10px center / 6px no-repeat;
}

.side-menu ul a:hover {
	background: url(img/common/arrow-01.svg) right 5px center / 6px no-repeat;
}

.side-menu li li a:before {
	content: "-";
	margin-right: 10px;
}

/*
----------------------------------------
footer
----------------------------------------
*/

/* contact */

.contact-box {
	background: #fafafa;
	padding-top: 30px;
}

.contents .contact-set {
	background: url(img/common/bg-contact.png) center center / cover no-repeat;
	padding: 60px 0;
}

.contents .contact-set > .flex {
	justify-content: space-between;
}

.contents .contact-set > .flex > div {
	width: 48.5%;
	box-sizing: border-box;
	background: #fff;
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}

.contents .contact-set .tel-box {
	padding: 20px 20px 20px 60px;
	text-align: center;
	position: relative;
}

.contents .contact-set .balloon {
	position: absolute;
	left: -20px;
	top: -20px;
}

.contents .contact-set .tel {
	font-family: "Josefin Slab", serif;
	font-size: 4.8rem;
	font-weight: 600;
	line-height: 1.2;
	color: #35ae37;
}

.contents .contact-set .tel::before {
	content: url(img/common/icon-tel.svg);
	display: inline-block;
	width: 32px;
	margin-right: 10px;
}

.contents .contact-set .mail-box .mail {
	width: 80%;
	padding: 15px 20px;
	box-sizing: border-box;
}

.contents .contact-set .mail-box .ttl {
	font-size: 1.8rem;
	position: relative;
	padding-left: 34px;
	margin-bottom: 5px;
}

.contents .contact-set .mail-box .ttl::before {
	content: url(img/common/icon-mail.svg);
	display: inline-block;
	width: 24px;
	margin-right: 10px;
	position: absolute;
	left: 0;
	top: 2px;
}

.contents .contact-set a.btn {
	display: block;
	padding: 5px;
	text-align: center;
	background: #35ae37;
	color: #fff;
	transition: all 0.1s;
}

.contents .contact-set a.btn:hover {
	background: #4cbf4c;
}

.contents .contact-set .note {
	text-align: center;
	margin-top: 5px;
}

.contents .contact-set .line {
	width: 20%;
	padding: 20px 0;
	box-sizing: border-box;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.4;
}

.contents .contact-set .line a img {
	width: 36px;
	margin-top: 10px;
}

/* bnr */

.service-bnr-set {
	margin: 80px auto;
	justify-content: space-between;
}

.service-bnr-set figure {
	width: calc(50% - 15px);
}

.service-bnr-set figure a {
	display: block;
	position: relative;
	line-height: 0.5;
}

.service-bnr-set figure a::after {
	content: "";
	border: solid 6px #28c668;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: 0;
	transition: all 0.2s;
}

.service-bnr-set figure a:hover::after {
	opacity: 1;
}

/* area */

.area-box {
	margin: 60px 0;
}

.area-box h3 {
	font-size: 1.8rem;
}
@media screen and (max-width: 1000px) {
	.area-box h3 {
		font-size: 1.2rem;
	}
	.area-box .header-01 p {
		padding: 0 15px;
	}
}

.area-box .flex > figure {
	width: 40%;
	padding-right: 20px;
	box-sizing: border-box;
}

.area-box .flex > dl {
	width: 60%;
}

.area-box .flex > dl dt {
	font-size: 2rem;
	line-height: 1.6;
	border-left: solid 5px #28c668;
	padding-left: 15px;
	margin-bottom: 10px;
}

.area-box .flex > dl dd {
	font-size: 1.5rem;
	margin-bottom: 20px;
}

.area-box .flex > dl ul {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	color: #555;
}

.area-box .flex > dl li::before {
	display: inline-block;
	content: "/";
	margin: 0 10px;
}

.area-box .flex > dl li:first-child::before {
	display: none;
}

.area-box .flex > dl a {
	color: #555;
	transition: 0.2s;
	/*text-decoration: underline;*/
}

.area-box .flex > dl a:hover {
	color: #35ae37;
	text-decoration: underline;
}

footer {
	background: #fafafa;
	font-size: 1.4rem;
	position: relative;
	z-index: 999;
}

footer .wrap {
	padding: 40px 20px;
}

footer .company {
	width: 20%;
	line-height: 1.6;
}

footer .company figure {
	margin-bottom: 10px;
}

footer .company .logo {
	max-height: 78px;
}

footer .bottom-nav {
	width: 60%;
	padding: 0 40px;
	box-sizing: border-box;
}

footer .bottom-nav .flex {
	justify-content: space-between;
}

footer .bottom-nav .nav li {
	margin-bottom: 4px;
}

footer .bottom-nav .nav a {
	display: block;
	background: url(img/common/arrow-01.svg) left center / 5px no-repeat;
	padding-left: 15px;
}

footer .btn-set {
	width: 20%;
}

footer .btn-set li {
	margin-bottom: 15px;
}

footer .btn a {
	display: block;
	padding: 20px 10px 20px 60px;
	background: #fff;
	border-radius: 8px;
	transition: all 0.2s;
}

footer .btn.line a {
	background: #35ae37 url(img/common/icon-line-wh.svg) 15px center / 30px no-repeat;
	color: #fff;
}

footer .btn.line a:hover {
	background: #4cbf4c url(img/common/icon-line-wh.svg) 15px center / 30px no-repeat;
}

footer .btn.mail a {
	background: #fff url(img/common/icon-mail.svg) 15px center / 30px no-repeat;
	border: solid 1px #ccc;
}

footer .btn.mail a:hover {
	background: #fafafa url(img/common/icon-mail.svg) 15px center / 30px no-repeat;
}

.copyright {
	background: #555;
	color: #fff;
	padding: 10px 20px;
	font-size: 1.2rem;
}

.copyright a {
	color: #fff;
}

#page-top {
	display: block;
	width: 60px;
	height: 60px;
	line-height: 60px;
	font-size: 3rem;
	text-align: center;
	transition: all 0.4s;
	position: absolute;
	top: -66px;
	right: 10px;
}

#bottom-fix {
	position: fixed;
	right: 20px;
	bottom: 60px;
	z-index: 9999;
}

#bottom-fix .bottom-estimate-text,
#bottom-fix .bottom-estimate::before,
#bottom-fix .bottom-estimate-text2 {
	display: none;
}

#footer-btn {
	display: none;
	position: absolute;
	right: 2%;
	top: 20%;
	font-size: 3rem;
	transition: all 0.4s;
}

.bottom-hidden-btn {
	position: relative;
	display: inline-block;
	top: 20%;
	width: 40px;
	height: 40px;
	background-color: #fff;
}

.bottom-hidden-btn::before,
.bottom-hidden-btn::after {
	position: absolute;
	content: "";
	display: block;
	transition: all 0.4s;
	background: #35ae37;
	left: 50%;
	top: 50%;
	width: 50%;
	height: 2px;
	transform: translate(-50%, -50%);
}

.bottom-hidden-btn::before {
	transform: translate(-50%, -50%) rotate(90deg);
}

.bottom-hidden-btn.open:before {
	transform: translate(-50%, -50%) rotate(0deg);
}

#bottom-fix .contact a {
	font-size: 2rem;
	background: #777;
}

#bottom-fix .contact a:hover {
}

.bottom-estimate {
	align-items: center;
	justify-content: center;
	position: relative;
	display: none;
}

.bottom-estimate::before {
	position: absolute;
	content: "電話・メール・LINEにて";
	width: 42%;
	background-color: #f41a1e;
	color: #fff;
	font-size: 1.2rem;
	font-weight: bold;
	font-family: "Noto Sans JP";
	padding: 0 6px;
	border-radius: 20px;
	top: -15%;
	left: 28%;
}

.bottom-estimate-texts {
	display: flex;
}

#bottom-fix .bottom-estimate-text {
	position: relative;
	font-size: 1.5rem;
	background-color: #fff;
	color: #35ae36;
	padding: 5px 13px 0 13px;
	line-height: 1.125;
}

#bottom-fix .bottom-estimate-text::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -5px;
	border: 4px solid transparent;
	border-left: 10px solid #fff;
}

#bottom-fix .bottom-estimate-text2 {
	color: #fff;
	font-size: 2.4rem;
	font-weight: bold;
	padding-left: 12px;
}

#bottom-fix .bottom-estimate-text2 span {
	color: #fae64a;
}

#page-top a:hover {
}

.bottom-hidden {
	display: none;
	background-color: #f1f1df;
	padding: 0 10px 5px;
}

.bottom-hidden-text {
	padding: 12px 30px 9px 0;
	justify-content: center;
}

.bottom-hidden-text img {
	width: 77px;
	right: 10px;
	position: absolute;
}

.bottom-hidden-text p {
	color: #35ae36;
	font-size: 1.9rem;
	text-align: left;
	font-weight: bold;
	line-height: 1.3;
}

.bottom-hidden-text span {
	font-size: 1.8rem;
}

.bottom-tellbox {
	position: relative;
	background-color: #35ae36;
	color: #fff;
	font-weight: bold;
	padding: 3px 0 2px;
	line-height: 1.4;
}

.bottom-tellbox p {
	font-size: 1.4rem;
	line-height: 1.2;
}

.hidden-tell span {
	font-size: 1.8rem;
	color: #fff;
	letter-spacing: 0.22rem;
}

.bottom-tellbox-items {
	display: flex;
	justify-content: center;
	align-items: center;
}

.bottom-tellbox-items ._wrapper {
	line-height: 1.2;
	text-align: left;
	color: #fff;
}

.bottom-tellbox-items img {
	width: 25%;
	padding-right: 6px;
}

.bottom-hidden-line {
	display: flex;
	justify-content: space-between;
}

.bottom-hidden-line a {
	background-color: #fff;
	padding: 0.4rem;
}

/*
.bottom-hidden-line img {
  width: 32px;
}
*/
.bottom-hidden-line img {
	margin: auto;
}

.bottom-line-text {
	color: #35ae36;
	font-size: 1.5rem;
	text-align: center;
	line-height: 1.6;
}

.bottom-line-text span {
	font-weight: bold;
	color: #35ae36;
}

.bottom-line {
	padding-left: 17px;
}

.bottom-mail {
	padding-left: 2px;
}

.dot {
	background-color: #fae64a;
	border-radius: 50%;
	width: 12px;
	height: 12px;
}

.note {
	font-size: 1.2rem;
}

.note-box {
	background: #fafafa;
	padding: 25px;
	margin: 20px 0;
}

.note-box dt {
	font-weight: bold;
	margin-bottom: 10px;
}

.note-box dd {
	font-size: 1.5rem;
}

.note-box dd ul {
	padding-left: 1.5rem;
	text-indent: -1.5rem;
}

.req {
	display: inline-block;
	padding: 0 8px;
	background: #e65c5c;
	color: #fff;
	font-size: 1.2rem;
	margin-left: 10px;
}

.custom-wpcf7c-confirmed .req {
	display: none;
}

/*
----------------------------------------
flex
----------------------------------------
*/

.flex {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}

.bottom-hidden-line {
	flex-wrap: nowrap;
	margin: 15px 0 15px;
	justify-content: center;
}

.flex.nowrap {
	flex-wrap: nowrap;
}

.flex.reverce {
	flex-direction: row-reverse;
}

.flex.item-center {
	align-items: center;
}

.flex > li {
	padding: 5px;
}

/* column */

.flex .box.pic {
	width: 40%;
	padding: 0 20px 0 0;
	box-sizing: border-box;
	text-align: center;
}

.flex.reverce .box.pic {
	padding: 0 0 0 20px;
}

.flex .box.txt {
	width: 60%;
	box-sizing: border-box;
	padding: 0;
	margin-bottom: 5px;
}

#contents .flex .box.txt h1,
#contents .flex .box.txt h2,
#contents .flex .box.txt h3 {
	font-size: 2rem;
}

/* box */

.flex .box {
	padding: 10px;
	box-sizing: border-box;
	position: relative;
}

.flex .box .num {
	position: absolute;
	left: 5px;
	top: 5px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	background: #000;
	color: #fff;
	text-align: center;
	font-size: 1.8rem;
}

.flex.box-02 .box {
	width: 50%;
}

#contents .flex.box-02 h1,
#contents .flex.box-02 h2,
#contents .flex.box-02 h3 {
	font-size: 2rem;
}

.flex.box-03 .box {
	width: 33.3333%;
}

#contents .flex.box-03 h1,
#contents .flex.box-03 h2,
#contents .flex.box-03 h3,
#contents .flex.box-03 h4 {
	font-size: 1.8rem;
}

.flex.box-04 .box {
	width: 25%;
	font-size: 1.3rem;
}

#contents .flex.box-04 h1,
#contents .flex.box-04 h2,
#contents .flex.box-04 h3,
#contents .flex.box-04 h4,
#contents .flex.box-04 h5 {
	font-size: 1.6rem;
}

.flex.box-05 .box {
	width: 20%;
	font-size: 1.3rem;
}

.flex.box-06 .box {
	width: 16.6666%;
	font-size: 1.3rem;
}

/*
----------------------------------------
font
----------------------------------------
*/

.acf-input {
	font-size: 62.5%;
}

.acf-input h2 {
	font-weight: bold !important;
	color: #444;
	background: #f9f9f9;
	border: solid 1px #e1e1e1;
	margin-bottom: 20px !important;
}

.en {
	font-family: "Josefin Slab", serif;
}

.gothic {
	font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", YuGothic, sans-serif;
}

.mincho {
	font-family: ’ヒラギノ明朝 ProN W3’, ’Hiragino Mincho ProN’, ’游明朝’, YuMincho, ’ＭＳ Ｐ明朝’, ’ＭＳ 明朝’, serif;
}

strong {
	font-weight: normal;
	color: #35ae37;
}

/*
----------------------------------------
h1-h6
----------------------------------------
*/

h1.center,
h2.center,
h3.center,
h4.center,
h5.center,
h6.center {
	text-align: center;
}

.contents h1,
.contents h2,
.contents h3,
.contents h4,
.contents h5,
.contents h6 {
	margin-bottom: 15px;
	font-weight: normal;
	line-height: 1.5;
}

.contents h1 {
	font-size: 2.4rem;
}

.contents h2 {
	font-size: 2.2rem;
}

.contents h3 {
	font-size: 2rem;
}

.contents h4,
.contents h5,
.contents h6 {
	font-size: 1.8rem;
}

.contents .heading-01,
.contents .heading-02,
.contents .heading-03,
.contents .heading-04,
.contents .heading-05,
.contents .heading-06 {
	margin-bottom: 20px;
}

/* heading-01 */

.contents .heading-01 {
	border-left: solid 5px #35ae37;
	padding: 5px 0 5px 15px;
}

/* heading-02 */

.contents .heading-02 {
	border-bottom: solid 1px #ddd;
	padding: 5px 0 5px 20px;
	position: relative;
}

.contents .heading-02::before {
	content: "";
	width: 4px;
	background: #35ae37;
	position: absolute;
	left: 0;
	top: 5px;
	bottom: 5px;
}

/* heading-03 */

.contents .heading-03 {
	color: #35ae37;
}

/* heading-04 */

.contents .heading-04 {
	text-align: center;
	letter-spacing: 4px;
	position: relative;
	padding-bottom: 35px;
}

.contents .heading-04 span {
	color: #35ae37;
}

.contents .heading-04::after {
	content: "";
	width: 1px;
	height: 20px;
	background: #000;
	position: absolute;
	left: 50%;
	bottom: 0;
}

/* heading-05 */

.contents .heading-05 {
	border-bottom: solid 1px #999;
	padding-bottom: 5px;
}

/* heading-06 */

.contents .heading-06 {
	color: #fff;
	background: #333;
	padding: 10px 15px;
	border-radius: 5px;
	position: relative;
}

.contents .heading-06:after {
	content: "";
	width: 0;
	height: 0;
	border: solid 8px transparent;
	border-top: solid 10px #333;
	position: absolute;
	top: 100%;
	left: 40px;
}

/*
----------------------------------------
bottun
----------------------------------------
*/

.btn-01 a,
.btn-02 a,
.btn-03 a,
.btn-04 a,
.btn-05 a,
.btn-06 a {
	text-decoration: none;
	color: #000;
	transition: all 0.2s;
}

.btn-01.center a,
.btn-02.center a,
.btn-03.center a,
.btn-04.center a,
.btn-05.center a,
.btn-06.center a {
	margin: 20px 5px;
}

.btn-01 a {
	display: inline-block;
	padding: 10px 40px 10px 30px;
	color: #fff;
	background: #000 url(img/common/arrow-01-wh.svg) right 15px center / 5px no-repeat;
	letter-spacing: 2px;
	position: relative;
}

.btn-01 a:hover {
	background: #35ae37 url(img/common/arrow-01-wh.svg) right 10px center / 5px no-repeat;
}

.btn-02 {
	text-align: center;
}

.btn-02 a {
	display: inline-block;
	padding: 5px 35px 5px 20px;
	border-radius: 5px;
	border: solid 1px #35ae37;
	background: #fff url(img/common/arrow-01.svg) right 15px center / 5px no-repeat;
}

.btn-02 a:hover {
	color: #fff;
	background: #35ae37 url(img/common/arrow-01-wh.svg) right 10px center / 5px no-repeat;
}

.btn-03 {
	text-align: center;
}

.btn-03 a {
	display: inline-block;
	padding: 10px 60px 10px 40px;
	font-size: 1.8rem;
	letter-spacing: 2px;
	color: #fff;
	background: #35ae37 url(img/common/arrow-02-wh.svg) right 15px center / 24px no-repeat;
}

.btn-03 a:hover {
	background: #000 url(img/common/arrow-02-wh.svg) right 10px center / 24px no-repeat;
}

.btn-04 a {
	display: block;
	padding: 5px 40px 5px 20px;
	letter-spacing: 2px;
	border: solid 1px #35ae37;
	text-align: center;
	color: #fff;
	background: #35ae37 url(img/common/arrow-02-wh.svg) right 10px center / 24px no-repeat;
}

.btn-04 a:hover {
	color: #35ae37;
	background: #fff url(img/common/arrow-02.svg) right 5px center / 24px no-repeat;
}

.btn-04.wh a {
	color: #35ae37;
	background: #fff url(img/common/arrow-02.svg) right 10px center / 24px no-repeat;
}

.btn-04.wh a:hover {
	color: #fff;
	background: #35ae37 url(img/common/arrow-02-wh.svg) right 5px center / 24px no-repeat;
}

.pdf {
	margin: 20px 0;
}

.back-link a {
	display: inline-block;
	border: solid 1px #ddd;
	padding: 10px 20px 10px 30px;
	background: url(img/common/arrow-back.svg) 15x center / 5px no-repeat;
	transition: all 0.2s;
}

.back-link a:hover {
	background: #eee url(img/common/arrow-back.svg) 10px center / 5px no-repeat;
}

/*
----------------------------------------
table
----------------------------------------
*/

table caption {
	caption-side: bottom;
	padding-top: 15px;
	font-size: 1.3rem;
}

table.cell-02 th {
	width: 25%;
}

table.cell-02.fixed th,
table.cell-02.fixed td {
	width: 50%;
}

table.cell-03.fixed th,
table.cell-03.fixed td {
	width: 33.3333%;
}

table.cell-04.fixed th,
table.cell-04.fixed td {
	width: 25%;
}

table.cell-05.fixed th,
table.cell-05.fixed td {
	width: 20%;
}

table.cell-06.fixed th,
table.cell-06.fixed td {
	width: 16.6666%;
}

/* table-01 */

.table-01 {
	width: 100%;
	text-align: left;
	border-top: solid 1px #ccc;
	border-left: solid 1px #ccc;
	margin: 30px 0;
}

.table-01 thead th,
.table-01 thead td {
	color: #fff;
	background: #000;
	text-align: center;
}

.table-01 th {
	padding: 15px;
	border-bottom: solid 1px #ccc;
	border-right: solid 1px #ccc;
	background: #f9f9f9;
	font-weight: normal;
	vertical-align: top;
}

.table-01 td {
	padding: 15px;
	border-bottom: solid 1px #ccc;
	border-right: solid 1px #ccc;
	vertical-align: top;
}

/* table-02 */

.table-02 {
	width: 100%;
	text-align: left;
	border-top: solid 1px #ccc;
	margin: 30px 0;
}

.table-02 th {
	padding: 20px 10px;
	border-bottom: solid 1px #ccc;
	font-weight: normal;
}

.table-02 td {
	padding: 20px 10px;
	border-bottom: solid 1px #ccc;
}

/*
----------------------------------------
dl
----------------------------------------
*/

.dl-01 {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.dl-01 > dt {
	width: 30%;
	padding: 10px 40px 10px 0;
	box-sizing: border-box;
	text-align: right;
}

.dl-01 > dd {
	width: 70%;
	padding: 10px 0;
}

.dl-02 {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	font-size: 1.4rem;
	border-bottom: solid 1px #ccc;
	margin-bottom: 30px;
}

.dl-02 > dt {
	width: 40%;
	padding: 5px;
	box-sizing: border-box;
	background: #fafafa;
	text-align: center;
	border-top: solid 1px #ccc;
}

.dl-02 > dd {
	width: 60%;
	padding: 5px 0 5px 20px;
	box-sizing: border-box;
	border-top: solid 1px #ccc;
}

.dl-03 {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

.dl-03 dt {
	width: 24%;
	margin-bottom: 10px;
	border: solid 1px #000;
	box-sizing: border-box;
	font-size: 1.3rem;
	padding: 2px;
	text-align: center;
}

.dl-03 dd {
	width: 26%;
	margin-bottom: 10px;
	padding: 0 10px;
	box-sizing: border-box;
	font-size: 1.5rem;
}

.dl-03 dd.l {
	width: 76%;
}

.dl-04 {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
}

.dl-04 dt {
	border: solid 1px #35ae37;
	padding: 35px;
	color: #35ae37;
	font-size: 1.8rem;
	box-sizing: border-box;
	white-space: nowrap;
	margin-right: 40px;
	position: relative;
}

.dl-04 dt::before {
	content: "";
	border: solid 15px transparent;
	border-left: solid 20px #35ae37;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(100%, -50%);
}

.dl-04 dt::after {
	content: "";
	border: solid 14px transparent;
	border-left: solid 19px #fff;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(100%, -50%);
}

.dl-04 dd {
	font-size: 1.5rem;
}

.dl-05 {
	margin-bottom: 40px;
}

.dl-05 dt {
	background: #35ae37;
	color: #fff;
	text-align: center;
	padding: 2px;
	font-size: 1.8rem;
	letter-spacing: 4px;
}

.dl-05 dd {
	background: #f3faf4;
	padding: 20px 25px;
	font-size: 1.5rem;
}

.dl-06 {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.dl-06 dt {
	width: 25%;
	padding: 20px 10px;
	box-sizing: border-box;
	text-align: center;
	background: #35ae33;
	color: #fff;
}

.dl-06 dt .en {
	font-size: 2.4rem;
}

.dl-06 dd {
	width: 75%;
	padding-left: 30px;
	box-sizing: border-box;
	font-size: 1.5rem;
}

/*
----------------------------------------
faq
----------------------------------------
*/

#contents #faq-menu {
	border: double 3px #00b900;
	padding: 30px;
	margin: 60px 0;
	box-sizing: border-box;
}

#faq-menu .flex {
	justify-content: space-between;
}

#faq-menu .flex > div {
	width: calc(50% - 15px);
}

#faq-menu h2 {
	border-bottom: solid 1px #00b900;
}

#faq-menu h2 a {
	color: #35ae37;
	font-size: 2rem;
}

#faq-menu li a {
	display: block;
	padding: 10px 0 10px 40px;
	font-size: 1.6rem;
	line-height: 1.4;
	position: relative;
}

#faq-menu li a::before {
	display: inline-block;
	content: "?";
	font-family: "Josefin Slab", serif;
	font-size: 1.6rem;
	text-align: center;
	line-height: 34px;
	width: 30px;
	height: 30px;
	color: #fff;
	background: #35ae37;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 6px;
}

.faq-list dl {
	border-top: dashed 2px #35ae37;
	padding-top: 25px;
}

.faq-01 dt {
	font-size: 2rem;
	padding: 25px 0 10px 5rem;
	border-top: solid 1px #ccc;
	position: relative;
}

.faq-list dd {
	margin-bottom: 25px;
}

/* flow */

.flow.flex .box {
	padding: 10px 40px;
	position: relative;
}

.flow.flex .box:first-child:before,
.flow.flex.box-02 .box:nth-child(2n + 1):before,
.flow.flex.box-03 .box:nth-child(3n + 1):before,
.flow.flex.box-04 .box:nth-child(4n + 1):before,
.flow.flex.box-05 .box:nth-child(5n + 1):before,
.flow.flex.box-06 .box:nth-child(6n + 1):before {
	display: none;
}

/*
----------------------------------------
gallery
----------------------------------------
*/

.gallery {
	width: 100%;
	max-height: 450px;
	margin: 20px auto;
	overflow: auto;
}

.gallery figure {
	width: 200px;
	padding: 0 5px 2px 5px;
	box-sizing: border-box;
	margin-bottom: 0 !important;
}

.gallery.box-100 figure {
	width: 100px;
}

.gallery.box-150 figure {
	width: 150px;
}

.gallery.box-200 figure {
	width: 200px;
}

.gallery.box-250 figure {
	width: 250px;
}

.gallery.box-300 figure {
	width: 300px;
}

/*
----------------------------------------
slider
----------------------------------------
*/

.slider {
	margin: 30px 0 60px 0;
	text-align: center;
}

.slider .slick-slide img {
	display: inline-block;
}

.slider.thumb-slider {
	margin: 0;
}

.slider.thumb-slider + .thumb {
	margin-bottom: 40px;
}

.slider.thumb-slider + .thumb figure {
	padding: 0 5px;
	box-sizing: border-box;
}

.slider .slick-prev,
.slider .slick-next {
	width: 40px;
	height: 60px;
	z-index: 999;
}

.slider .slick-prev {
	left: 0;
}

.slider .slick-next {
	right: 0;
}

.slider .slick-prev::before,
.slider .slick-next::before {
	display: block;
	content: "";
	width: 40px;
	height: 60px;
	opacity: 1;
	transition: all 0.2s;
}

.slider .slick-prev::before {
	background: #35ae37 url(img/common/arrow-prev.svg) center center / 10px no-repeat;
	border-radius: 0 4px 4px 0;
}

.slider .slick-prev:hover::before {
	background: #35ae37 url(img/common/arrow-prev.svg) left 10px center / 10px no-repeat;
}

.slider .slick-next::before {
	background: #35ae37 url(img/common/arrow-next.svg) center center / 10px no-repeat;
	border-radius: 4px 0 0 4px;
}

.slider .slick-next:hover::before {
	background: #35ae37 url(img/common/arrow-next.svg) right 10px center / 10px no-repeat;
}

.slider.slick-dotted.slick-slider {
	margin: 0 0 60px 0;
}

.slider .slick-dots {
	bottom: -30px;
}

/*
----------------------------------------
top
----------------------------------------
*/

#top-main-img {
	background: #eee;
	line-height: 1;
}

/*
----------------------------------------
voice
----------------------------------------
*/

#voice .user,
#voice .star {
	display: inline-block;
	margin-bottom: 5px;
}

#voice .user {
	font-size: 1.6rem;
	margin-right: 1rem;
}

#voice .star {
	color: #ccc;
	letter-spacing: 3px;
}

#voice .star span {
	color: #e6d273;
}

#voice .faq-list {
	margin: 30px 0;
}

#voice .faq-list dl {
	border-top: dotted 1px #333;
}

#voice .faq-list dt {
	padding: 2px 0 5px 50px;
}

#voice .faq-list dt::before {
	font-size: 2rem;
	width: 36px;
	height: 36px;
	line-height: 42px;
}

#voice .faq-list dd {
	border-bottom: dotted 1px #333;
	padding-bottom: 5px;
}

#voice .comment {
	background: #fafafa;
	margin-top: 20px;
	padding: 20px 25px 5px;
}

#voice .comment h2 {
	color: #35ae37;
	background: url(img/common/icon-voice.svg) left center / 16px no-repeat;
	padding: 5px 0 5px 25px;
}

/* archive */

#voice .post-archive ul.cat-list {
	margin-bottom: 5px;
}

#voice .post-archive .user {
	font-size: 1.4rem;
}

#voice.archive #contents .post {
	border: solid 1px #ddd;
	padding: 5px 25px;
	margin-bottom: 30px;
}

#voice.archive .user-comment {
	margin: 10px 0;
	font-size: 1.4rem;
}

#voice.archive .user-comment p {
	margin: 0;
}

/*
----------------------------------------
case
----------------------------------------
*/

#case .case-box {
	margin-bottom: 60px;
}

#case .case-box h2 {
	font-size: 2.8rem;
	margin: 30px 0;
}

#case.single .main-img {
	text-align: center;
}

#case.single .main-txt {
	margin-bottom: 40px;
}

#case .staff-box {
	background: #f5f5f5;
	padding: 20px 20px 5px 20px;
	border-radius: 10px;
	margin-top: 60px;
}

#case .staff-box h2 {
	text-align: center;
	border-bottom: solid 1px #999;
	padding-bottom: 15px;
}

#case .staff-box .pic {
	width: 30%;
	padding: 0;
}

#case .staff-box .txt {
	width: calc(70% - 25px);
	padding: 10px;
	box-sizing: border-box;
	border-radius: 10px;
	background: #fff;
	position: relative;
}

#case .staff-box .txt::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: -15px;
	top: 50%;
	border-right: 15px solid #fff;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	transform: translateY(-50%);
}

#case .staff-box .txt h3 {
	margin-bottom: 10px;
}

#case .staff-box .txt p {
	margin-bottom: 0;
}

/*
----------------------------------------
home
----------------------------------------
*/

header .head-notice {
	display: block;
	background: #ff2b00;
	text-align: center;
	padding: 10px;
	z-index: 999;
}

#home #wrapper > header .head-notice {
	position: absolute;
	left: 0;
	right: 0;
}

header .head-notice .text {
	color: #fff;
	display: inline-block;
	font-size: 1.4rem;
}

header .head-notice a {
	display: inline-block;
	color: #fff;
	border: 1px solid #fff;
	padding: 2px 18px;
	border-radius: 20px;
	font-size: 1.2rem;
}

#home #wrapper > header h1 {
	position: absolute;
	top: 48px;
	left: 0;
	right: 0;
	background: transparent;
	text-align: center;
	z-index: 999;
}

#home .main-ttl {
	height: 600px;
	position: relative;
}

#home .main-ttl h2 {
	position: absolute;
	top: 180px;
	left: 0;
	right: 0;
	text-align: center;
	z-index: 999;
}

#home .main-ttl h2 img {
	max-width: 540px;
	width: 100%;
}

#home .main-ttl > div::before,
#home .main-ttl > div::after {
	content: "";
	position: fixed;
	top: 0;
	height: 600px;
	z-index: 1;
}

#home .main-ttl .main-01::before {
	right: 50%;
	left: 0;
	background: url(img/home/main-01.png) left top / cover no-repeat;
}

#home .main-ttl .main-02::before {
	right: 0;
	left: 50%;
	background: url(img/home/main-02.png) right top / cover no-repeat;
}

#home .main-ttl > div .btn {
	position: absolute;
	top: 400px;
	z-index: 999;
}

#home .main-ttl .main-01 .btn {
	right: 50vw;
	transform: translateX(-25px);
}

#home .main-ttl .main-02 .btn {
	left: 50vw;
	transform: translateX(25px);
}

#home #wrapper > header {
	margin-bottom: -50px;
}

#home #nav-set,
#home #nav-set-sp {
	flex-wrap: wrap;
	padding: 50px 20px 20px 20px;
	background: url(img/home/main-bg.svg) center top / 100% no-repeat;
	transform: translateY(-50px);
}

#home #nav-set #logo,
#home #nav-set-sp #logo {
	width: 100%;
	text-align: center;
	margin-bottom: 20px;
}

#home #nav-wrap {
	width: calc(100% - 480px);
	margin-left: 240px;
	transition: all 0.2s;
}

#home #nav-set.fixed,
#home #nav-set-sp.fixed {
	padding: 15px;
	background: #fff;
	transform: none;
}

#home #nav-set.fixed #logo,
#home #nav-set-sp.fixed #logo {
	width: auto;
	margin-bottom: 0;
}

#home #nav-set.fixed #logo a,
#home #nav-set-sp.fixed #logo a {
	display: block;
}

#home #nav-set.fixed #nav-wrap {
	width: auto;
	margin-left: 0;
}

#home #nav-set.fixed .contact-set,
#home #nav-set-sp.fixed .contact-set {
	width: auto;
}

#home .feature-box {
	background: url(img/common/bg-pattern.png) center center repeat;
	padding: 80px 0 60px;
	margin: 60px 0 100px;
	position: relative;
}

#home .feature-box > .flex {
	justify-content: space-between;
	/*align-items: flex-end;*/
}

#home .feature-box > .flex > div {
	width: 32%;
	padding: 0 20px;
	margin-bottom: 100px;
	box-sizing: border-box;
	position: relative;
}

#home .feature-box > .flex > .ttl {
	order: 2;
	position: relative;
	padding-top: 260px;
	background: url(img/home/feature-img.png) center top / contain no-repeat;
}

#home .feature-box .ttl .txt {
	background: #fff;
	border: dashed 2px #35ae37;
	padding: 30px 15px 10px 15px;
	text-align: center;
}

#home .feature-box .ttl .logo {
	max-height: 50px;
	width: auto;
}

#home .feature-box .ttl h2 {
	font-size: 2.4rem;
	line-height: 1.2;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

#home .feature-box .ttl h2 span {
	color: #35ae37;
}

#home .feature-box .ttl h2 strong {
	font-size: 3.6rem;
}

#home .feature-box .feature {
	background: url(img/common/feature-bg.png) center center / contain no-repeat;
}

#home .feature-box .feature-01 {
	order: 1;
}

#home .feature-box .feature-02 {
	order: 3;
}

#home .feature-box .feature-03 {
	order: 4;
}

#home .feature-box .feature-04 {
	order: 5;
}

#home .feature-box .feature-05 {
	order: 6;
}

#home .feature__heading {
	margin-bottom: 10px;
	display: flex;
	justify-content: center;
	align-items: end;
	gap: 5px;
}

#home .feature-box .num {
	width: 95px;
	text-align: center;
	line-height: 1;
}

#home .feature-box .num img {
	width: 100%;
}

#home .feature-box figure {
	width: 113px;
}

#home .feature-box .feature__ttl {
	text-align: center;
	margin: 0 0 19px;
	line-height: 1;
}

#home .feature-box .read {
	font-size: 1.5rem;
	text-align: left;
	margin-bottom: 15px;
}

#home .feature-box .btn-03 {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	transform: translateY(50%);
}

#home .feature-box .btn-03 a {
	border-radius: 6px;
}

#home .certification-box {
	margin: 0 0 50px;
}

#home .certification-box .certification-img {
	width: 100%;
	max-width: 560px;
	margin: 0 auto 20px;
}

#home .certification-box .certification-txt {
	text-align: center;
}

#home .certification-box .certification-txt .pc-br {
	display: block;
}

#home .service-box {
	padding-bottom: 40px;
}

#home .service-box .main-service .service {
	position: relative;
	margin: 60px 0;
}

#home .service-box .main-service .service::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
}

#home .service-box .main-service .wrap {
	padding: 0;
}

#home .service-box .service-01::before {
	background: url(img/common/service-01.png) left top / cover no-repeat;
	right: 50vw;
	left: 0;
	border-radius: 0 10px 10px 0;
}

#home .service-box .service-02::before {
	background: url(img/common/service-02.png) right top / cover no-repeat;
	right: 0;
	left: 50vw;
	border-radius: 10px 0 0 10px;
}

#home .service-box .main-service .txt {
	padding: 30px;
}

#home .service-box .service-01 .txt {
	margin-left: 50%;
}

#home .service-box .service-02 .txt {
	margin-right: 50%;
}

#home .service-box .main-service .txt {
	text-align: center;
}

#home .service-box .main-service h2 {
	display: inline-block;
	margin: 0 auto 20px;
	padding: 0 5px;
	text-align: center;
	font-size: 3rem;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	position: relative;
}

#home .service-box .main-service h2::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 8px;
	background: #d4e67e;
	height: 10px;
}

#home .service-box .main-service h2 span {
	position: relative;
}

#home .service-box .main-service .read {
	text-align: left;
	margin-bottom: 20px;
}

#home .service-box .btn {
	justify-content: space-between;
}

#home .service-box .btn > p {
	width: calc(50% - 10px);
}

#home .service-list .wrap.flex {
	justify-content: space-between;
}

#home .service-list .service {
	width: calc(50% - 20px);
	margin-bottom: 30px;
}

#home .service-list .ttl {
	align-items: center;
	margin-bottom: 20px;
}

#home .service-list .ttl img {
	max-width: 100px;
	height: auto;
}

#home .service-list .ttl h2 {
	padding: 0 20px;
	box-sizing: border-box;
	font-size: 2.8rem;
	letter-spacing: 2px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center;
	margin-bottom: 0;
}

#home .service-list p {
	font-size: 1.5rem;
	margin-bottom: 20px;
}

#home .contents .contact-set {
	background: url(img/home/contact-bg.png) center center / cover no-repeat;
	padding: 240px 20px 100px;
	margin-bottom: 60px;
}

/* difference */
.difference-box {
	margin-top: 88px;
}

.difference-txt {
	padding: 0 50px;
	margin: 41px 0 88px;
	text-align: center;
	font-size: 1.6rem;
}

.difference-table .sp-block {
	display: none;
}

.difference-content .btn-03 {
	margin-bottom: 30px;
}

.difference-table table tr:nth-child(2n + 3) {
	background-color: #fafafa;
}

.difference-table table tr:nth-child(n + 2) th,
.difference-table table tr:nth-child(n + 2) td {
	padding: 15px 0;
	vertical-align: middle;
}

.difference-table th,
.difference-table td {
	border: 1px solid #d8d8d8;
	text-align: center;
}

.difference-table th {
	width: 29.3rem;
	font-size: 2rem;
}

.difference-table table tr:nth-child(n + 6) .ecoos {
	position: relative;
}

.difference-table td .small {
	position: absolute;
	top: 40%;
	left: 56%;
	color: #000;
	font-weight: 500;
	font-size: 1.4rem;
}

.difference-table .service {
	font-weight: 500;
}

.difference-table .ecoos {
	border-left: 3px solid #35ae37;
	border-right: 3px solid #35ae37;
}

.difference-table .company {
	height: 8.4rem;
}

.difference-table .company th {
	width: 26.7rem;
	border: none;
	color: #fff;
}

.difference-table .company .others {
	padding-top: 28px;
}

.difference-table .company .others span {
	height: 100%;
	padding: 10px 0;
	display: block;
	border: 1px solid #d8d8d8;
	background-color: #237424;
}

.difference-table .company .ecoos {
	background-color: #35ae37;
	border-top: 3px solid #35ae37;
	border-left: 3px solid #35ae37;
	border-right: 3px solid #35ae37;
	vertical-align: middle;
}

.difference-table .company .ecoos img {
	vertical-align: middle;
}

.difference-table table tr:nth-child(n + 7) .ecoos {
	border-bottom: 3px solid #35ae37;
}

.difference-notes {
	margin: 24px 0 56px;
	display: block;
	font-size: 1.2rem;
	line-height: 1.33;
}

/* flow */
#home .flow-box {
	margin-top: 88px;
	margin-bottom: 100px;
}

#home .flow-list {
	margin: 60px 0;
}

#home .flow-list .flow {
	padding: 0 0 60px 120px;
	position: relative;
}

#home .flow-list .flow::before {
	content: "";
	width: 1px;
	background: #35ae37;
	position: absolute;
	top: 10px;
	bottom: 0;
	left: 45px;
}

#home .flow-list .flow:last-child::before {
	display: none;
}

#home .flow-list .num {
	position: absolute;
	left: 0;
	top: 0;
	width: 90px;
	height: 90px;
	padding: 18px;
	box-sizing: border-box;
	border-radius: 50%;
	background: #35ae37;
	color: #fff;
	font-family: "Josefin Slab", serif;
	font-size: 1.8rem;
	line-height: 1.2;
	text-align: center;
	z-index: 999;
}

#home .flow-list .num span {
	display: block;
	font-size: 3.6rem;
}

#home .flow-list .flow > .flex {
	flex-direction: row-reverse;
}

#home .flow-list .flex figure {
	width: 30%;
	padding-left: 30px;
	box-sizing: border-box;
}

#home .flow-list .txt {
	width: 70%;
	font-size: 1.5rem;
}

#home .flow-list .txt h3 {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 15px;
}

#home .flow-list .contact-btn {
	margin-top: 20px;
	align-items: center;
}

#home .flow-list .contact-btn .tel {
	width: 55%;
	box-sizing: border-box;
}

#home .flow-list .contact-btn .tel a {
	display: inline-block;
	padding-left: 25px;
	font-family: "Josefin Slab", serif;
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1;
	color: #35ae37;
	background: url(img/common/icon-tel.svg) left center / 18px no-repeat;
}

#home .flow-list .contact-btn .note {
	display: inline-block;
	font-size: 1.2rem;
	padding-left: 10px;
	transform: translateY(-3px);
}

#home .flow-list .contact-btn .mail {
	width: 45%;
	border: solid 1px #35ae37;
	box-sizing: border-box;
	padding: 5px 10px 10px 15px;
}

#home .flow-list .contact-btn .mail a {
	display: block;
	font-size: 1.3rem;
	padding: 2px 30px 2px 0;
	background: url(img/common/arrow-bg.svg) right 5px bottom no-repeat;
	transition: all 0.2s;
}

#home .flow-list .contact-btn .mail a:hover {
	background: url(img/common/arrow-bg.svg) right bottom no-repeat;
}

#home .flow-list .contact-btn .mail a::before {
	content: url(img/common/icon-mail.svg);
	display: inline-block;
	width: 16px;
	margin: 0 6px 0 3px;
}

/* price */
#home .price-table {
	margin-top: 53px;
}

#home .price-table table {
	width: 100%;
}

#home .price-table th,
#home .price-table td {
	width: 50%;
	padding: 10px 0;
	border: 1px solid #d8d8d8;
	text-align: center;
	font-size: 2rem;
}

#home .price-table th {
	background-color: #35ae37;
	color: #fff;
}

#home .price-table .with-note {
	position: relative;
}

#home .price-table td .unit {
	font-size: 1.3rem;
}

#home .price-table th .small {
	position: absolute;
	top: 38%;
	left: 59%;
	font-size: 1.3rem;
}

#home .price-table tr:nth-child(2n + 3) {
	background-color: #f3faf4;
}

#home .price-notes {
	margin: 13px 0 54px;
	display: block;
	font-size: 1.4rem;
}

/* home staff */
#home .staff-box .staff-content {
	margin-bottom: 80px;
}

#home .staff-box .staff-list {
	margin: 80px 0 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#home .staff-box .staff-list .list-item {
	width: 23.2%;
	margin-bottom: 60px;
}

#home .staff-box .staff-img {
	width: 100%;
	height: 0;
	padding-top: 67.5%;
	position: relative;
}

#home .staff-box .staff-img img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	vertical-align: bottom;
}

#home .staff-box .staff-name {
	padding: 5px 0;
	margin-bottom: 20px;
	display: block;
	background-color: #33ae47;
	color: #fff;
	text-align: center;
	font-weight: 500;
	font-size: 1.7rem;
	letter-spacing: -0.02em;
}

#home .staff-box .staff-comment {
	height: 252px;
	margin-bottom: 20px;
	font-size: 1.5rem;
	line-height: 1.33;
}

#home .staff-box .staff-link {
	width: 86px;
	padding: 3px 0 3px 7px;
	margin-left: auto;
	position: relative;
	display: block;
	border-bottom: 1px solid #33ae47;
	color: #33ae47;
	font-size: 1.3rem;
	line-height: 1;
}

#home .staff-box .staff-link::after {
	width: 4px;
	height: 7px;
	content: "";
	position: absolute;
	top: 50%;
	right: 5px;
	transform: translateY(-50%);
	background-image: url("./img/common/arrow-01-gr.svg");
	background-size: contain;
	background-repeat: no-repeat;
}

/* voice */
.voice-box {
	margin: 80px 0;
}

.voice-box .voice-list {
	margin-bottom: 40px;
}

.voice-box .voice-list .post {
	margin: 10px;
	text-align: left;
}

.voice-box .voice-list .post .bg {
	display: block;
	padding: 15px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
	transition: all 0.2s;
}

.voice-box .voice-list .post > a:hover {
	background: #eee;
}

.voice-box .voice-list .post figure {
	line-height: 0.5;
	margin-bottom: 10px;
	text-align: center;
}

.voice-box .voice-list .post figure img {
	width: 100%;
	height: 225px;
	object-fit: cover;
	font-family: "object-fit: cover;"; /* ie */
}

#home #contents .contact-box.contact-02 {
	padding: 0;
	background: transparent;
}

#home #contents .contact-box.contact-02 .contact-set {
	background: url(img/common/bg-contact.png) center center / cover no-repeat;
	padding: 60px 0;
}

#home .faq-box {
	margin: 80px 0;
}

.faq-list.flex {
	justify-content: space-between;
	margin-bottom: 30px;
}

.faq-list.flex dl {
	/*width: calc( 50% - 20px );*/
	width: 100%;
}

.faq-list dt {
	font-size: 1.8rem;
	padding: 0 0 0 70px;
	position: relative;
	margin-bottom: 20px;
	cursor: pointer;
}

.faq-list dt.s {
	padding: 16px 0 16px 70px;
}

.faq-list dt::before {
	display: inline-block;
	content: "?";
	font-family: "Josefin Slab", serif;
	font-size: 3rem;
	text-align: center;
	line-height: 60px;
	width: 50px;
	height: 50px;
	color: #fff;
	background: #35ae37;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.faq-list dd {
	font-size: 1.5rem;
}

.faq-list dd h3 {
	color: #35ae37;
	font-size: 2rem;
	margin-bottom: 10px;
}

#home .about-box {
	background: #f3faf4;
	padding: 40px 0 0;
}

#home .about-box .cont {
	position: relative;
}

#home .about-box .cont::before,
#home .about-box .cont::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
}

#home .about-box .cont::before {
	right: 50%;
	left: 0;
	background: url(img/home/bg-about.png) center center / cover no-repeat;
}

#home .about-box .cont::after {
	right: 0;
	left: 50%;
	background: url(img/home/bg-staff.png) center center / cover no-repeat;
}

#home .about-box .flex .txt {
	width: 50%;
	padding: 100px 20px;
	box-sizing: border-box;
	text-align: center;
	position: relative;
	z-index: 999;
}

#home .about-box .flex .bg {
	display: inline-block;
	width: 240px;
	max-width: 100%;
	padding: 20px;
	background: rgba(255, 255, 255, 0.9);
	border-radius: 8px;
}

#home .about-box .flex .ttl {
	height: 90px;
	line-height: 1.6;
	letter-spacing: 2px;
	position: relative;
}

#home .about-box .flex .ttl .logo {
	max-height: 80px;
	width: auto;
}

#home .about-box .flex .ttl .en {
	font-size: 3.6rem;
	font-weight: 600;
	color: #35ae37;
}

#home .about-box .flex .ttl .en::after {
	content: "";
	width: 60px;
	height: 2px;
	background: #35ae37;
	position: absolute;
	top: 52px;
	left: 50%;
	transform: translateX(-50%);
}

#home .faq-list dt,
#remains .faq-list dt,
#adjustment .faq-list dt {
	padding-bottom: 25px;
	padding-top: 25px;
	margin-bottom: 0;
}

#home .faq-list dt::after,
#remains .faq-list dt::after,
#adjustment .faq-list dt::after {
	content: "";
	position: absolute;
	right: 20px;
	width: 14px;
	height: 14px;
	border-bottom: 3px solid #35ae37;
	border-right: 3px solid #35ae37;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 0;
	bottom: 0;
	margin: auto;
}

#home .faq-list dt.open::after,
#remains .faq-list dt.open::after,
#adjustment .faq-list dt.open::after {
	border: none;
	border-top: 3px solid #35ae37;
	border-left: 3px solid #35ae37;
	top: 8%;
}

.adjustment-purchase-box {
	width: 100%;
    display: flex;
    gap: 32px;
    align-items: flex-start;
    padding: 30px 0;
    box-sizing: border-box;
}
@media screen and (max-width: 750px) {
    .adjustment-purchase-box {
        flex-flow: column;
        align-items: center;
        gap: 20px;
        padding: 20px;
    }
}

#home footer h2.en {
	font-size: 2.4rem;
	line-height: 1.4;
	letter-spacing: 10px;
	color: #35ae37;
	padding: 25px 20px;
	background: #fff;
}

.contact-set_b {
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 9999;
	background: none;
	background-image: none;
	margin: 0;
	background-color: #fff;
	width: 250px;
}

.contact-set_b .num {
	display: block;
	padding-left: 25px;
	font-family: "Josefin Slab", serif;
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1;
	color: #35ae37;
	background: url(img/common/icon-tel.svg) left center / 18px no-repeat;
}

.contact-set .mail a {
	display: block;
	font-size: 1.2rem;
	padding: 2px 30px 2px 0;
	background: url(img/common/arrow-bg.svg) right 5px bottom no-repeat;
	transition: all 0.2s;
}

.contact-set_b .mail a::before {
	content: url(img/common/icon-mail.svg);
	display: inline-block;
	width: 16px;
	margin: 0 6px 0 3px;
}

#home .contact-set {
	background-image: none;
}

/*
----------------------------------------
area
----------------------------------------
*/

#area .sec {
	border: solid 1px #ccc;
	padding: 30px;
	margin-bottom: 40px;
}

#area .sec .area-list {
	color: #555;
}

#area .sec-01 .txt,
#area .sec-01 figure {
	width: 50%;
}

#area .sec-01 figure {
	text-align: center;
}

#area .sec-01 figure img {
	width: 420px;
	margin-left: 30px;
}

#area .sec-02 figure {
	width: 240px;
}

#area .sec-02 figure img {
	max-width: 210px;
}

#area .sec-02 .txt {
	width: calc(100% - 240px);
}

.area-list li {
	display: inline-block;
}

.area-list li::before {
	content: " / ";
}

.area-list li:first-child::before {
	display: none;
}

.area-list li a {
	color: #555;
	transition: 0.2s;
	text-decoration: underline;
}

.area-list li a:hover {
	color: #35ae37;
	text-decoration: underline;
}

#area .flex.other {
	justify-content: space-between;
}

#area .flex.other .sec {
	width: calc(50% - 20px);
	box-sizing: border-box;
}

#area .flex.other figure {
	height: 285px;
	text-align: center;
	margin-bottom: 10px;
}

#area .flex.other figure img {
	width: 210px;
}

#area .service-nav li {
	width: 25%;
	padding: 5px;
	margin-bottom: 5px;
	box-sizing: border-box;
}

#area .service-nav a {
	display: block;
	padding: 20px 10px 20px 70px;
	border: solid 1px #35ae37;
	font-size: 1.4rem;
	text-align: center;
	color: #35ae37;
	position: relative;
}

#area .service-nav a::after {
	content: "";
	border: solid 3px #35ae37;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: 0;
	transition: all 0.2s;
}

#area .service-nav a:hover::after {
	opacity: 1;
}

#area .service-nav li.remains,
#area .service-nav li.adjustment {
	width: 50%;
}

#area .service-nav li.remains a,
#area .service-nav li.adjustment a {
	padding: 20px 10px 20px 50%;
	font-size: 1.6rem;
}

#area .service-nav li.remains a {
	background: url(img/page/area/btn-service-01.png) left center / 50% no-repeat;
}

#area .service-nav li.adjustment a {
	background: url(img/page/area/btn-service-02.png) left center / 50% no-repeat;
}

#area .service-nav li.recovery a {
	background: url(img/page/area/btn-service-03.png) left center / contain no-repeat;
}

#area .service-nav li.purchase a {
	background: url(img/page/area/btn-service-04.png) left center / contain no-repeat;
}

#area .service-nav li.disposal a {
	background: url(img/page/area/btn-service-05.png) left center / contain no-repeat;
}

#area .service-nav li.vacant a {
	background: url(img/page/area/btn-service-06.png) left center / contain no-repeat;
}

#area .rank-list {
	margin-bottom: 20px;
}

#area .rank-list .rank {
	width: 33.3333%;
}

#area .rank-list .rank a {
	display: block;
	margin: 0 10px;
	border: solid 1px #ccc;
	padding: 10px;
	text-align: center;
	position: relative;
	transition: all 0.2s;
}

#area .rank-list .rank a:hover {
	background: #eee;
}

#area .rank-list .rank a .ttl {
	font-size: 1.8rem;
	color: #35ae37;
	background: url(img/common/arrow-03.svg) right center / 16px no-repeat;
}

#area .rank-list .rank a::before {
	content: "";
	width: 60px;
	height: 60px;
	background: #eee;
	color: #fff;
	text-align: center;
	line-height: 63px;
	font-size: 3rem;
	font-family: "Josefin Slab", serif;
	position: absolute;
	left: 0;
	top: 0;
}

#area .rank-list .rank:first-child a::before {
	content: "01";
	background: #cc9c3d;
}

#area .rank-list .rank:nth-child(2) a::before {
	content: "02";
	background: #a1b3b3;
}

#area .rank-list .rank:nth-child(3) a::before {
	content: "03";
	background: #b37436;
}

#area .rank-box .read {
	font-size: 1.5rem;
}

#area .results-box .header-01 h2,
#area .service-box .header-01 h2 {
	color: #35ae37;
	font-size: 32px;
	font-weight: bold;
	margin-bottom: 0;
}

#area .results-list .results {
	margin-top: 20px;
	border: solid 1px #ccc;
}

#area .results .ttl {
	flex-wrap: nowrap;
}

#area .results .ttl .tag {
	width: auto;
	padding: 15px 30px;
}

#area .results .ttl h3 {
	width: auto;
	padding: 15px 30px;
}

#area .results .cont {
	padding: 30px;
}

#area .user-mes {
	justify-content: space-between;
	align-items: center;
	margin-bottom: 30px;
}

#area .user-mes .txt {
	padding: 25px 30px;
	box-sizing: border-box;
	border: solid 1px #35ae37;
	position: relative;
}

#area .user-mes .txt h3 {
	text-align: center;
	color: #35ae33;
	font-size: 2.2rem;
	letter-spacing: 4px;
}

/*
#area .user-mes .baloon::before {
	content: '';
	border: solid 15px transparent;
	border-left: solid 20px #35AE37;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate( 100%, -50% );
}

#area .user-mes .baloon::after {
	content: '';
	border: solid 14px transparent;
	border-left: solid 19px #fff;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate( 100%, -50% );
}

#area .user-mes figure img {
	width: 180px;
	height: 180px;
	border-radius: 50%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}
*/

#area .cont-box {
	margin: 30px 0;
}

#area .cont-box .img {
	width: 60%;
}

#area .cont-box .img + .txt {
	width: 40%;
	padding-left: 30px;
	box-sizing: border-box;
	position: relative;
}

#area .cont-box .price p {
	font-size: 1.8rem;
	text-align: right;
}

#area .cont-box .price p strong {
	font-size: 3.6rem;
	margin-left: 10px;
}

#area .staff-mes {
	margin-bottom: 60px;
}

#area .staff-mes .dl-06 {
	align-items: flex-start;
}

#area .results .btn-03 a {
	margin: 0 10px 15px;
}

#area .voice-box {
	margin-bottom: 80px;
}

#area .voice-list {
	justify-content: space-between;
	margin-bottom: 60px;
}

#area .voice-list .post {
	width: calc(33.3333% - 20px);
	margin: 0;
	box-sizing: border-box;
}

#area .about-box .sec {
	margin-top: 40px;
	padding-bottom: 10px;
}

#area .about-box h3 {
	margin-bottom: 10px;
}

#area .about-box .read {
	margin-bottom: 20px;
}

#area .about-box .read p {
	font-size: 1.5rem;
}

#area .flow-list {
	margin: 60px 0;
}

#area .flow-list .flow {
	padding: 0 0 60px 120px;
	position: relative;
}

#area .flow-list .flow::before {
	content: "";
	width: 1px;
	background: #35ae37;
	position: absolute;
	top: 10px;
	bottom: 0;
	left: 45px;
}

#area .flow-list .flow:last-child::before {
	display: none;
}

#area .flow-list .num {
	position: absolute;
	left: 0;
	top: 0;
	width: 90px;
	height: 90px;
	padding: 18px;
	box-sizing: border-box;
	border-radius: 50%;
	background: #35ae37;
	color: #fff;
	font-family: "Josefin Slab", serif;
	font-size: 1.8rem;
	line-height: 1.2;
	text-align: center;
	z-index: 999;
}

#area .flow-list .num span {
	display: block;
	font-size: 3.6rem;
}

#area .flow-list .flow > .flex {
	flex-direction: row-reverse;
}

#area .flow-list .flex figure {
	width: 30%;
	padding-left: 30px;
	box-sizing: border-box;
}

#area .flow-list .txt {
	width: 70%;
	font-size: 1.5rem;
}

#area .flow-list .txt h3 {
	font-size: 1.8rem;
	font-weight: bold;
}

#area .flow-list .contact-btn {
	margin-top: 20px;
	align-items: center;
}

#area .flow-list .contact-btn .tel {
	width: 35%;
	box-sizing: border-box;
}

#area .flow-list .contact-btn .tel a {
	display: inline-block;
	padding-left: 25px;
	font-family: "Josefin Slab", serif;
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1;
	color: #35ae37;
	background: url(img/common/icon-tel.svg) left center / 18px no-repeat;
}

#area .flow-list .contact-btn .note {
	display: inline-block;
	font-size: 1.2rem;
	padding-left: 10px;
	transform: translateY(-3px);
}

#area .flow-list .contact-btn .mail {
	width: 45%;
	border: solid 1px #35ae37;
	box-sizing: border-box;
	padding: 5px 10px 10px 15px;
}

#area .flow-list .contact-btn .mail a {
	display: block;
	font-size: 1.3rem;
	padding: 2px 30px 2px 0;
	background: url(img/common/arrow-bg.svg) right 5px bottom no-repeat;
	transition: all 0.2s;
}

#area .flow-list .contact-btn .mail a:hover {
	background: url(img/common/arrow-bg.svg) right bottom no-repeat;
}

#area .flow-list .contact-btn .mail a::before {
	content: url(img/common/icon-mail.svg);
	display: inline-block;
	width: 16px;
	margin: 0 6px 0 3px;
}

#area .flow-list .contact-btn .line {
	width: 20%;
	box-sizing: border-box;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.4;
	color: #35ae37;
	font-size: 12px;
}

#area .flow-list .contact-btn .line a img {
	width: 36px;
	margin-top: 10px;
}

#area .feature-box {
	background: url(img/common/bg-pattern.png) center center repeat;
	padding: 80px 0 60px;
	margin: 60px 0 100px;
	position: relative;
}

#area .feature-box > .flex {
	justify-content: space-between;
	/*align-items: flex-end;*/
}

#area .feature-box > .flex > div {
	width: 32%;
	padding: 0 20px;
	margin-bottom: 100px;
	box-sizing: border-box;
	position: relative;
}

#area .feature-box > .flex > .ttl {
	order: 2;
	position: relative;
	padding-top: 260px;
	background: url(img/home/feature-img.png) center top / contain no-repeat;
}

#area .feature-box .ttl .txt {
	background: #fff;
	border: dashed 2px #35ae37;
	padding: 30px 15px 10px 15px;
	text-align: center;
}

#area .feature-box .ttl .logo {
	max-height: 50px;
	width: auto;
}

#area .feature-box .ttl h2 {
	font-size: 2.4rem;
	line-height: 1.2;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

#area .feature-box .ttl h2 span {
	color: #35ae37;
}

#area .feature-box .ttl h2 strong {
	font-size: 3.6rem;
}

#area .feature-box .feature {
	background: url(img/common/feature-bg.png) center center / contain no-repeat;
}

#area .feature-box .feature-01 {
	order: 1;
}

#area .feature-box .feature-02 {
	order: 3;
}

#area .feature-box .feature-03 {
	order: 4;
}

#area .feature-box .feature-04 {
	order: 5;
}

#area .feature-box .feature-05 {
	order: 6;
}

#area .feature__heading {
	margin-bottom: 10px;
	display: flex;
	justify-content: center;
	align-items: end;
	gap: 5px;
}

#area .feature-box .num {
	width: 95px;
	text-align: center;
	line-height: 1;
}

#area .feature-box .num img {
	width: 100%;
}

#area .feature-box figure {
	width: 113px;
}

#area .feature-box .feature__ttl {
	text-align: center;
	margin: 0 0 19px;
	line-height: 1;
}

#area .feature-box .read {
	font-size: 1.5rem;
	text-align: left;
	margin-bottom: 15px;
}

#area .feature-box .btn-03 {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	transform: translateY(50%);
}

#area .feature-box .btn-03 a {
	border-radius: 6px;
}

#area .mainservice-box h2 {
	text-align: center;
	color: #35ae33;
	font-size: 2rem;
	letter-spacing: 4px;
}

#area .mainservice-wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}

#area .mainservice-item {
	width: 49%;
	max-width: 535px;
	display: flex;
	flex-direction: column;
	align-items: center;
}
#area .mainservice-item .btn-03 {
	margin: 40px auto 50px;
	width: 100%;
	display: block;
	background-color: #35ae07;
	box-sizing: border-box;
}
#area .mainservice-item .btn-03 a {
	display: block;
	padding: 15px 10px;
}
#area .mainservice-item img {
	vertical-align: bottom;
}
#area .mainservice-text {
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #f2ede3;
	padding-bottom: 20px;
}
#area .mainservice-item h3 {
	color: #35ae33;
	font-size: 1.8rem;
	font-weight: bold;
	margin-top: 30px;
	text-align: center;
}
#area .mainservice-item p {
	color: #555555;
	text-align: center;
}
#area .mainservice-list {
	background-color: #fff;
	margin: 20px;
	padding: 10px 30px;
}
#area .mainservice-list li {
	padding: 10px;
	border-bottom: 1px solid #707070;
	position: relative;
	padding-left: 50px;
	color: #555555;
}
#area .mainservice-list li:last-of-type {
	border: none;
}
#area .mainservice-list li::before {
	display: block;
	position: absolute;
	content: "";
	background-image: url(img/page/area/check.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	width: 22px;
	height: 13px;
	top: 50%;
	left: 10px;
	transform: translateY(-50%);
}
#area .flow-box {
	margin-top: 80px;
}

/*
----------------------------------------
feature
----------------------------------------
*/

#feature .feature-nav {
	margin: 40px 0 60px;
}

#feature .feature-nav li {
	width: 33.3333%;
	padding: 10px;
	box-sizing: border-box;
}

#feature .feature-nav a {
	display: block;
	border: solid 1px #35ae37;
	padding: 15px 40px 15px 70px;
	background: url(img/common/num-01.png) 15px center / 40px no-repeat;
	position: relative;
	transition: all 0.2s;
}

#feature .feature-nav li:nth-child(2) a {
	background: url(img/common/num-02.png) 15px center / 40px no-repeat;
}

#feature .feature-nav li:nth-child(3) a {
	background: url(img/common/num-03.png) 15px center / 40px no-repeat;
}

#feature .feature-nav li:nth-child(4) a {
	background: url(img/common/num-04.png) 15px center / 40px no-repeat;
}

#feature .feature-nav li:nth-child(5) a {
	background: url(img/common/num-05.png) 15px center / 40px no-repeat;
}

#feature .feature-nav a::before {
	content: "";
	border: solid 2px #35ae37;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: 0;
	transition: all 0.2s;
}

#feature .feature-nav a:hover::before {
	opacity: 1;
}

#feature .feature-nav a::after {
	display: block;
	width: 24px;
	content: url(img/common/arrow-down.svg);
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-12px);
}

#feature .feature-list {
	background: url(img/common/bg-pattern.png) center center repeat;
	padding: 50px 0;
}

#feature .feature-list .feature {
	padding-top: 60px;
	margin-top: 40px;
}

#feature .feature-list .feature:first-child {
	margin: 0;
}

#feature .feature-list .img {
	position: relative;
}

#feature .feature-list .num {
	width: 100px;
	position: absolute;
	left: 0;
	top: -55px;
}

#feature .feature-list .feature:nth-child(even) .flex {
	flex-direction: row-reverse;
}

#feature .feature-list .flex > figure {
	width: 320px;
}

#feature .feature-list figure img {
	max-width: 320px;
}

#feature .feature-list .flex > .txt {
	width: calc(100% - 320px);
	padding: 0 0 0 40px;
	box-sizing: border-box;
}

#feature .feature-list .feature:nth-child(even) .txt {
	padding: 0 40px 0 0;
}

#feature .feature-list .flex > .txt .read {
	font-size: 1.5rem;
}

#feature .reason-box {
	padding: 60px 0;
}

#feature .reason-box .header {
	text-align: center;
	letter-spacing: 8px;
}

#feature .reason-box .header .sub {
	display: inline-block;
	position: relative;
	padding: 0 10px 0 20px;
	margin-bottom: 10px;
	color: #35ae37;
}

#feature .reason-box .header .sub::before,
#feature .reason-box .header .sub::after {
	content: "";
	width: 1px;
	height: 25px;
	background: #35ae37;
	position: absolute;
	bottom: 0;
}

#feature .reason-box .header .sub::before {
	left: 0;
	transform: rotate(-35deg);
}

#feature .reason-box .header .sub::after {
	right: 0;
	transform: rotate(35deg);
}

#feature .reason-box .header h2 {
	font-size: 2.8rem;
	color: #35ae37;
}

#feature .reason-box .header h2 strong {
	display: inline-block;
	position: relative;
}

#feature .reason-box .header h2 strong::after {
	content: "";
	height: 8px;
	background: #d4e67e;
	position: absolute;
	left: -4px;
	right: 4px;
	bottom: 4px;
	z-index: -1;
}

#feature .reason-list {
	margin-top: 30px;
}

#feature .reason-list .flex {
	justify-content: center;
}

#feature .reason {
	width: 33.3333%;
	padding: 15px;
	box-sizing: border-box;
}

#feature .reason .box {
	border: double 3px #35ae37;
	padding: 15px;
	letter-spacing: 4px;
	text-align: center;
	font-size: 1.8rem;
}

#feature .reason .box strong {
	display: inline-block;
	font-size: 2.2rem;
	color: #35ae37;
	position: relative;
}

#feature .reason .box strong::after {
	content: "";
	height: 6px;
	background: #d4e67e;
	position: absolute;
	left: -4px;
	right: 4px;
	bottom: 6px;
	z-index: -1;
}

#feature .notice-box {
	margin-bottom: 80px;
	text-align: center;
}

#feature .notice-box .box {
	border: solid 1px #262680;
	padding: 30px 40px;
	margin: 0 15px;
	background: #fafafa;
}

#feature .notice-box .box h2 {
	color: #262680;
	padding-top: 80px;
	margin-bottom: 20px;
	background: url(img/page/feature/icon-notice.svg) center top / 72px no-repeat;
	font-size: 1.8rem;
}

#feature .notice-box .read {
	text-align: left;
	font-size: 1.5rem;
}

.notice-box .notice-list {
	display: inline-block;
	padding: 15px 50px;
	margin: 40px auto;
	position: relative;
}

.notice-box .notice-list:before,
.notice-box .notice-list:after {
	content: "";
	width: 20px;
	border: solid 1px #262680;
	position: absolute;
	top: 0;
	bottom: 0;
}

.notice-box .notice-list:before {
	border-right: 0;
	left: 0;
}

.notice-box .notice-list:after {
	border-left: 0;
	right: 0;
}

.notice-box .notice-list li {
	color: #262680;
	font-size: 1.8rem;
	text-align: left;
	padding: 5px 0 5px 35px;
	background: url(img/page/feature/notice-list.svg) left top 8px / 25px no-repeat;
}
.results-box {
	margin-top: 80px;
}
.results-box .results-list {
	justify-content: space-between;
}

#feature .results-box .results-list .results {
	width: calc(50% - 15px);
	border: solid 1px #ccc;
	margin-bottom: 30px;
}

.results .ttl {
	width: 100%;
	border-bottom: solid 1px #ccc;
	align-items: center;
}

.results .ttl .tag {
	width: 25%;
	padding: 15px 10px;
	box-sizing: border-box;
	text-align: center;
	font-size: 1.8rem;
	background: #35ae37;
	color: #fff;
}

.results .ttl h3 {
	width: 75%;
	padding: 5px 15px;
	box-sizing: border-box;
	font-size: 1.8rem;
	margin: 0;
}

.results .ttl h3 span {
	font-size: 1.4rem;
}

#feature .results-box .results .cont {
	padding: 15px 15px 5px;
}

.before-after {
	justify-content: space-between;
	background: url(img/common/arrow-02.svg) center center / 32px no-repeat;
}

.before-after figure {
	width: calc(50% - 35px);
	position: relative;
}

.before-after figure::before,
.before-after figure::after {
	display: inline-block;
	width: 8rem;
	padding: 2px;
	box-sizing: border-box;
	text-align: center;
	color: #fff;
	font-family: "Josefin Slab", serif;
	font-size: 1.3rem;
	letter-spacing: 2px;
	position: absolute;
	left: 0;
	top: 0;
}

.before-after figure:first-child::before {
	content: "BEFORE";
	background: #000;
}

.before-after figure:last-child::after {
	content: "AFTER";
	background: #35ae37;
}

.results-box {
	margin-bottom: 80px;
}

.results-box .flex {
	justify-content: space-between;
}

.results-box .results .txt.flex {
	margin-top: 10px;
	align-items: flex-end;
}

.results-box .results .txt.flex .dl-03 {
	width: 75%;
	margin-right: auto;
}

.results-box .results .price p {
	font-size: 1.3rem;
	line-height: 1.5;
	color: #35ae37;
	margin-bottom: 10px;
}

.results-box .results .price strong {
	font-size: 2.4rem;
}

.thought-box .service {
	background: #fafafa;
	padding-bottom: 30px;
}

.thought-box .service > div {
	width: 50%;
	padding: 220px 15px 0;
	box-sizing: border-box;
}

.thought-box .service .service-01 {
	background: url(img/page/feature/service-01.png) center top / 100% no-repeat;
}

.thought-box .service .service-02 {
	background: url(img/page/feature/service-02.png) center top / 100% no-repeat;
}

.thought-box .service > div .txt {
	background: #fff;
	padding: 25px;
}

.thought-box .service > div .txt h3 {
	text-align: center;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 2.4rem;
}

.thought-box .service > div .txt p {
	font-size: 1.5rem;
}

.results-box .wrap > .read {
	font-size: 1.5rem;
}

/*
----------------------------------------
tmp
----------------------------------------
*/

.tmp .trouble-box {
	margin-bottom: 60px;
}

.tmp .trouble-box .header-01 .en {
	padding-top: 65px;
	background: url(img/common/icon-trouble.png) center top / 42px no-repeat;
}

.tmp .trouble-list {
	background: url(img/common/trouble-img.png) center center / cover no-repeat;
	text-align: center;
	padding: 40px;
	margin: 40px 0 20px;
}

#remains.tmp .trouble-list {
	background: url(img/page/remains/trouble-img.png) center center / cover no-repeat;
}

#vacant.tmp .trouble-list {
	background: url(img/page/vacant/trouble-img.png) center center / cover no-repeat;
}

#disposal.tmp .trouble-list {
	background: url(img/page/disposal/trouble-img.png) center center / cover no-repeat;
}

.tmp .trouble-list ul {
	display: inline-block;
	background: #fff;
	padding: 20px 30px;
}

.tmp .trouble-list ul li {
	padding: 5px 0 5px 36px;
	font-size: 1.8rem;
	background: url(img/common/icon-check.svg) left 8px / 24px no-repeat;
	text-align: left;
	line-height: 1.5;
}

.tmp .trouble-box .wrap > .read {
	font-size: 1.5rem;
}

.tmp .cancellation-box {
	background: #eee url(img/common/bg-sky.png) center center / cover no-repeat;
	padding: 60px 0;
	margin-bottom: 60px;
}

.tmp .cancellation-box .bg {
	background: #fff;
	padding: 40px;
}

.tmp .cancellation-box .header-01 .en {
	padding-top: 75px;
	background: url(img/common/icon-cancellation.png) center top / 60px no-repeat;
}

.point-list ol {
	position: relative;
	left: -6px;
	justify-content: center;
	margin: 58px 0 60px;
}

.point-list .flex li {
	width: 180px;
	padding: 0;
	margin-right: 62px;
	box-sizing: border-box;
	text-align: center;
	color: #35ae37;
}

.point-list .flex li:last-child {
	margin-right: 0;
}

.point-list figure {
	position: relative;
	max-width: 180px;
	margin-bottom: 4px;
}

.point-list figure::before {
	content: "";
	position: absolute;
	left: 0.2rem;
	top: -1.5rem;
	font-family: "Josefin Slab", serif;
	font-weight: 600;
	font-size: 4rem;
}

.point-list figure img {
	border-radius: 50%;
}

.point-list li:first-child figure::before {
	content: "01";
}

.point-list li:nth-child(2) figure::before {
	content: "02";
}

.point-list li:nth-child(3) figure::before {
	content: "03";
}

.point-list li:nth-child(4) figure::before {
	content: "04";
}

.tmp .works-box {
	margin-bottom: 80px;
}

.tmp .works-box .work {
	border: solid 1px #ccc;
	padding: 25px;
	margin: 40px 0 60px;
}

.tmp .works-box .work .read {
	font-size: 1.5rem;
	margin-bottom: 30px;
}

.tmp .work-list.flex {
	justify-content: space-between;
}

.tmp .work-list > div {
	width: calc(20% - 15px);
	border: solid 1px #35ae37;
	padding: 10px;
	box-sizing: border-box;
}

.tmp .work-list p {
	color: #35ae37;
	text-align: center;
	font-size: 1.45rem;
}

.tmp .option-list {
	justify-content: space-between;
}

.tmp .option-list .flex {
	align-items: center;
	color: #35ae37;
}

.tmp .option-list > div {
	width: calc(33.3333% - 10px);
	padding: 10px;
	box-sizing: border-box;
	border: solid 1px #35ae37;
	margin: 10px 0;
}

.tmp .option-list .flex figure {
	width: 90px;
	line-height: 0.5;
	margin-right: 15px;
}

.tmp .works-box .work .btn-03 {
	margin-bottom: 15px;
}

.tmp .works-box .work .btn-03 a {
	border-radius: 6px;
}

.tmp .purchase-box {
	margin-bottom: 80px;
}

.tmp .purchase-list {
	margin: 80px 0 20px;
}

.tmp .purchase h3 a {
	display: block;
	border: solid 1px #35ae37;
	color: #35ae37;
	background: url(img/common/icon-plus.svg) right 15px center / 24px no-repeat;
	padding: 15px 30px;
	font-size: 1.8rem;
	letter-spacing: 2px;
	transition: all 0.2s;
}

.tmp .purchase h3 a:hover {
	color: #fff;
	background: #35ae37 url(img/common/icon-plus-wh.svg) right 15px center / 24px no-repeat;
}

.tmp .purchase.active h3 a {
	color: #fff;
	background: #35ae37 url(img/common/icon-minus-wh.svg) right 15px center / 24px no-repeat;
}

.tmp .purchase .cont {
	display: none;
	padding: 10px 0 40px;
}

.tmp .purchase .info figure {
	width: 20%;
}

.tmp .purchase .info .txt {
	width: 80%;
	padding-left: 30px;
	box-sizing: border-box;
}

.tmp .purchase .read {
	margin-bottom: 25px;
}

.tmp .purchase .example {
	border: solid 1px #ccc;
	align-items: center;
}

.tmp .purchase .example .ttl {
	width: 3.5rem;
	text-align: center;
}

.tmp .purchase .example .txt {
	width: calc(100% - 3.5rem);
	padding: 5px 15px;
	box-sizing: border-box;
	border-left: solid 1px #ccc;
}

.tmp .results .info figure {
	width: 25%;
}

.tmp .results .info .txt {
	width: 75%;
	padding-left: 30px;
	box-sizing: border-box;
}

.tmp .results .cont {
	width: 45%;
	padding-left: 25px;
	box-sizing: border-box;
	position: relative;
}

.tmp .results .cont dl {
	width: 100%;
}

.tmp .results .cont .price {
	position: absolute;
	right: 0;
	bottom: 0;
}

#voice .post-contents .price {
	position: absolute;
	right: 0;
	bottom: -10px;
}

.tmp .results .cont.buy {
	width: auto;
	box-sizing: border-box;
	padding: 0;
	justify-content: space-between;
}

.tmp .results .cont.buy dl {
	width: calc(50% - 15px);
}

.tmp .results .cont.buy dt {
	font-size: 1.5rem;
	border-bottom: solid 1px #000;
	padding-bottom: 5px;
	margin-bottom: 15px;
}

.tmp .results .cont.buy dd li {
	display: inline-block;
	margin-right: 1rem;
	position: relative;
	padding-left: 1.5rem;
}

.tmp .results .cont.buy dd li::before {
	content: "・";
	position: absolute;
	left: 0;
	top: 0;
}

.tmp .results .cont.buy .flex {
	align-items: flex-end;
}

.tmp .results .cont.buy .comparison {
	margin-right: auto;
	padding-right: 10px;
}

.tmp .results .cont.buy .comparison span {
	display: inline-block;
	font-size: 2.4rem;
	margin: 0 10px 0 5px;
}

.tmp .results .cont.buy .price {
	position: relative;
}

.tmp .flow-box .notes {
	font-size: 1.5rem;
	margin-bottom: 40px;
}

.tmp .voice-box .info {
	margin: 80px 0 40px;
}

.l-bnr a {
	display: block;
	padding: 30px;
	background: #eee url(img/common/bg-contact.png) center center / cover no-repeat;
	text-align: center;
	position: relative;
}

.l-bnr a::before {
	content: "";
	border: solid 1px #fff;
	position: absolute;
	top: 5px;
	right: 5px;
	bottom: 5px;
	left: 5px;
	transition: all 0.2s;
}

.l-bnr a:hover::before {
	border: solid 6px #35ae37;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.l-bnr a .box {
	display: inline-block;
	background: rgba(53, 174, 55, 0.9) url(img/common/arrow-01-wh.svg) right 15px center / 8px no-repeat;
	color: #fff;
	padding: 20px 60px;
	line-height: 1.5;
	letter-spacing: 8px;
	transition: all 0.2s;
}

.l-bnr a:hover .box {
	background: rgba(53, 174, 55, 1) url(img/common/arrow-01-wh.svg) right 10px center / 8px no-repeat;
}

.l-bnr a .box .en {
	font-size: 3rem;
}

.l-bnr a .box .ja {
	font-size: 1.5rem;
}

.l-bnr.risaikul {
	margin-bottom: 61px;
}

.l-bnr.risaikul a .box {
	padding: 20px 50px 20px 90px;
	position: relative;
	background: rgba(255, 255, 255, 0.9) url(img/common/arrow-01-gr.svg) right 15px center / 8px no-repeat;
	color: #34ae36;
}

.l-bnr.risaikul a .box::before {
	position: absolute;
	content: "";
	background-image: url(img/common/icon-risaikul.svg);
	background-size: cover;
	background-repeat: no-repeat;
	width: 55px;
	height: 47px;
	top: 50%;
	left: 25px;
	transform: translateY(-50%);
}

.l-bnr.risaikul a:hover .box {
	background: rgba(255, 255, 255, 1) url(img/common/arrow-01-gr.svg) right 10px center / 8px no-repeat;
}

.l-bnr.risaikul a .box .ja {
	letter-spacing: 0;
}

.l-bnr.recovery a {
	background: #eee url(img/common/bnr-recovery-bg.png) center center / cover no-repeat;
}

.l-bnr.where a,
.l-bnr.purchase a {
	background: #eee url(img/common/bnr-purchase-bg.png) center center / cover no-repeat;
}

.l-bnr.risaikul a {
	background: url(img/common/bnr-risaikul-bg.jpg) center center / cover no-repeat;
}

.l-bnr.remain a {
	background: url(img/common/bnr-remain-bg.png) center center / cover no-repeat;
}

.l-bnr.adjustment a {
	background: url(img/common/bnr-adjustment-bg.png) center center / cover no-repeat;
}

.l-bnr.disposal a {
	background: url(img/page/disposal/page-ttl-bg.png) center center / cover no-repeat;
}

.l-bnr.vacant a {
	background: url(img/page/vacant/page-ttl-bg.png) center center / cover no-repeat;
}

.l-bnr.banul a {
	background: url(img/common/bnr-banul-bg.png) center center / cover no-repeat;
	padding: 80px 30px;
	text-align: left;
}

.l-bnr.banul a .box {
	background: rgba(255, 255, 255, 0.9) url(img/common/arrow-01.svg) right 15px center / 8px no-repeat;
	color: #000;
	padding: 20px 40px;
}

.l-bnr.banul a:hover .box {
	background: #fff url(img/common/arrow-01.svg) right 10px center / 8px no-repeat;
}

.l-bnr.banul a .box img {
	max-width: 175px;
	margin-bottom: 10px;
}

.tmp .results-list {
	margin: 40px 0;
}

.tmp .results {
	border: solid 1px #ccc;
	margin-bottom: 40px;
}

.tmp .results h3 {
	padding: 20px 25px;
	border-bottom: solid 1px #ccc;
	margin: 0;
}

.tmp .results > * {
	margin: 25px;
}

.tmp .results .details p {
	font-size: 1.5rem;
}

#adjustment .results-list .img,
#remains .results-list .img {
	width: 30%;
}
@media screen and (max-width: 750px) {
	#adjustment .results-list .img,
	#remains .results-list .img {
		width: 100%;
	}
}

.results-list .img {
	width: 55%;
}

.tmp .results .cont .price {
	color: #35ae37;
}

.tmp .results .cont .price strong {
	font-size: 3.6rem;
	line-height: 1.5;
	margin-left: 10px;
}

#voice .post-contents .cont .price {
	color: #35ae37;
}

#voice .post-contents .cont .price strong {
	font-size: 3.6rem;
	line-height: 1.5;
	margin-left: 10px;
}

#voice .post-contents .cont {
	padding-bottom: 75px;
	padding-left: 160px;
	box-sizing: border-box;
	position: relative;
}

.tmp .results .bg {
	background: #fafafa;
	padding: 25px;
}

dl.point {
	align-items: center;
}

dl.point dt {
	width: 25%;
	padding: 20px 15px 30px;
	box-sizing: border-box;
	background: #35ae37;
	color: #fff;
	text-align: center;
	letter-spacing: 4px;
	line-height: 1.5;
}

dl.point dt img {
	width: 36px;
	margin-bottom: 5px;
}

dl.point dt .en {
	font-size: 2.4rem;
}

dl.details {
	margin-top: 20px;
	background: #fff;
	padding: 10px 20px;
}

dl.details dt {
	color: #35ae37;
	font-size: 1.8rem;
	letter-spacing: 4px;
	text-align: center;
	border-bottom: solid 1px #35ae37;
	margin-bottom: 10px;
}

dl.details dd {
	font-size: 1.5rem;
}

dl.point dd {
	width: 75%;
	padding: 0 0 0 20px;
	box-sizing: border-box;
	font-size: 1.5rem;
}

dl.check {
	text-align: center;
}

dl.check dt {
	display: inline-block;
	padding: 0 25px;
	margin-bottom: 10px;
	font-size: 2rem;
	color: #35ae37;
	position: relative;
}

dl.check dt::before,
dl.check dt::after {
	content: "";
	width: 1px;
	height: 30px;
	background: #35ae37;
	position: absolute;
	bottom: 1px;
}

dl.check dt::before {
	left: 0;
	transform: rotate(-35deg);
}

dl.check dt::after {
	right: 0;
	transform: rotate(35deg);
}

dl.check dd ul {
	display: inline-block;
}

dl.check dd li {
	padding: 5px 0 5px 36px;
	background: url(img/common/icon-check.svg) left 8px / 24px no-repeat;
	text-align: left;
}

.tmp dl.check {
	margin-top: 20px;
	background: #fff;
	padding: 25px;
}

.tmp .flow-box {
	margin-bottom: 100px;
}

.tmp .flow-list {
	margin: 60px 0;
}

.tmp .flow-list .flow {
	padding: 0 0 60px 120px;
	position: relative;
}

.tmp .flow-list .flow::before {
	content: "";
	width: 1px;
	background: #35ae37;
	position: absolute;
	top: 10px;
	bottom: 0;
	left: 45px;
}

.tmp .flow-list .flow:last-child::before {
	display: none;
}

.tmp .flow-list .num {
	position: absolute;
	left: 0;
	top: 0;
	width: 90px;
	height: 90px;
	padding: 18px;
	box-sizing: border-box;
	border-radius: 50%;
	background: #35ae37;
	color: #fff;
	font-family: "Josefin Slab", serif;
	font-size: 1.8rem;
	line-height: 1.2;
	text-align: center;
	z-index: 999;
}

.tmp .flow-list .num span {
	display: block;
	font-size: 3.6rem;
}

.tmp .flow-list .flow > .flex {
	flex-direction: row-reverse;
}

.tmp .flow-list .flex figure {
	width: 30%;
	padding-left: 30px;
	box-sizing: border-box;
}

.tmp .flow-list .txt {
	width: 70%;
	font-size: 1.5rem;
}

.tmp .flow-list .txt h3 {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 15px;
}

.tmp .flow-list .contact-btn {
	margin-top: 20px;
	align-items: center;
}

.tmp .flow-list .contact-btn .tel {
	width: 55%;
	box-sizing: border-box;
}

.tmp .flow-list .contact-btn .tel a {
	display: inline-block;
	padding-left: 25px;
	font-family: "Josefin Slab", serif;
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1;
	color: #35ae37;
	background: url(img/common/icon-tel.svg) left center / 18px no-repeat;
}

.tmp .flow-list .contact-btn .note {
	display: inline-block;
	font-size: 1.2rem;
	padding-left: 10px;
	transform: translateY(-3px);
}

.tmp .flow-list .contact-btn .mail {
	width: 45%;
	border: solid 1px #35ae37;
	box-sizing: border-box;
	padding: 5px 10px 10px 15px;
}

.tmp .flow-list .contact-btn .mail a {
	display: block;
	font-size: 1.3rem;
	padding: 2px 30px 2px 0;
	background: url(img/common/arrow-bg.svg) right 5px bottom no-repeat;
	transition: all 0.2s;
}

.tmp .flow-list .contact-btn .mail a:hover {
	background: url(img/common/arrow-bg.svg) right bottom no-repeat;
}

.tmp .flow-list .contact-btn .mail a::before {
	content: url(img/common/icon-mail.svg);
	display: inline-block;
	width: 16px;
	margin: 0 6px 0 3px;
}

.tmp .choose-box {
	margin: 80px 0 40px;
}

#remains.tmp .choose-box,
#adjustment.tmp .choose-box {
	margin-bottom: 80px;
}

.about-box-page {
	padding: 80px 0 80px;
}

.about-box-page .about-article-list {
	display: flex;
	flex-wrap: wrap;
	gap: 40px 60px;
	width: 100%;
}

.about-box-page .about-article-list h3 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 20px;
}

.about-box-page .about-article-list li {
	width: 47%;
}
@media screen and (max-width: 1049px) {
	.about-box-page .about-article-list li {
		width: 100%;
	}
}

.about-box-page .about-article-list img {
	width: 240px;
	height: 180px;
}

.about-box-page .about-article-list-wrap {
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: 0 30px;
}
@media screen and (max-width: 600px) {
	.about-box-page .about-article-list-wrap {
		grid-template-columns: 140px 1fr;
	}
	.about-box-page .about-article-list img {
		width: 140px;
		height: 80px;
	}
}

.about-article-list-wrap-text-box p {
	margin-bottom: 10px;
	font-size: 13px;
}
@media screen and (min-width:768px) {
	.about-article-list-wrap-text-box p {
		font-size: 15px;
	}
}
.about-box-page .about-article-list-wrap a {
	color: #35ae37;
	border-bottom: solid 1px #35ae37;
	transition: opacity .3s;
}
@media screen and (min-width:768px) {
	.about-box-page .about-article-list-wrap a:hover,
	.about-box-page .about-article-list-wrap a:focus {
		opacity: .6;
	}
}

.tmp .choose-box .choose-list {
	margin-bottom: 30px;
}

.tmp .choose-box .choose-list dt {
	width: 25%;
	border: solid 1px #35ae37;
	text-align: center;
	color: #35ae37;
	box-sizing: border-box;
	padding: 15px;
	margin-bottom: 20px;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: 1.4;
}

.tmp .choose-box .choose-list dt .en {
	font-size: 3.6rem;
	font-weight: 400;
}

.tmp .choose-box .choose-list dd {
	width: 75%;
	padding-left: 20px;
	margin-bottom: 20px;
	box-sizing: border-box;
	font-size: 1.5rem;
}

/*
----------------------------------------
staff
----------------------------------------
*/

.staff-list {
	margin: 80px 0;
}

.staff-list .staff {
	border: solid 1px #ccc;
	padding: 25px;
	margin-bottom: 30px;
}

.staff-list .staff:nth-child(even) .flex {
	flex-direction: row-reverse;
}

.staff-list .kana {
	display: inline-block;
	margin-left: 20px;
	font-size: 1.4rem;
	vertical-align: middle;
}

.staff-list figure {
	width: 40%;
	padding: 0 30px 0 0;
	box-sizing: border-box;
}

.staff-list .staff:nth-child(even) figure {
	padding: 0 0 0 30px;
	text-align: right;
}

.staff-list figure + .txt {
	width: 60%;
}

/* remains */

.remains-page .cancellation-box {
	background: url(img/common/bg-sky.png) center center / cover no-repeat;
	position: relative;
}

.remains-page .cancellation-box::before {
	display: block;
	content: "";
	border: solid 30px transparent;
	border-top: solid 30px #fff;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.remains-page .results .cont dl {
	width: 100%;
}

/*
----------------------------------------
where
----------------------------------------
*/

#where .remains-box {
	margin-bottom: 80px;
}

#where .remains-box .img.flex {
	margin: 40px 0 20px;
}

#where .remains-box .img.flex figure {
	width: 25%;
}

#where .remains-box .read {
	font-size: 1.5rem;
	margin-bottom: 60px;
}

#where .where-box {
	margin-bottom: 80px;
}

#where .suggestion-box {
	margin-bottom: 98px;
}

#where .where-box .cont-list .sec,
#where .suggestion-box .cont-list .sec {
	border: solid 1px #ccc;
	padding: 25px;
	margin: 30px 0;
}

#where .where-box .cont-list .flex figure,
#where .suggestion-box .cont-list .flex figure {
	width: 30%;
	box-sizing: border-box;
	padding: 0 20px 0 0;
}

#where .where-box .cont-list .sec:nth-child(even) .flex,
#where .suggestion-box .cont-list .sec:nth-child(even) .flex {
	flex-direction: row-reverse;
}

#where .where-box .cont-list .sec:nth-child(even) .flex figure,
#where .suggestion-box .cont-list .sec:nth-child(even) .flex figure {
	padding: 0 0 0 20px;
}

#where .where-box .cont-list .flex .txt,
#where .suggestion-box .cont-list .flex .txt {
	width: 70%;
	font-size: 1.5rem;
}

#where .efforts-box .notes {
	background: #f3faf4;
	padding: 25px;
	font-size: 1.5rem;
}

#where .cont-list {
	margin: 60px 0 0;
}

#where .cont-list .flex {
	align-items: center;
	justify-content: space-between;
}

#where .cont-list dt {
	width: calc(25% - 10px);
	padding: 15px;
	margin: 0 0 30px 10px;
	box-sizing: border-box;
	text-align: center;
	color: #35ae37;
	border: solid 1px #35ae37;
	position: relative;
}

#where .cont-list dt .num {
	display: inline-block;
	width: 50px;
	height: 50px;
	line-height: 55px;
	text-align: center;
	font-size: 2.4rem;
	font-family: "Josefin Slab", serif;
	background: #35ae37;
	color: #fff;
	position: absolute;
	left: -10px;
	top: -10px;
}

#where .cont-list dt img {
	max-width: 60px;
}

#where .cont-list dt:first-of-type img {
	max-width: 65px;
}

#where .cont-list dd {
	width: calc(75% - 20px);
	margin-bottom: 30px;
	font-size: 1.5rem;
}

/*
----------------------------------------
price
----------------------------------------
*/

#price .page-nav {
	margin-bottom: 40px;
}

#price .page-nav .flex {
	justify-content: space-between;
	align-items: stretch;
}

#price .page-nav a {
	display: block;
	text-align: center;
}

#price .page-nav .service-01,
#price .page-nav .service-02 {
	width: calc(42% - 20px);
}

#price .page-nav .option {
	width: calc(16% - 10px);
}

#price .page-nav .option a {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	border: solid 1px #000;
	position: relative;
	transition: all 0.2s;
}

#price .page-nav .option a:hover {
	background: #fafafa;
}

#price .page-nav .option a span {
	display: block;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	padding-bottom: 15px;
	background: url(img/common/arrow-down-02-bk.svg) center bottom 5px / 8px no-repeat;
	transition: all 0.2s;
}

#price .page-nav .option a:hover span {
	background: url(img/common/arrow-down-02-bk.svg) center bottom / 8px no-repeat;
}

#price .page-nav .service-01 > a {
	background: url(img/page/price/nav-service-01.png) center center / cover no-repeat;
	padding: 15px;
}

#price .page-nav .service-02 > a {
	background: url(img/page/price/nav-service-02.png) center center / cover no-repeat;
	padding: 15px;
}

#price .page-nav .service-01 > a span,
#price .page-nav .service-02 > a span {
	display: inline-block;
	padding: 10px 25px 25px;
	color: #fff;
	transition: all 0.2s;
}

#price .page-nav .service-01 > a span {
	background: rgba(0, 0, 0, 0.8) url(img/common/arrow-down-02-wh.svg) center bottom 15px / 8px no-repeat;
}

#price .page-nav .service-01 > a:hover span {
	background: rgba(0, 0, 0, 1) url(img/common/arrow-down-02-wh.svg) center bottom 10px / 8px no-repeat;
}

#price .page-nav .service-02 > a span {
	background: rgba(53, 174, 55, 0.8) url(img/common/arrow-down-02-wh.svg) center bottom 15px / 8px no-repeat;
}

#price .page-nav .service-02 > a:hover span {
	background: rgba(53, 174, 55, 1) url(img/common/arrow-down-02-wh.svg) center bottom 10px / 8px no-repeat;
}

#price .page-nav .flex .flex {
	margin-top: 10px;
}

#price .page-nav .flex .flex p {
	width: calc(50% - 5px);
}

#price .page-nav .flex .flex a {
	border: solid 1px #000;
	background: url(img/common/arrow-down-02-bk.svg) center bottom 15px / 8px no-repeat;
	padding: 10px 10px 25px;
	font-size: 1.5rem;
	transition: all 0.2s;
}

#price .page-nav .flex .flex a:hover {
	background: #fafafa url(img/common/arrow-down-02-bk.svg) center bottom 10px / 8px no-repeat;
}

#price .note-box {
	display: block;
	width: 100%;
}

#price .organize-box .cont {
	border: solid 1px #ccc;
	padding: 25px 0 0;
	margin: 40px 0 80px;
}

#price .contents .cont .heading-01 {
	margin: 0 25px 20px;
}

#price .basic-list {
	margin: 0 20px 40px;
}

#price .basic-list li {
	width: 33.3333%;
	padding: 5px;
	box-sizing: border-box;
}

#price .basic-list li > div {
	color: #35ae37;
	border: solid 1px #35ae37;
	padding: 20px 10px 20px 75px;
	font-size: 1.3rem;
	white-space: nowrap;
}

#price .basic-list li.basic-01 div {
	background: url(img/page/price/basic-img-01.png) left center / contain no-repeat;
}

#price .basic-list li.basic-02 div {
	background: url(img/page/price/basic-img-02.png) left center / contain no-repeat;
}

#price .basic-list li.basic-03 div {
	background: url(img/page/price/basic-img-03.png) left center / contain no-repeat;
}

#price .basic-list li.basic-04 div {
	background: url(img/page/price/basic-img-04.png) left center / contain no-repeat;
}

#price .basic-list li.basic-05 div {
	background: url(img/page/price/basic-img-05.png) left center / contain no-repeat;
}

#price .basic-list li.basic-06 div {
	background: url(img/page/price/basic-img-06.png) left center / contain no-repeat;
}

#price .price-list {
	margin: 10px;
}

#price .price-list > div {
	width: 33.3333%;
	padding: 0 15px 30px;
	box-sizing: border-box;
}

#price .price-list .box {
	border: solid 1px #35ae37;
	padding: 0;
}

#price .price-list .ttl {
	border-bottom: solid 1px #35ae37;
	font-size: 2.4rem;
	line-height: 1;
	white-space: nowrap;
}

#price .price-list .ttl .tag {
	width: 25%;
	padding: 15px 5px 10px;
	box-sizing: border-box;
	text-align: center;
	color: #fff;
	background: #35ae37;
	font-family: "Josefin Slab", serif;
}

#price .price-list .ttl .price {
	width: 75%;
	padding: 5px;
	box-sizing: border-box;
	text-align: center;
	color: #35ae37;
}

#price .price-list .ttl .price span {
	font-size: 3rem;
}

#price .price-list .txt {
	align-items: center;
}

#price .price-list .txt .info {
	width: 65%;
	padding: 15px 15px 5px;
	box-sizing: border-box;
}

#price .price-list.ppl-list .txt dl {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
}

#price .price-list .txt dt {
	width: 40%;
	box-sizing: border-box;
	font-size: 1.3rem;
	border: solid 1px #000;
	text-align: center;
}

#price .price-list .txt dd {
	box-sizing: border-box;
	font-size: 1.5rem;
}

#price .price-list.ppl-list .txt dt {
	margin-bottom: 10px;
}

#price .price-list.ppl-list .txt dd {
	width: 60%;
	padding-left: 10px;
	margin-bottom: 10px;
}

#price .price-list .txt figure {
	width: 35%;
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
	line-height: 1;
}

#price .price-list .txt figure img {
	max-width: 90px;
}

#price .purchase-box {
	margin-bottom: 80px;
}

#price .disposal-box .cont {
	border: solid 1px #ccc;
	padding: 25px 0 0;
	margin: 40px 0 80px;
}

#price .price-list.car-list .txt {
	padding: 15px 0;
}

#price .price-list.car-list .flex {
	align-items: center;
}

#price .price-list.car-list .txt dl {
	width: 65%;
	padding: 0 0 0 15px;
	box-sizing: border-box;
}

#price .price-list .txt figure {
	width: 35%;
	padding: 0 10px;
	box-sizing: border-box;
}

#price .price-list.car-list .txt dt {
	margin-bottom: 5px;
}

#price .vacant-box .cont {
	border: solid 1px #ccc;
	padding: 25px 0 0;
	margin: 40px 0 80px;
}

#price .recovery-box,
#price .vacant-box,
#price .disposal-box,
#price .organize-box {
	margin-bottom: 80px;
}

.remains-bnr {
	margin-bottom: 80px;
}

#price .options-box .option-list {
	border: solid 1px #ccc;
	padding: 25px;
	margin: 40px 0 80px;
}

#price .option-list > .option {
	margin-bottom: 40px;
}

#price .option .flex.read {
	align-items: center;
	margin-bottom: 20px;
}

#price .option .flex.read figure {
	width: 20%;
	padding-right: 20px;
	box-sizing: border-box;
}

#price .option .flex.read .txt {
	width: 80%;
}

#price .option .flex.details {
	justify-content: space-between;
}

#price .option .flex.details > div {
	width: calc(50% - 20px);
}

#price .option .flex.details h4 {
	font-size: 1.6rem;
	padding-bottom: 5px;
	border-bottom: solid 1px #000;
}

#price .option .flex.details .cont {
	background: #fafafa;
	padding: 20px;
	margin-bottom: 15px;
	font-size: 1.5rem;
}

#price .option .flex.details ul.txt li {
	display: inline-block;
}

#price .option .flex.details ul.txt li::after {
	content: " / ";
}

#price .option .flex.details ul.txt li:last-child::after {
	display: none;
}

#price .table-01 {
	margin: 0;
}

#price .table-01 th {
	padding: 10px 15px;
	vertical-align: middle;
}

#price .table-01 td {
	padding: 10px 15px;
	vertical-align: middle;
	font-size: 1.5rem;
	line-height: 1.5;
	text-align: right;
	color: #35ae37;
}

#price .table-01 td .price {
	font-size: 2rem;
}

#price .table-01 td .before {
	margin-right: 10px;
}

#price .table-01 td .after {
	margin-left: 10px;
}

#price .option .flex.details ul.list {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
}

#price .option .flex.details ul.list li {
	list-style: disc;
	margin-left: 20px;
	width: 30%;
}

/*
----------------------------------------
company
----------------------------------------
*/

#company #contents section {
	margin-bottom: 80px;
}

#company .heading-04 {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 2.4rem;
}

#philosophy {
	text-align: center;
}

#philosophy figure {
	margin: 60px 0;
}

#philosophy figure img {
	margin-bottom: 15px;
}

#philosophy .txt {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

#philosophy ol {
	display: inline-block;
	border: solid 1px #ccc;
	padding: 15px 30px;
	font-size: 1.8rem;
}

#philosophy li {
	border-top: dotted 1px #333;
	padding: 15px 0;
}

#philosophy li:first-child {
	border: none;
}

#greeting .movie-wrap {
	border: solid 1px #ccc;
	padding: 30px;
	margin-bottom: 60px;
	text-align: center;
}

#greeting .movie-wrap .txt {
	text-align: center;
	margin: 0 0 20px;
}

#greeting .flex {
	justify-content: space-between;
	border: solid 1px #ccc;
	padding: 30px;
	margin-bottom: 60px;
}

#greeting .flex figure {
	width: 300px;
}

#greeting figcaption {
	font-size: 1.6rem;
	text-align: center;
}

#greeting .president figcaption {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 2.4rem;
}

#greeting .flex figcaption span {
	font-size: 1.6rem;
	margin-right: 5px;
}

#greeting .flex .txt {
	width: calc(100% - 340px);
}

#greeting .heading-03 {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 2.2rem;
}

#greeting .president p {
	margin-top: 15px;
}

#greeting .staff .flex {
	flex-direction: row-reverse;
}

#company .table-01 th {
	width: 20%;
}

#company .table-01 li {
	padding-left: 20px;
	position: relative;
	line-height: 1.5;
	margin-bottom: 10px;
}

#company .table-01 li::before {
	content: "■";
	color: #777;
	position: absolute;
	left: 0;
	top: 0;
}

#company .table-01 td a {
	text-decoration: underline;
}

/*
----------------------------------------
estimate
----------------------------------------
*/

#estimate .form-nav {
	justify-content: center;
	margin-bottom: 60px;
}

#estimate .form-nav .btn {
	padding: 15px;
	width: 40%;
	box-sizing: border-box;
}

#estimate .form-nav a {
	display: block;
	font-size: 1.6rem;
	letter-spacing: 2px;
	text-align: center;
	padding: 10px 30px;
	border: solid 1px #35ae37;
	background: url(img/common/arrow-down.svg) right 10px center / 20px no-repeat;
	transition: all 0.2s;
}

#estimate .form-nav a:hover {
	color: #fff;
	background: #35ae37 url(img/common/arrow-down-wh.svg) right 10px center / 20px no-repeat;
}

#estimate .heading-01 {
	font-size: 2.4rem;
}

#form-box .read {
	margin-bottom: 40px;
}

#form-box .form-wrap {
	border: solid 1px #ddd;
	padding: 30px;
	margin: 40px 0;
}

#estimate .heading-02 {
	font-size: 1.8rem;
}

#form-box .dl-01 {
	margin-bottom: 40px;
}

#form-box .dl-01 dt {
	padding: 15px 40px 5px 0;
}

#form-box .zip input {
	width: 15rem;
	margin-bottom: 10px;
}

#form-box .method-wrap,
#form-box .file-wrap {
	padding-top: 15px;
}

.custom-wpcf7c-confirmed .workdate input,
.custom-wpcf7c-confirmed .workdate select {
	background: #fafafa !important;
}

#form-box .workdate dt {
	background: #fafafa;
	border-radius: 4px 4px 0 0;
	padding: 20px 30px;
}

#form-box .workdate dd {
	display: none;
	background: #fafafa;
	border-radius: 0 0 4px 4px;
	padding: 0 30px 20px;
	margin-bottom: 30px;
}
#form-box .workdate dd.show {
	display: block;
}

#form-box .workdate input[type="date"] {
	margin: 0 0 10px 10px;
}

#form-box .workdate select {
	margin: 0 10px 10px 0;
}

.custom-wpcf7c-confirmed#form-box .workdate input[type="date"],
.custom-wpcf7c-confirmed#form-box .workdate select {
	margin-bottom: 5px;
}

#form-box .workdate .note {
	margin-left: 2.3rem;
}

#form-box .workdate h4 {
	font-size: 1.6rem;
	background: #eee;
	padding: 2px 10px;
	margin: 20px 0 10px 0;
}

#form-box dl.method {
	margin: 20px 0;
}

.custom-wpcf7c-confirmed .method input,
.custom-wpcf7c-confirmed .method select {
	background: #fafafa !important;
}

#form-box .method dt {
	background: #fafafa;
	border-radius: 4px 4px 0 0;
	padding: 20px 30px;
	margin-top: 30px;
}

#form-box .method dd {
	display: none;
	background: #fafafa;
	border-radius: 0 0 4px 4px;
	padding: 0 30px 20px;
	margin-bottom: 30px;
}

#form-box .method dt.active + dd {
	display: block;
}

#form-box .method input[type="date"] {
	margin: 0 0 10px 10px;
}

#form-box .method select {
	margin: 0 10px 10px 0;
}

.custom-wpcf7c-confirmed#form-box .method input[type="date"],
.custom-wpcf7c-confirmed#form-box .method select {
	margin-bottom: 5px;
}

#form-box .method .note {
	margin-left: 2.3rem;
}

#form-box .method h4 {
	font-size: 1.6rem;
	background: #eee;
	padding: 2px 10px;
	margin: 20px 0 10px 0;
}

#form-box input[type="number"] {
	width: 10rem;
	margin-right: 10px;
}

.custom-wpcf7c-confirmed #form-box input[type="number"] {
	display: inline;
	width: auto;
	margin: 0;
}

#form-box .kai {
	display: inline-block;
	margin-right: 4rem;
}

#form-box .method h4:first-of-type {
	margin-top: 0;
}

#form-box .pp-box {
	border: solid 1px #ddd;
	padding: 25px;
	max-height: 200px;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	margin-bottom: 30px;
}

#form-box .pp-box h4 {
	font-size: 1.6rem;
	padding-bottom: 5px;
	border-bottom: solid 1px #ddd;
}

#form-box .pp-box * {
	font-size: 1.4rem;
}

#form-box .pp-box p {
	margin-bottom: 20px;
}

#form-box .pp-box ol {
	display: inline-block;
	background: #fafafa;
	padding: 15px 20px 15px 35px;
	margin-bottom: 40px;
	list-style: decimal;
}

.custom-wpcf7c-confirmed .pp-wrap {
	display: none;
}

#form-box .acceptance-wrap {
	text-align: center;
	margin: 30px 0;
}

#form-box .acceptance label {
	display: inline-block;
	padding: 10px 20px;
	margin: 0;
	background: #eee;
}

#form-box .submit-wrap {
	text-align: center;
}

#line-box .flex {
	border: double 3px #00b900;
	padding: 30px;
	justify-content: space-between;
	align-items: center;
}

#line-box .txt {
	width: 60%;
}

#line-box {
	margin-bottom: 80px;
}

#line-box h2 {
	font-size: 2.4rem;
	letter-spacing: 4px;
	color: #00b900;
	background: url(img/common/icon-line.svg) left center / 60px no-repeat;
	padding: 25px 0 25px 80px;
	margin-bottom: 5px;
	border-bottom: solid 1px #00b900;
	transform: translateY(-15px);
}

#line-box .qr {
	padding: 0 20px;
}

#line-box .qr img {
	max-width: 160px;
}

#line-box .line-btn .btn img {
	max-height: 50px;
}

#line-box .line-btn span {
	display: inline-block;
	min-width: 100px;
	background: #eee;
	padding: 5px 15px;
	margin: 0 0 15px 5px;
	border-radius: 4px;
}

/*
----------------------------------------
complete
----------------------------------------
*/

#complete .info {
	text-align: center;
}

#complete .contents .contact-set {
	background: none;
	padding: 0;
	margin: 60px auto;
}

#complete .contents .contact-set > .flex {
	justify-content: center;
}

#complete .contents .contact-set .tel-box {
	width: auto;
	box-shadow: none;
	border: double 3px #35ae37;
	padding: 20px 40px;
}

#complete .contents .contact-set .balloon {
	display: none;
}

#complete .back-link {
	text-align: center;
	margin-bottom: 20px;
}

/*
----------------------------------------
faq
----------------------------------------
*/

#contents #faq-menu {
	border: double 3px #00b900;
	padding: 30px;
	margin: 60px 0;
}

#faq-menu .flex {
	justify-content: space-between;
}

#faq-menu .flex > div {
	width: calc(50% - 15px);
}

#faq-menu h2 {
	border-bottom: solid 1px #00b900;
}

#faq-menu h2 a {
	color: #35ae37;
	font-size: 2rem;
}

#faq-menu li a {
	display: block;
	padding: 10px 0 10px 40px;
	font-size: 1.6rem;
	line-height: 1.4;
	position: relative;
}

#faq-menu li a::before {
	display: inline-block;
	content: "?";
	font-family: "Josefin Slab", serif;
	font-size: 1.6rem;
	text-align: center;
	line-height: 34px;
	width: 30px;
	height: 30px;
	color: #fff;
	background: #35ae37;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 6px;
}

.faq-list dl {
	border-top: dashed 2px #35ae37;
	padding-top: 0;
}

.faq-01 dt {
	font-size: 2rem;
	padding: 25px 0 10px 5rem;
	border-top: solid 1px #ccc;
	position: relative;
}

.faq-list dd {
	margin-bottom: 25px;
}

#faq .faq {
	margin-bottom: 80px;
	border-top: 0;
}

#faq .faq .heading-01 {
	margin-bottom: 15px;
}

#faq .faq-list dt {
	position: relative;
	padding: 16px 55px 16px 70px;
	padding-bottom: 25px;
	padding-top: 25px;
	border-top: dashed 2px #35ae37;
	margin-bottom: 0;
	cursor: pointer;
}

#faq .faq-list dt::after {
	content: "";
	position: absolute;
	right: 20px;
	width: 14px;
	height: 14px;
	border-bottom: 3px solid #35ae37;
	border-right: 3px solid #35ae37;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 0;
	bottom: 0;
	margin: auto;
}

#faq .faq-list dt.open::after {
	border: none;
	border-top: 3px solid #35ae37;
	border-left: 3px solid #35ae37;
	top: 8%;
}

#faq .faq-list dd {
	padding-bottom: 25px;
	margin-bottom: 0;
}

.faq-list dl:last-child {
	border-bottom: dashed 2px #35ae37;
}

/*
----------------------------------------
sitemap
----------------------------------------
*/

.sitemap li {
	width: 33.3333%;
	box-sizing: border-box;
}

.sitemap a {
	display: block;
	border: solid 1px #ddd;
	padding: 10px 30px 10px 15px;
	background: url(img/common/arrow-01.svg) right 15px center / 5px no-repeat;
	transition: all 0.2s;
}

.sitemap a:hover {
	background: #eee url(img/common/arrow-01.svg) right 10px center / 5px no-repeat;
}

#sitemap #bottom-contents {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-direction: column-reverse;
}

#sitemap .area-box {
	padding: 0;
	margin-bottom: 80px;
}

a.content-attention {
	text-align: center;
	width: 620px;
	border: 2px solid #f00;
	box-sizing: border-box;
	color: #f00;
	padding: 14px;
	line-height: 1.5;
	margin: 80px auto 40px;
	display: block;
	font-weight: bold;
}

a.content-attention small {
	font-weight: normal;
	font-size: 14px;
	margin-left: 10px;
}

.modaal-content-container {
	padding: 0;
}

.newsppu-inner {
	padding: 30px;
	display: block;
	text-align: center;
}

.red-border {
	border: 1px solid red;
	padding: 5px;
	margin-bottom: 5px;
}

.newsppu-inner .ttl {
	font-size: 24px;
	text-align: center;
	margin: 0 auto 10px;
	font-weight: 600;
}

.newsppu-inner .day {
	font-size: 24px;
	margin: 10px auto;
	color: #f00;
	font-weight: bold;
	text-align: center;
}

.newsppu-inner > .text p a {
	color: #4169e1;
	text-decoration: underline;
}

.newsppu-inner > p {
	text-align: center;
	width: 840px;
	display: block;
	margin: auto;
}

.newsppu-inner em {
	font-style: normal;
	text-decoration: underline;
}

.modaal-container {
	border: 1px solid #000;
}

.modaal-wrapper .modaal-close {
	background: transparent;
}

.ppu-desc {
	font-size: 1.2rem;
}
@media only screen and (min-width: 767px) {
	.ppu-desc {
		font-size: 1.1rem;
	}
}

div.content-attention .content-width {
	max-width: 1240px;
	border: 2px solid #f00;
	box-sizing: border-box;
	color: #f00;
	padding: 20px 15px;
	line-height: 1.5;
	margin: auto;
}
div.content-attention .content-width .ttl {
	font-size: 1.6rem;
	margin-bottom: 5px;
	text-decoration-line: underline;
	color: #f00;
}

div.content-attention .content-width .day {
	font-size: 20px;
	margin: 10px;
	color: #f00;
}

div.content-attention .content-width p {
	color: #000;
}

div.content-attention .content-width .day strong {
	font-weight: bold;
	color: #f00;
}
div.content-attention .content-width .link-btn {
	color: #fff;
	background-color: #239925;
	padding: 5px 10px;
	margin-top: 10px;
	display: inline-block;
}
div.content-attention .content-width .link-btn::before {
	font-family: "FontAwesome";
	content: "\f138";
	padding-right: 5px;
}
div.content-attention .content-width .link-btn:hover {
	opacity: 0.7;
}

.wpcf7-recaptcha > div {
	margin: 0 auto 30px;
}

.tel-cont {
	display: none;
}

#area .head-message {
	margin: 0 auto 40px;
}

#area .head-message h2 {
	font-weight: bold;
	text-align: center;
}
#area .head-message h2 span {
	display: inline-block;
}

#area .head-message .marker_red {
	text-align: center;
	font-size: 2.2rem;
	font-weight: bold;
	margin: 0 auto 20px;
}
#area .head-message .marker_red span {
	background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, rgba(255, 100, 78, 0.5) 0%) repeat scroll 0 0;
}
#area .head-message .text {
	text-align: center;
}

#area .bnr-set {
	display: block;
	width: 100%;
	padding: 40px 0;
	box-sizing: border-box;
	margin-bottom: 40px;
}

#area .bnr-set ul {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	max-width: 1140px;
	margin: 0 auto;
	text-align: center;
}

#area .bnr-set li {
	width: 48.5%;
}

#area .bnr-set a {
	display: block;
	padding: 25px 10px;
	font-size: 19px;
	font-weight: bold;
	letter-spacing: 0;
	background: #fd9b27;
	color: #fff;
	border-radius: 4px;
	box-shadow: 0 4px 0 #cc6600;
	transition: all 0.2s;
}

#area .bnr-set a:hover {
	box-shadow: 0 0 0 #cc6600;
	transform: translateY(4px);
}

#area .bnr-set a::before {
	display: inline-block;
	content: url(../images/common/bnr-icon-01.png);
	vertical-align: middle;
	/*margin-right: 10px;*/
	transform: translateY(2px);
}

#area .bnr-set .bnr-02 a {
	background: #3bac3e;
	box-shadow: 0 4px 0 #006c03;
}

#area .bnr-set .bnr-02 a:hover {
	box-shadow: 0 0 0 #006c03;
}

#area .bnr-set .bnr-02 a::before {
	content: url(../images/common/bnr-icon-02.png);
}

#area .bnr-set .bnr-03 a {
	background: #ff644e;
	box-shadow: 0 4px 0 #b54d3e;
}

#area .bnr-set .bnr-03 a:hover {
	box-shadow: 0 0 0 #006c03;
}

#area .bnr-set .bnr-03 a::before,
#area .bnr-set .bnr-04 a::before,
#area .bnr-set .bnr-05 a::before {
	content: "";
}

#area .bnr-set .bnr-04 a {
	background: #1db100;
	box-shadow: 0 4px 0 #006c03;
}

#area .bnr-set .bnr-04 a:hover {
	box-shadow: 0 0 0 #006c03;
}

#area .bnr-set .bnr-05 a {
	background: #f8ba00;
	box-shadow: 0 4px 0 #af9e6c;
}

#area .bnr-set .bnr-05 a:hover {
	box-shadow: 0 0 0 #006c03;
}

#area .price_btn a {
	padding: 15px 105px;
	background: #ff9300 url(img/common/arrow-02-wh.svg) right 15px center / 24px no-repeat;
}

#area .price_btn a:hover {
	background: #000 url(img/common/arrow-02-wh.svg) right 10px center / 24px no-repeat;
}

.news_extraordinary {
	width: 1080px;
	border: 2px solid #d42020;
	margin: auto;
	padding: 20px;
	box-sizing: border-box;
	font-family: auto;
	margin: 60px auto;
}

.news_extraordinary .ttl {
	color: #d42020;
	font-weight: bold;
	text-align: left;
	font-size: 18px;
	margin-bottom: 10px;
}

.news_extraordinary .text {
	text-align: left;
	margin: 0 10px 24px;
}

.news_extraordinary .text .red {
	color: #d42020;
	font-weight: bold;
}

.news_extraordinary .text strong {
	background: linear-gradient(transparent 60%, #ffff66 60%);
	color: #333333;
	font-weight: bold;
	font-family: auto;
}

.servicenav {
	cursor: pointer;
}

ul.bnrs_extraordinary {
	display: block;
	width: 1080px;
	margin: 0 auto 60px;
}

ul.bnrs_extraordinary li {
	display: inline-block;
	vertical-align: top;
}

ul.bnrs_extraordinary li:first-child {
	width: 605px;
	margin-right: 20px;
}

ul.bnrs_extraordinary li:nth-child(2) {
	width: 343px;
}

#area .cont-box .txt {
	width: 20%;
}

.f_red {
	color: #ce2711 !important;
}

/* ここちkokochi バナー */
.kokochi-bnr {
	width: 100%;
	max-width: 1100px;
	display: flex;
	margin: 0 auto 90px;
	transition: all ease 0.2s;
}

.kokochi-bnr:hover {
	opacity: 0.8;
}

.kokochi-bnr__picture {
	width: 100%;
	height: 100%;
	display: block;
}

.kokochi-bnr__picture img {
	display: block;
}

/* コロナ対策コンテンツ */
.news-corona {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-top: 40px;
	padding-bottom: 70px;
}

.news-corona * {
	box-sizing: border-box;
}

.news-corona__effort {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	background: #f1f1df;
	margin-bottom: 54px;
	padding: 85px 0;
	z-index: 0;
}

.news-corona__effort::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: block;
	background: #eaead5;
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	z-index: 1;
}

.news-corona__effort::after {
	content: "";
	position: absolute;
	top: 45px;
	right: 30px;
	left: 30px;
	bottom: 45px;
	border: solid 4px #fff;
	z-index: 2;
}

.news-corona-effort-item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 254px;
	height: 230px;
	background: #fff;
	border-radius: 8px;
	padding-top: 4px;
	text-align: center;
	z-index: 3;
}

.news-corona-effort-item:not(:nth-of-type(3n)) {
	margin-right: 48px;
}

.news-corona-effort-item:nth-of-type(n + 4) {
	margin-top: 48px;
}

.news-corona-effort-item h2 {
	color: #ff0000;
	font-size: 22px;
	line-height: 1.6;
}

.news-corona-effort-item h2 b {
	font-size: 46px;
	font-weight: bold;
}

.news-corona-effort-item p {
	color: #2db02e;
	font-size: 23px;
	line-height: 37px;
}

.news-corona-effort-item p b {
	font-size: 32px;
	font-weight: bold;
}

.news-corona-effort-item:nth-of-type(2) p b {
	font-size: 35px;
}

.news-corona-effort-item:nth-of-type(2) img {
	width: 34%;
	margin-bottom: 14px;
}

.news-corona-effort-item:nth-of-type(3) img {
	width: 52%;
	margin-bottom: 10px;
}

.news-corona-effort-item:nth-of-type(4) img {
	width: 37%;
	margin-bottom: 10px;
}

.news-corona-effort-item:nth-of-type(5) img {
	width: 47%;
	margin-bottom: 10px;
}

.news-corona-effort-item:nth-of-type(6) img {
	width: 59%;
	margin-top: 6px;
	margin-bottom: 15px;
}

.news-corona__treatment,
.news-corona__request {
	display: flex;
	flex-direction: column;
	width: 48.8%;
}

.news-corona__treatment h3,
.news-corona__request h3 {
	width: 100%;
	background: #34ae36;
	color: #fff;
	font-size: 28px;
	line-height: 1;
	padding: 10px 0;
	text-align: center;
}

.news-corona__treatment p,
.news-corona__request p {
	flex-grow: 1;
	display: flex;
	align-items: center;
	width: 100%;
	background: #f1f1df;
	color: #050505;
	font-size: 18px;
	line-height: calc(37 / 18);
	padding: 30px;
}

/* 11/10 改修部分 */

#faq ul {
	list-style: disc;
	margin-left: 2rem;
}

#faq ul li {
	margin-bottom: 1rem;
}

#faq #faq-menu ul li:first-child {
	margin-top: 1rem;
}

.margin_adjustment {
	margin-bottom: 40px;
}

.tmp .work-list > .new_works_wrapper {
	width: 100%;
	padding: 0;
	display: flex;
	margin-bottom: 3rem;
}

.tmp .work-list > .new_works_wrapper h2 {
	font-size: 2rem;
	font-weight: bold;
	color: #35ae37;
	margin: 3.5rem 4rem 0;
	border-bottom: 1px #a7a7a7 solid;
	padding-bottom: 0.5rem;
}

.tmp .work-list > .new_works_wrapper p {
	font-size: 1.6rem;
	margin: 1.5rem 4rem 0;
}

.new_works_wrapper img {
	width: 23%;
}

.new_works_wrapper_text {
}

.new_works_wrapper_text p {
	color: #000 !important;
	text-align: left !important;
}

.tmp .works-box .work .read_new {
	font-size: 1.6rem;
}

.tmp .works-box .work .btn_03_adjust {
	margin-top: 30px;
}

.tmp .option-list .flex .center {
	text-align: center;
}

.tmp .option-list .flex p {
	font-weight: bold;
	margin: auto;
}

.tmp .option-list > .ad_option-list {
	width: calc(25% - 10px);
}

.tmp .option-list .flex .img_ad {
	width: 72px;
	margin-right: 5px;
}

.option-list::after {
	content: "";
	display: block;
	width: calc(25% - 10px);
}

@media screen and (max-width: 1100px) {
	.tmp .work-list > .new_works_wrapper h2 {
		margin: 1.5rem 4rem 0;
	}
}

@media screen and (max-width: 1000px) {
	.tmp .work-list > .new_works_wrapper h2 {
		font-size: 1.6rem;
		margin: 1rem;
	}
	.new_works_wrapper_text p {
		font-size: 1.3rem !important;
		margin: 1rem !important;
	}
	.new_works_wrapper img {
		width: 30%;
	}
	.tmp .works-box .work .btn_03_adjust {
		margin-top: 15px;
	}
	.tmp .option-list .flex p {
		width: auto;
		text-align: left;
	}
	.tmp .option-list > .ad_option-list {
		width: 100%;
		padding: 0;
		margin: 0 0 15px;
	}
}

@media screen and (max-width: 768px) {
	.tmp .work-list > .new_works_wrapper {
		display: block;
	}
	.new_works_wrapper img {
		width: 100%;
	}
}

@media screen and (min-width: 1000px) and (max-width: 1130px) {
	.tmp .option-list .flex .img_ad {
		width: 60px;
	}
	.tmp .ad_option-list p {
		font-size: 1.4rem;
	}
}

/* 20231219 add */

.remains-page .point-list ol {
	left: 0;
	gap: 5%;
}

.remains-page .point-list .flex li {
	margin-right: 0;
}
#faq ul li {
	list-style-type: none;
}
/* 2024.06.10 */
.page-nav .wp-pagenavi {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	row-gap: 10px;
}

/* 2024.06.18 add */
#recovery .point-list {
	margin-bottom: 2rem;
}
#recovery .point-list .flex {
	justify-content: center;
	gap: 62px;
}
#recovery .point-list .flex li {
	margin-right: 0;
}
#recovery .point-list .flex li > p {
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: -0.8px;
	text-align: center;
}
#recovery .header-01 > .read {
	max-width: 570px;
	margin: 0 auto;
	text-align: left;
}
@media screen and (max-width: 1000px) {
	#recovery .point-list .flex {
		gap: 20px;
	}
	#recovery .point-list .flex li {
		margin-right: 0;
		margin-bottom: 0px !important;
	}
}

/* 2024.08.16 add */
.point-list figure img {
	aspect-ratio: 1 / 1;
}
@media screen and (max-width: 1000px) {
	.tmp .purchase .info figure {
		width: 100%;
		text-align: center;
		margin-bottom: 10px;
		aspect-ratio: 220 / 153;
		overflow: hidden;
	}
	.tmp .purchase .info figure img {
		object-fit: contain;
		width: 100%;
		height: 100%;
	}
	.tmp .results .info figure {
		width: 100%;
		text-align: center;
		margin-bottom: 10px;
		aspect-ratio: 80 / 47;
		overflow: hidden;
		max-width: 240px;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0 auto 10px;
	}
	.tmp .results .info figure img {
		max-width: none;
		width: 100%;
		height: 100%;
		object-fit: contain;
		margin: 0 auto;
	}
}
.remains-page #works {
	padding-top: 100px;
	margin-top: -100px;
}

/* 2024.08.23 add */

#area .feature-box .feature__ttl {
	text-align: center;
	margin: 0 0 19px;
	font-size: 2.7rem;
	font-family: serif;
	color: #43b035;
	font-weight: bold;
	line-height: 1.3;
}
#area .feature-box .feature-05 .feature__ttl {
	font-size: 2.4rem;
	letter-spacing: -0.05em;
}

@media screen and (max-width: 1000px) {
	#area .feature-box .feature__ttl {
		margin: 0 0 15px;
		font-size: 2.6rem;
	}
	#area .feature-box .feature-05 .feature__ttl {
		font-size: 2.3rem;
	}
}

/* 2024.08.27 add */

#purchase .point-list .flex {
	justify-content: center;
	margin-bottom: 50px;
}
#purchase .service-box * {
	box-sizing: border-box;
}
#purchase .service-box {
	width: 100%;
	margin-bottom: 110px;
	overflow: hidden;
}
#purchase .service-box .read {
	margin-bottom: 72px;
}
#purchase .service-box .point-list .flex {
	margin-bottom: 40px;
}
#purchase .service-box .point-list .flex p {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

#purchase .service-list {
	display: flex;
	flex-flow: column;
	width: 100%;
	gap: 30px;
}
#purchase .service-list-item {
	width: 100%;
	display: flex;
	gap: 30px;
	justify-content: space-between;
	align-items: flex-start;
	padding: 30px;
	background: #fff;
	border: 1px solid #ccc;
	position: relative;
}

#purchase .service-list-item > figure {
	width: 32.72%;
	aspect-ratio: 360 / 270;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	max-width: 360px;
	flex-shrink: 0;
}
#purchase .service-list-item > figure > img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

#purchase .service-list-item > div {
	width: 100%;
	display: flex;
	flex-flow: column;
	gap: 30px;
}
#purchase .service-list-item > div > h3 {
	width: 100%;
	font-size: 2.3rem;
	color: #000;
	font-weight: 600;
	text-align: left;
	margin: 0;
	line-height: 1.6;
	position: relative;
	display: flex;
	gap: 20px;
	align-items: center;
}
#purchase .service-list-item > div > h3::before {
	content: "";
	width: 5px;
	height: 80px;
	background: #35ae37;
}

#purchase .service-list-item > div > h3 > br.pc {
	display: inline;
}

#purchase .service-list-item > div > p {
	width: 100%;
	text-align: left;
	font-size: 16px;
}

@media screen and (max-width: 1000px) {
	#purchase .service-box {
		margin-bottom: 80px;
	}

	#purchase .service-list-item {
		gap: 30px;
		padding: 20px;
		flex-flow: column;
		align-items: center;
	}
	#purchase .service-list-item > figure {
		width: 100%;
	}
	#purchase .service-list-item > div {
		gap: 14px;
	}
	#purchase .service-list-item > div > h3 {
		font-size: 1.8rem;
		line-height: 1.4;
	}

	#purchase .service-list-item > div > h3 > br.pc {
		display: none;
	}
	#purchase .service-list-item > div > h3::before {
		height: 65px;
	}
	#purchase .service-list-item > div > p {
		font-size: 1.4rem;
	}
}

/* 2025.03.10 */
.s-voide-cont * {
	box-sizing: border-box;
}
.s-voide-cont {
	width: 100%;
	display: flex;
	flex-flow: column;
	position: relative;
	overflow: hidden;
	gap: 30px;
}
.s-voide-cont-flex {
	width: 100%;
	display: flex;
	justify-content: space-between;
	gap: 30px;
	position: relative;
	align-items: flex-start;
}
.s-voide-img-area {
	width: 32%;
	flex-shrink: 0;
	max-width: 350px;
	display: flex;
	flex-flow: column;
	gap: 30px;
	align-items: center;
	overflow: hidden;
}
.s-voide-survey-img {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	height: auto;
	aspect-ratio: 1 / 1;
}
.s-voide-survey-img > a {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}
.s-voide-survey-img > a > img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.s-voide-survey-img.sp {
	display: none;
}

.s-voice-info-area {
	width: 100%;
	display: flex;
	flex-flow: column;
	gap: 30px;
}
.s-voice-info-area > div {
	width: 100%;
}
.ba-images-grid {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.ba-images-grid > a {
	transition: all ease 0.33s;
}
.ba-images-grid > a img {
	width: 100%;
	max-width: none;
	height: 100%;
	object-fit: contain;
}
.ba-images-grid > a:hover {
	opacity: 0.6;
}

.ba-img {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: column;
	overflow: hidden;
	height: auto;
	width: 100%;
	aspect-ratio: 1 / 1;
}
.ba-img > div {
	width: 100%;
	display: flex;
	height: auto;
	overflow: hidden;
	justify-content: center;
	align-items: center;
	position: relative;
}
.ba-img > div > span {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	width: auto;
	height: 24px;
	padding: 0 15px;
	letter-spacing: 1.3px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 14px;
	font-family: "Josefin Slab", serif;
	font-weight: bold;
}
.ba-img > div.ba-img-before > span {
	background: #999;
}
.ba-img > div.ba-img-after > span {
	background: #35ae37;
}

.ba-img > div > figure {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
	z-index: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.ba-img > div > figure > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}
.ba-img > div > figure > img.no-after {
	filter: brightness(0.5);
}
p.img-ba-note {
	margin: 0 !important;
	position: absolute;
	color: #fff;
	z-index: 10;
	font-weight: bold;
}

.ba-img > figure {
	width: 50px;
	height: auto;
	aspect-ratio: 1 / 1;
	align-items: center;
	display: flex;
	justify-content: center;
	overflow: hidden;
	position: absolute;
	z-index: 10;
	filter: drop-shadow(0px 2px 4px rgb(0 0 0 / 30%));
}

@media screen and (max-width: 1000px) {
	.s-voide-cont-flex {
		justify-content: flex-start;
		align-items: center;
		flex-flow: column;
	}
	.s-voide-img-area {
		width: 100%;
		max-width: 500px;
	}
	.s-voide-survey-img {
		display: none;
	}
	.s-voide-survey-img.sp {
		display: flex;
	}
	.s-voice-info-area {
		gap: 20px;
	}
	.ba-images-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 15px;
	}

	.ba-img > div > span {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 10;
		width: auto;
		height: 24px;
		padding: 0 15px;
		letter-spacing: 1.3px;
		display: flex;
		justify-content: center;
		align-items: center;
		color: #fff;
		font-size: 14px;
		font-family: "Josefin Slab", serif;
		font-weight: bold;
	}
	.ba-img > div.ba-img-before > span {
		background: #999;
	}
	.ba-img > div.ba-img-after > span {
		background: #35ae37;
	}

	.ba-img > div > figure {
		width: 100%;
		height: 100%;
		overflow: hidden;
		position: relative;
		z-index: 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.ba-img > div > figure > img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		z-index: 0;
	}
	.ba-img > div > figure > img.no-after {
		filter: brightness(0.5);
	}
	p.img-ba-note {
		margin: 0 !important;
		position: absolute;
		color: #fff;
		z-index: 10;
		font-weight: bold;
	}

	.ba-img > figure {
		width: 50px;
		height: auto;
		aspect-ratio: 1 / 1;
		align-items: center;
		display: flex;
		justify-content: center;
		overflow: hidden;
		position: absolute;
		z-index: 10;
		filter: drop-shadow(0px 2px 4px rgb(0 0 0 / 30%));
	}
}

/* 2025.06.23 */
.link-area-select {
	text-decoration: underline;
	text-underline-offset: 2px;
	transition: all ease 0.33s;
	font-size: 1.4rem !important;
}
.link-area-select:hover {
	color: #00b900;
}
.card-a-voice .price p {
	font-size: 1.3rem;
	line-height: 1.5;
	color: #35ae37;
	margin-bottom: 10px;
}
.card-a-voice .price strong {
	font-size: 2.4rem;
}
.card-a-voice .a-voide-main-img {
	width: 32%;
	padding-right: 30px;
	box-sizing: border-box;
}
.card-a-voice .post-archive > .flex {
	flex-wrap: nowrap;
}
.card-a-voice .post-archive > .flex .txt .txt.flex {
	padding-top: 30px;
	border-top: solid 1px #ddd;
	align-items: flex-end;
	margin-bottom: 0;
}

.s-voice-bottom-btns {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
}
.s-voice-bottom-btns > .btn-03 > a {
	font-size: 1.6rem;
	padding: 10px 60px 10px 20px;
}
@media screen and (max-width: 1000px) {
	.s-voice-bottom-btns {
		justify-content: flex-start;
		flex-flow: column;
		gap: 15px;
		margin-top: 50px;
	}
	.s-voice-bottom-btns > .btn-03 > a {
		font-size: 1.4rem;
		padding: 10px 55px 10px 25px;
	}
	.card-a-voice .post-archive > .flex {
		flex-wrap: nowrap;
		gap: 30px;
		align-items: center;
	}
	.card-a-voice .a-voide-main-img {
		width: 100%;
		padding-right: 0;
		box-sizing: border-box;
		max-width: 500px;
	}
	.card-a-voice .post-archive > .flex .txt .txt.flex {
		flex-flow: column;
		gap: 10px;
	}
	.card-a-voice .price p {
		margin-bottom: 0;
		display: flex;
		align-items: baseline;
		gap: 10px;
	}
	.card-a-voice .price p br {
		display: none;
	}
}
@media screen and (max-width: 768px) {
	.s-voice-bottom-btns {
		margin-top: 40px;
	}
	.s-voice-bottom-btns > .btn-03 > a {
		font-size: 1.3rem;
	}
	.card-a-voice .post-archive > .flex {
		gap: 10px;
	}
}

/* 2025.07.09 */
.company-cert-group {
	width: 100%;
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	gap: 20px;
	margin-bottom: 20px;
	position: relative;
	overflow: hidden;
}
.company-cert-group > p {
	width: 100%;
}
.company-cert-group > div {
	width: 100%;
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	gap: 20px;
}
.company-cert-group > div > figure {
	width: 100%;
	max-width: 340px;
	height: auto;
	aspect-ratio: 68 / 48;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	border: 1px solid #eee;
	box-sizing: border-box;
}
.company-cert-group > div > figure img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* 2025.09.03 */
#price .page-nav-area * {
	box-sizing: border-box;
}
#price .page-nav-area {
	width: 100%;
	display: flex;
	flex-flow: column;
	gap: 40px;
	align-items: center;
	position: relative;
	margin-bottom: 80px;
	box-sizing: border-box;
}

#price .page-nav-grid {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}
#price .page-nav-grid .page-nav-grid-item {
	border: solid 1px #43b036;
	background: url(img/common/arrow-down-02-gr.svg) center bottom 15px / 8px no-repeat;
	padding: 10px 10px 25px;
	font-size: 1.5rem;
	transition: all 0.2s;
	text-align: center;
	color: #43b036;
}
#price .page-nav-grid .page-nav-grid-item:hover {
	background: #fafafa url(img/common/arrow-down-02-gr.svg) center bottom 10px / 8px no-repeat;
}

#price .page-nav-note-box {
	width: 100%;
	display: flex;
	flex-flow: column;
	align-items: center;
	background: #f4fbf5;
}
#price .page-nav-note-ttl {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 6px;
	background: #43b036;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.3em;
	color: #fff;
	line-height: 1.8;
}
.page-nav-note-body {
	width: 100%;
	padding: 30px;
	font-size: 15px;
}
.page-nav-note-body > p > span {
	text-decoration: underline;
	text-decoration-color: #fff799;
	text-decoration-thickness: 13px;
	text-underline-offset: -7px;
}

@media screen and (max-width: 1000px) {
	#price .page-nav-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media screen and (max-width: 750px) {
	#price .page-nav-area {
		gap: 30px;
		margin-bottom: 30px;
	}
	#price .page-nav-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}
	#price .page-nav-note-ttl {
		font-size: 14px;
		letter-spacing: 0.2em;
	}
	.page-nav-note-body {
		padding: 20px;
		font-size: 14px;
	}
}
@media screen and (max-width: 500px) {
	#price .page-nav-grid .page-nav-grid-item {
		font-size: 1.2rem;
	}
}

#price .price-list.car-list .flex {
	align-items: stretch;
}
#price .price-list .ttl .tag {
	width: 35%;
	font-size: 18px;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}
#price .price-list .ttl .price {
	width: 65%;
}
#price .service-btn-grid {
	width: 100%;
	display: flex;
	padding: 0 25px 30px;
	gap: 16px;
	align-items: center;
	flex-wrap: wrap;
}
#price .service-btn-grid > .btn-03 > a {
	padding: 10px 50px 10px 25px;
	font-size: 1.6rem;
}

@media screen and (max-width: 1000px) {
	.service-btn-grid {
		flex-flow: column;
		box-sizing: border-box;
		padding: 0 15px 15px;
	}
	#price .service-btn-grid > .btn-03 {
		width: 100%;
	}
}
@media screen and (max-width: 500px) {
	#price .service-btn-grid > .btn-03 > a {
		font-size: 1.4rem;
		padding: 10px 20px 10px 15px;
		white-space: nowrap;
	}
}

#price .option .flex.read {
	align-items: flex-start;
}
#price .option .flex.read h4 {
	font-size: 1.8rem;
	padding-bottom: 5px;
	border-bottom: solid 1px #999999;
	font-weight: 600;
}
#price .opt-price-tbl-wrapper {
	width: 100%;
	position: relative;
}
#price .opt-price-tbl-area {
	width: 100%;
	display: flex;
	flex-flow: column;
	gap: 20px;
	align-items: flex-start;
}
#price .opt-price-tbl-area > p {
	width: 100%;
	text-align: left;
	font-size: 1.2rem;
}
#price .opt-price-tbl-area .table-01 th {
	font-size: 1.4rem;
	white-space: nowrap;
	background: #f9f9f9;
	color: initial;
}
#price .opt-price-tbl-area .table-01 td {
	padding: 10px;
	font-size: 1.3rem;
	text-align: center;
	color: initial;
}
#price .opt-price-tbl-area .table-01 td > a,
#price .opt-price-tbl-area .table-01 td > span {
	color: #43b036;
}
#price .opt-price-tbl-area .table-01 td > a:hover {
	opacity: 0.6;
}
#price .opt-price-tbl-area .table-01 td > span > strong {
	font-size: 1.6rem;
}

@media screen and (max-width: 1000px) {
	#price .option .flex.read h4 {
		font-size: 1.6rem;
	}
	#price .options-box {
		margin-bottom: 60px;
	}
}
@media screen and (max-width: 750px) {
}
@media screen and (max-width: 500px) {
	#price .opt-price-tbl-wrapper {
		overflow-x: auto;
	}
	#price .opt-price-tbl-wrapper .table-01 {
		width: 550px;
	}
}

#price .purchase-box .cont {
	border: solid 1px #ccc;
	padding: 25px 0 0;
	margin: 40px 0 80px;
}
#price .price-purchase-box * {
	box-sizing: border-box;
}
#price .price-purchase-box {
	width: 100%;
	display: flex;
	gap: 32px;
	align-items: flex-start;
	padding: 30px;
	box-sizing: border-box;
}
#price .price-purchase-box > figure,
#adjustment .adjustment-purchase-box > figure,
#remains .adjustment-purchase-box > figure
 {
	width: 55.8%;
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	aspect-ratio: 614 / 290;
	overflow: hidden;
}

#price .price-purchase-box > figure img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#price .price-purchase-box > .txt {
	width: 100%;
	display: flex;
	flex-flow: column;
}
#adjustment .adjustment-purchase-box > .txt > h4 {
	font-size: 1.8rem;
	font-weight: 600;
	padding-bottom: 5px;
	border-bottom: solid 1px #999999;
	margin-bottom: 20px;
}
#adjustment .adjustment-purchase-box > figure img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

#remains .adjustment-purchase-box > .txt > h4 {
	font-size: 1.8rem;
	font-weight: 600;
	padding-bottom: 5px;
	border-bottom: solid 1px #999999;
	margin-bottom: 20px;
}

#remains .adjustment-purchase-box > figure img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}


#price .price-purchase-box > .txt > p {
	width: 100%;
	font-size: 1.5rem;
	margin-bottom: 24px;
}
#price .price-purchase-box > .txt > span {
	width: 100%;
	font-size: 1.3rem;
	color: #999999;
}

@media screen and (max-width: 1000px) {
	#price .price-purchase-box h4 {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 750px) {
	#price .price-purchase-box {
		flex-flow: column;
		align-items: center;
		gap: 20px;
		padding: 20px;
	}
	#price .price-purchase-box > figure,
	#adjustment .adjustment-purchase-box > figure,
	#remains .adjustment-purchase-box > figure {
		width: 100%;
	}
	#price .purchase-box .cont {
		margin-bottom: 30px;
	}
}

#price .payment-box {
	width: 100%;
	box-sizing: border-box;
	background: #f4fbf5;
	padding: 16px;
	border-radius: 10px;
	position: relative;
	margin-bottom: 76px;
}
#price .payment-box .payment-inner {
	background: #fff;
	width: 100%;
	position: relative;
	display: flex;
	flex-flow: column;
	align-items: center;
}
.payment-ttl {
	width: auto;
	display: flex;
	justify-content: center;
	position: absolute;
	top: -30px;
}
.payment-ttl > h2 {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	position: relative;
	font-size: 25px;
	font-weight: 600;
	letter-spacing: 0.3em;
	color: #43b036;
	text-align: center;
	line-height: 1;
	margin: 0;
}
.payment-ttl > h2 br {
	display: none;
}
.contents .payment-ttl > h2 {
	flex-shrink: 0;
}
.payment-ttl > h2::before,
.payment-ttl > h2::after {
	content: "/";
	color: #43b036;
}
.payment-ttl > h2::before {
	transform: rotateY(-180deg);
}
#price .payment-box .payment-inner > .cont {
	width: 100%;
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	padding: 50px 40px 20px;
	box-sizing: border-box;
}
#price .payment-box .payment-inner > .cont .heading-01 {
	margin: 0;
	margin-bottom: 16px;
}
.price-payment-image-box {
	width: 100%;
	display: flex;
	justify-content: flex-start;
	margin-bottom: 40px;
}
.price-payment-image-box:last-of-type {
	margin-bottom: 0px;
}
.price-payment-image-box img {
	width: 100%;
	max-height: 70px;
}
.price-payment-image-box:nth-of-type(2) img {
	max-height: 198px;
}
.price-payment-image-box:nth-of-type(3) img {
	max-width: 190px;
}
.price-invoice-bnr-box {
	width: 100%;
	position: relative;
	overflow: hidden;
	margin-bottom: 50px;
}

@media screen and (max-width: 1000px) {
	.contents .payment-ttl > h2 {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 750px) {
	.contents .payment-ttl > h2 {
		font-size: 1.6rem;
	}
	#price .payment-box .payment-inner > .cont {
		padding: 50px 20px 20px;
	}
	.price-payment-image-box img {
		max-height: 130px;
	}
	.price-payment-image-box:nth-of-type(2) img {
		max-height: 190px;
	}
	.price-payment-image-box:nth-of-type(3) img {
		max-width: 130px;
	}
}
@media screen and (max-width: 600px) {
	.payment-ttl > h2 br {
		display: inline;
	}
}

.is-anchor-top {
	scroll-margin-top: 150px;
}
@media screen and (max-width: 750px) {
	.is-anchor-top {
		scroll-margin-top: 80px;
	}
}

/* 2025.10.31 add */
#page-ttl > h1 {
	width: auto;
	text-align: left;
	position: absolute;
	z-index: 10;
	top: 20px;
	left: 20px;
	font-weight: 400;
	font-size: 12px;
	color: #ffffff;
	filter: drop-shadow(0px 1px 1px rgb(0 0 0 / 80%));
}
@media screen and (max-width: 1000px) {
	#adjustment #page-ttl,
	#remains #page-ttl {
		padding-block: 80px;
	}
}
@media screen and (max-width: 500px) {
	#page-ttl > h1 {
		font-size: 10px;
	}
}
