@charset "utf-8";

/* タイルカーペット買取 静的ページ */
body {
	font-family: ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳ\ Ｐゴシック, MS PGothic, sans-serif;
	font-size: 100%;
	color: #1e1e1e;
}

#main-container {
	padding: 0 !important;
}

a {
	text-decoration: none;
}

.fade-in {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}


.fade-in.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* -------------------------------------
共通 
---------------------------------------*/

.tt-h1 {
	display: none;
}

.carpet_title {
	position: relative;
}

#section {
	margin: 0 auto;
}

.section-title {
	padding: 40px 0;
	font-size: 1.6rem;
	font-weight: 600;
	text-align: center;
}

.bold_green {
	font-size: 2rem;
	font-weight: bold;
	color: #56B06F;
}

.brsp {
	display: block;
}

.brpc {
	display: none;
}

@media screen and (min-width:769px) {
	.section-title {
		font-size: 2rem;
	}

	.brsp {
		display: none;
	}

	.brpc {
		display: block;
	}

	.bold_green {
		font-size: 3rem;
	}
}

/* -------------------------------------
mv
---------------------------------------*/
.mvpc {
	display: none;
}

.mvsp {
	display: block;
}

@media screen and (min-width:769px) {
	.mvpc {
		display: block;
	}

	.mvsp {
		display: none;
	}
}

/* -------------------------------------
タイルカーペット
---------------------------------------*/
.title_img {
	display: none;
}

.title_imgsp {
	display: block;
}

.car_img {
	width: 80%;
	position: absolute;
	bottom: 0%;
	left: 50%;
	transform: translateY(25%) translateX(-50%);
	box-shadow: 0 0 4px rgba(32, 54, 41, 0.6);
}

.section-tile {
	padding-bottom: 40px;
	background: linear-gradient(to bottom, #FAFEE9, #F6F1E9);
}

.tile_inner {
	position: relative;
	background-image: url(/ws/kaitoripage/kaitori_newimage/carpetBg.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center bottom;
	vertical-align: bottom;
	z-index: 1;
}

.carpet_photos,
.oa_photos {
	width: 80%;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 8px;
		text-align: center;
}

.tile_group,
.oagroup {
	flex: 1;
	width: 50%;
}

.carpet_table {
	width: 90%;
	margin: 20px auto 20px;
	border-collapse: collapse;
}

.carpet_table th {
	background: #ECF1AF;
	border: solid 1px #547B32;
	color: #547B32;
	padding: 10px;
	font-size: 0.7rem;
	white-space: nowrap;
}

.carpet_table td {
	border: solid 1px #547B32;
	background-color: #FFFDFA;
	padding: 10px;
	text-align: left;
}

.carpet_table span {
	color: #D23716;
	font-size: 1.3rem;
	font-weight: 500;
}

.note-box {
	font-size: 0.8rem;
}

/* カーペットPC */
@media screen and (min-width:769px) {
	.section-tile {
		padding: 40px 0;
	}

	.car_img {
		width: 60%;
	}

	.title_img {
		display: block;
	}

	.title_imgsp {
		display: none;
	}

	.carpet_table {
		width: 80%;
		margin: 60px auto 40px;
	}

	.carpet_table th {
		font-size: 1rem;
	}

	.carpet_photos,
	.oa_photos {
		width: 60%;
		gap: 24px;
	}
}

/* -------------------------------------
取引不可
---------------------------------------*/
.section-cancel {
	padding-bottom: 40px;
}

.carpet_txt,
.cancel_txt {
	text-align: left;
	padding: 16px 0;
	font-size: 1rem;
}

.cancel_contents {
	padding: 2.6%;
}

.cancel_detail {
	margin: 0 auto;
}

.cancel_group {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 8px;
		text-align: center;
}

.item_name {
	font-weight: 600;
	font-size: 0.9rem;
}

/* 取引不可PC */
@media screen and (min-width:769px) {
	.section-cancel {
		padding: 40px 0;
	}

	.carpet_txt {
		font-size: 1.2rem;
	}

	.cancel_group {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 32px;
	}

	.carpet_txt,
	.cancel_txt {
		margin-bottom: 16px;
		font-size: 1rem;
	}

	.item_name {
		font-size: 1rem;
	}
}

/* -------------------------------------
link
---------------------------------------*/
.btnContact-wrap {
	position: relative;
}

.cta_btn {
	margin: 0 auto;
	max-width: 600px;
	position: relative;
	z-index: 1;
	overflow: hidden;
	padding: 16px;
	border-radius: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 24px;
	box-shadow: 0 0 8px #1e1e1e;
	cursor: pointer;
	border: none;
	color: #fff;
	background: linear-gradient(45deg, #00ED86, #00A2CF);
	transition: all .3s ease;
}


.cta_btn::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 0;
	height: 100%;
	background: linear-gradient(45deg, #00A2CF, #1A008E);
	transition: width .3s ease;
}

.cta_btn:hover::before {
	width: 100%;
}

.cta_btn::after {
	content: '';
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: border-color .3s ease;
}

.image_area {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 32px;
	padding-top: 20px;
}

.image_area img {
	width: 30%;
}

.soudancta {
	padding: 3%;
}

/* link break point */
@media screen and (min-width:400px) and (max-width:769px) {
	.cta_txt {
		font-size: 1.2rem;
	}
}

/* link pc */
@media screen and (min-width:769px) {
	.cta_txt {
		font-size: 1.6rem;
	}

	.image_area {
		margin: 0 auto;
		margin-right: 0;
		width: 50%;
	}
}

/* -------------------------------------
OA
---------------------------------------*/
.oa_titlepc {
	display: none;
}

.oa_titlesp {
	display: block;
}

.section-oa {
	background-color: #F8F6EC;
}


.oa_contents {
	padding: 0 2.6%;
}

.oa_detail {
	margin: 40px auto;
	padding: 20px;
	background-color: #FFFDFA;
	border: 3px solid #48AC75;
	border-radius: 4px;
}

.oa_list {
	text-align: left;
	list-style-type: disc;
	padding-left: 24px;
}

.oa_txt {
	text-align: left;
	padding: 0 5.6% 40px;
}

.map {
	margin: 0 auto;
	text-align: center;
	padding-top: 24px;
}

/* OApc */
@media screen and (min-width:769px) {

	.oa_titlepc {
		display: block;
	}

	.oa_titlesp {
		display: none;
	}

	.oa_contents {
		padding: 40px 2.6%;
	}
}

/* -------------------------------------
サステナブル
---------------------------------------*/
.section-sdgs {
	background: linear-gradient(to bottom, #FAFEE9, #F6F1E9);
}

.sdgs_inner {
	position: relative;
	background: url(/ws/kaitoripage/kaitori_newimage/leafbg.png);
	z-index: 1;
	background-position: left bottom;
	background-repeat: no-repeat;
}

.sdgs_txt {
	padding: 0 5.2% 2%;
}

.sdgs_txt p {
	text-align: left;
}

.contents_title {
	font-size: 1.6rem;
	color: #FFFDFA;
	padding: 16px 0;
	text-align: center;
}


.co2_itemsp {
	padding-top: 20px;
	text-align: center;
}

.co2_itempc {
	display: none;
}

.co2 {
	display: block;
	background-color: #FFFDFA;
	border: 4px solid #48AC75;
	border-radius: 16px;
	text-align: center;
	margin: 3%;
}

.co2_titlegroup {
	color: #FFFDFA;
	background-color: #48AC75;
}

.hosoku {
	text-align: left;
	font-size: 0.8rem;
	padding-bottom: 16px;
}

.co2_itemsp img {
	width: 80%;
	margin: 0 auto;
}

.example {
	white-space: nowrap;
}

.image_small {
	width: 50% !important;
	text-align: right !important;
}

.fukidashi_wrap {
	width: 90%;
    margin: 0 auto;
	padding: 3%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 32px;
}

.fuki_item {
	position: relative;
	width: 80%;
	min-height: 14vh;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	background: #56B06F;
	border-radius: 50%;
	padding: clamp(4px, 2vw, 16px);
	font-size: clamp(10px, 2.2vw, 16px);
}

.fuki_item::after {
	content: "";
	position: absolute;
	bottom: -8%;
	right: 1%;
	transform: translateX(-50%) rotate(-30deg);
	border-width: 12vw 4vw 0 3vw;
	border-style: solid;
	border-color: #56B06F transparent transparent transparent;
}

.fuki_item.item_02 {
	align-self: flex-end;
}

.fuki_item p {
	padding: 10%;
	font-size: 4vw;
	color: #FFFDFA;
	z-index: 2;
}

.gmap_iframe {
	aspect-ratio: 16 / 9;
	max-width: 1000px;
	width: 100%;
	height: auto;
}

.tomy_comment {
	width: 100%;
}

.tomy_txt {
	padding: 24px 24px 0;
	text-align: left;
}

.tomy_image {
	display: block;
	width: 100%;
	text-align: right;
	padding-right: 3%;
}

.tomy_image.poyo.is-animated {
	animation: poyo 1s ease-in-out forwards;
}


@keyframes poyo {
	0% {
		transform: scale(1.0, 1.0) translate(0, 0);
	}

	15% {
		transform: scale(1.0, 1.0) translate(0, 5px);
	}

	30% {
		transform: scale(1.0, 1.0) translate(0, 8px);
	}

	50% {
		transform: scale(1.0, 1.0) translate(0, -8px);
	}

	70% {
		transform: scale(1.0, 1.0) translate(0, 5px);
	}

	100% {
		transform: scale(1.0, 1.0) translate(0, 0);
	}

	0%,
	100% {
		opacity: 1;
	}
}

.tomy_image img {
	width: 30%;
	min-width: 120px;
	max-width: 200px;
}


/* サステナブルpc */
@media screen and (min-width:769px) {
	.co2_itempc {
		display: block;
		width: 80%;
		margin: 24px auto;
	}

	.co2 {
		display: none;
	}

	.tomy {
		max-width: 1400px;
		padding: 0 2%;
		display: flex;
		justify-content: center;
		align-items: flex-end;
		gap: 8px;
	}

	.tomy_image {
		display: block;
		width: 25%;
	}

	.tomy_txt {
		padding: 3%;
	}

}

@media screen and (min-width:400px) and (min-width:769px) {
	.fuki_item p {
		padding: 8%;
		font-size: 0.9rem;
	}
}

@media screen and (min-width:1000px) {
	.fukidashi_wrap {
		width: 100%;
		padding: 0;
		display: flex;
		gap: 20px;
		justify-content: center;
		align-items: flex-start;
		flex-direction: row;
	}

	.fuki_item {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		background: #56B06F;
		border-radius: 50%;
		padding: clamp(4px, 2vw, 16px);
		font-size: clamp(10px, 2.2vw, 16px);
		width: calc(30% - 10px); 
    aspect-ratio: 1 / 1;
	}


	.fuki_item::after {
		position: absolute;
		transform: translateX(-50%) rotate(-35deg);
		border-width: 4vw 1vw 0 3vw;
		border-style: solid;
		border-color: #56B06F transparent transparent transparent;
	}
}

@media screen and (min-width:1200px) {
	.fuki_item p {
		padding: 8%;
		font-size: 1rem;
	}
}

/* -------------------------------------
CTA
---------------------------------------*/
.section-cta {
	background: url(/ws/kaitoripage/kaitori_newimage/contactbg.png);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.cta_group {
	position: relative;
	background: linear-gradient(60deg, rgba(92, 126, 63, 0.5), rgba(101, 145, 63, 0.1));
	z-index: 1;
	padding: 60px 20px 0 20px;
	text-align: center;
}

.cta_name {
	font-size: 1.2rem;
	font-weight: 400;
	color: #FFFDFA;
	margin-bottom: 16px;
}

.form_wrap,
.tel_wrap {
	display: block;
	flex: 1;
}

.tel_wrap {
	padding-top: 20px;
}

.phoneContact {
	display: block;
	text-align: center;
}

.formBtn {
	position: relative;
	z-index: 1;
	overflow: hidden;
	padding: 16px;
	border-radius: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 24px;
	box-shadow: 0 0 8px #1e1e1e;
	cursor: pointer;
	border: none;
	color: #fff;
	background: linear-gradient(45deg, #00ED86, #00A2CF);
	transition: all .3s ease;
}


.formBtn::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 0;
	height: 100%;
	background: linear-gradient(45deg, #00A2CF, #1A008E);
	transition: width .3s ease;
}

.formBtn:hover::before {
	width: 100%;
}

.formBtn::after {
	content: '';
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: border-color .3s ease;
}


.btnWrap {
	color: #FFFDFA;
	font-size: 1rem;
}

.telBtn {
	background-color: #FFFDFA;
	padding: 16px;
	border-radius: 50px;
	box-shadow: 0 0 8px #1e1e1e;
}

.number {
	color: #56B06F;
}

.number span {
	font-size: 1.8rem;
	font-weight: 600;
	color: #48AC75;
}

.tel {
	width: 26px;
	padding-right: 8px;
}

.time {
	color: #FFFDFA;
	font-size: 0.8rem;
}

.people {
	width: 40%;
	margin: 0 auto;
	padding-top: 20px;
	vertical-align: bottom;
}

/* link break point */
@media screen and (min-width:768px) and (max-width:1000px) {
	.formBtn {
		padding: 16px 8px;
		gap: 8px;
	}
}

/* CTApc */
@media screen and (min-width:769px) {

	.phoneContact {
		display: flex;
		justify-content: center;
		align-items: flex-start;
		gap: 32px;
	}

	.telBtn {
		padding: 16px 40px;
	}

	.btnWrap {
		font-size: 1.2rem;
	}

	.tel_wrap {
		padding-top: 0;
	}

	.number span {
		font-size: 1.2rem;
	}

	.people {
		width: 20%;
	}

	.time {
		font-size: 1rem;
	}
}

@media screen and (min-width:1001px) {
	.formBtn {
		padding: 16px 8px;
		gap: 32px;
	}
}