@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
/* 2025/05/20 追加 */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
.pc-bl,
.pc-fl,
.pc-in,
.sp-bl,
.sp-fl,
.sp-in,
.sp-only {
	display: none !important;
}
@media (min-width: 961px) {
	.pc-bl {
		display: block !important;
	}
	.pc-fl {
		display: flex !important;
	}
	.pc-in {
		display: inline !important;
	}
}
@media (max-width: 960px) {
	.sp-bl {
		display: block !important;
	}
	.sp-fl {
		display: flex !important;
	}
	.sp-in {
		display: inline !important;
	}
}
:root {
	--font-family-Serif: 'Zen Old Mincho', 'Noto Serif JP', 'ヒラギノ明朝 ProN',
		'Hiragino Mincho ProN', 'Noto Serif JP', 'Yu Mincho Light', sans-serif;
	--font-family-Gothic: 'Zen Kaku Gothic New', 'Noto Sans JP',
		'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro', sans-serif;
	--font-family-en: 'Zen Antique Soft', 'Noto Sans JP',
		'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro', sans-serif;
	--font-weight-light: 300;
	--font-weight-regular: 400;
	--font-weight-medium: 500;
	--font-weight-semibold: 600;
	--font-weight-bold: 700;
	--font-weight-black: 900;
	--color-main: #161616;
	--color-point: #ed747b;
	--color-navy: #103288;
	--color-red: #ed747b;
	--color-yellow: #d8bf52;
	--color-green: #9dc256;
	--color-purple: #9f609f;
	--color-turquoise: #368592;
	--color-lite-grey: #f4f5f6;
	--background-light-blue: #eafbf8;
}
.marker {
	background: linear-gradient(transparent 70%, #faf798 50%);
}
.full-screen {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	margin-bottom: 0;
}
.full-screen > img {
	width: 100%;
}
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body a,
body p,
body li,
body td {
	font-family: var(--font-family-Gothic);
	font-weight: var(--font-weight-regular);
	letter-spacing: 0.05em;
	margin-bottom: 0;
}
body p,
body li,
body td {
	font-family: var(--font-family-Gothic);
	font-weight: var(--font-weight-regular);
	letter-spacing: 0.05em;
	/* line-height: 1.7; */
}
body .top p,
body .top li,
body .top td {
	font-size: min(4vw, 1rem);
}
a.link {
	color: var(--color-pail-blue);
	text-decoration: underline;
}
a.link:hover {
	opacity: 0.6;
}
.c--inner {
	width: 100%;
	max-width: calc(720px + 6%);
	margin: 0 auto;
	padding: min(80px) 3% min(90px);
}
.c--inner.sub {
	max-width: calc(1080px + 6%);
}
/*  Reset
------------------------*/
.top #content {
	padding-top: 0 !important;
}
.top .l-content {
	padding: 0 !important;
	margin: 0 auto !important;
}
.top section.wp-block-group {
	margin-bottom: 0;
}
.top .post_content h1,
.top .post_content h2,
.top .post_content h3,
.top .post_content h4,
.top .post_content h5,
.top .post_content h6 {
	margin: 0;
	padding: 0;
	border-top: none;
	letter-spacing: 0.03em;
}
.top .post_content h1::after,
.top .post_content h2::after,
.top .post_content h3::after,
.top .post_content h1::before,
.top .post_content h2::before,
.top .post_content h3::before {
	content: none;
}
/*  common
------------------------*/
.c--section-title-container {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: min(10vw, 40px);
}
.c--section-title-container > div {
	position: relative;
	width: fit-content;
}
.c--section-title-container h2.main {
	position: relative;
	font-size: min(7vw, 40px);
	font-weight: var(--font-weight-bold);
	font-family: var(--font-family-Gothic);
	color: var(--color-navy);
	letter-spacing: 0;
	line-height: 1.45;
	padding-bottom: 20px;
}
.c--section-title-container h2.main::after {
	content: '';
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 85px;
	height: 4px;
	background: var(--color-point);
}
.c--section-title-container .bg-ttl {
	position: absolute;
	bottom: 100%;
	left: 0;
	transform: translate(-100%, 50%);
	width: 100%;
	max-width: 250px;
	z-index: 0;
}
.c--section-title-container.right .bg-ttl {
	transform: translate(100%, 50%);
	right: 0;
}

/* ----- Swell button ----- */
.l-content .swell-block-button .swell-block-button__link {
	line-height: 1;
	min-width: 300px !important;
}
.swell-block-button .swell-block-button__link {
	padding: min(5vw, 1.5em) !important;
}
.swell-block-button .swell-block-button__link span {
	font-size: min(5vw, 1.125rem);
	font-weight: var(--font-weight-bold);
	font-family: var(--font-family-Gothic);
	letter-spacing: 0.2em;
}
.swell-block-button.is-style-btn_line .swell-block-button__link {
	position: relative;
	background: #fff;
	transition: all 0.5s;
}
.swell-block-button.is-style-btn_line .swell-block-button__link span {
}
.swell-block-button.is-style-btn_line .swell-block-button__link::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 0.8em;
	width: 0.5em;
	height: 0.5em;
	z-index: 1;
	border: 1px solid;
	border-color: var(--the-btn-color) var(--the-btn-color) transparent
		transparent;
	transform: translateY(-50%) rotate(45deg);
}

.swell-block-button.is-style-btn_line .swell-block-button__link::before,
.swell-block-button.is-style-btn_line .swell-block-button__link::after {
	position: absolute;
	top: 50%;
	right: 22px;
	height: 1px;
	background: var(--the-btn-color);
	content: '';
}
.swell-block-button.is-style-btn_line .swell-block-button__link::before {
	width: 30px;
	height: 1px;
	transform: translateY(-50%);
}
.swell-block-button.is-style-btn_line .swell-block-button__link::after {
	width: 8px;
	height: 2px;
	transform: translateY(-50%) rotate(45deg);
	transform-origin: right center;
}
.swell-block-button.is-style-btn_line .swell-block-button__link:hover {
	background: var(--the-btn-color);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1),
		0 12px 24px -12px rgba(0, 0, 0, 0.2);
	opacity: 1;
}

/*  */
.button-column {
	position: relative;
	justify-content: center;
	gap: min(10vw, 200px);
	z-index: 10;
}
.button-column .swell-block-button .swell-block-button__link {
	position: relative;
	background: #fff;
	border: 1px solid var(--color-main);
}
.button-column .swell-block-button .swell-block-button__link::after {
	content: '';
	position: absolute;
	top: 3px;
	left: 3px;
	width: 1em;
	height: 1em;
	border-left: 1em solid var(--color-point);
	border-bottom: 1em solid transparent;
	border-top: 0px solid transparent;
}
.button-column .swell-block-button .swell-block-button__link::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 0.8em;
	width: 0.35em;
	height: 0.35em;
	z-index: 1;
	border: 1px solid;
	border-color: var(--color-main) var(--color-main) transparent transparent;
	transform: translateY(-50%) rotate(45deg);
}
.button-column .swell-block-button.tel .swell-block-button__link span {
	font-size: min(4vw, 1.125rem);
	font-family: var(--font-family-Gothic);
	padding-left: 1.25em;
	background: url(http://fusion-suiso.com/wp-content/uploads/2025/03/icon-tel.webp)
		no-repeat left top / contain;
	background-size: 1em;
}
.button-column .swell-block-button.mail .swell-block-button__link span {
	font-size: min(4vw, 1.125rem);
	font-family: var(--font-family-Gothic);
	padding-left: 1.25em;
	background: url(http://fusion-suiso.com/wp-content/uploads/2025/03/icon-mail.webp)
		no-repeat left top 0.2em / contain;
	background-size: 1em;
}

.button-column .swell-block-button.trial .swell-block-button__link {
	background: var(--color-point);
	border: 1px solid var(--color-point);
	padding: min(6vw, 32px) min(4vw, 32px) !important;
	min-width: auto !important;
	width: 100%;
	max-width: 430px;
}
.button-column .swell-block-button.trial .swell-block-button__link span {
	font-size: min(5vw, 1.25rem);
	font-family: var(--font-family-Gothic);
	padding-left: 1.5em;
	background: url(http://fusion-suiso.com/wp-content/uploads/2025/03/icon-tel.webp)
		no-repeat left / contain;
	background-size: 1em;
}
.button-column .swell-block-button.trial .swell-block-button__link::after {
	content: '';
	position: absolute;
	top: 3px;
	left: 3px;
	width: 1em;
	height: 1em;
	border-left: 1em solid #fff;
	border-bottom: 1em solid transparent;
	border-top: 0px solid transparent;
}
.button-column .swell-block-button.trial .swell-block-button__link::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 0.8em;
	width: 0.5em;
	height: 0.5em;
	z-index: 1;
	border: 1px solid;
	border-color: var(--color-main) var(--color-main) transparent transparent;
	transform: translateY(-50%) rotate(45deg);
}

/* 全ページの投稿画像の丸み */
/* .c-postThumb {
	border-radius: min(10vw, 20px);
} */

/*  header
------------------------*/
.l-header {
	background: none !important;
	padding-top: 1em;
	padding-bottom: 1em;
}
.l-header__inner.l-container {
	background: #fff;
	width: 80%;
	margin: 0 auto;
	border-radius: 50vh;
	box-shadow: 0 3px 4px rgba(0, 0, 0, 0.1);
}

header .l-header__inner {
	max-width: 100%;
}
header .swell-block-button .swell-block-button__link span {
	font-size: min(4vw, 14px);
	font-weight: var(--font-weight-regular);
	letter-spacing: 0.05em;
}
.l-header .c-gnav > li > a:after,
.l-header .c-gnav > li > a:hover:after {
	background: var(--color-green) !important;
}
.c-gnav > .menu-item > a .ttl {
	font-size: min(4vw, 1.125rem);
	font-weight: var(--font-weight-bold);
}
.-series-right .w-header {
	margin: 12px;
}
.w-header__inner .h--button-column {
	align-items: center;
	justify-content: right;
}
/* 追従時のheader */
.l-fixHeader__inner {
	width: 100%;
	max-width: 100%;
}

/*  footer
------------------------*/
footer.l-footer {
	z-index: 1;
}
footer .l-footer__widgetArea p,
footer .c-listMenu a {
	font-size: min(4vw, 1.125rem);
	font-weight: var(--font-weight-regular);
	font-family: var(--font-family-Gothic);
}
footer .l-footer__widgetArea {
	padding-top: 0;
	padding-bottom: 0;
	background: none;
}
footer .w-footer {
	max-width: 100vw;
	align-items: stretch;
	gap: 0;
	padding: 0;
}
footer .w-footer__box {
	flex: none;
	flex-basis: fit-content;
}
footer .w-footer__box:nth-child(1) {
	flex-basis: 30%;
	padding: 0;
}
footer .w-footer__box:nth-child(1) div {
	display: flex;
	height: 100%;
}
footer .w-footer__box:nth-child(1) .c-widget .textwidget > :not(:last-child) {
	margin-bottom: 0;
}
#custom_html-3 img {
	height: 100%;
	object-position: left;
	object-fit: cover;
}
footer .w-footer__box:nth-child(2) {
	position: relative;
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	flex: 1;
	background: linear-gradient(
		0deg,
		rgba(254, 153, 71, 1) 0%,
		rgba(254, 153, 71, 0.4) 50%
	);
	padding: 2em;
	padding-bottom: min(20vw, 120px);
}
footer .w-footer__box:nth-child(2)::before {
	content: '';
	position: absolute;
	bottom: 0.5em;
	left: 50%;
	transform: translateX(-50%);
	width: 90%;
	height: 50%;
	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/footer-bg02.webp)
		no-repeat center bottom / contain;
}
#nav_menu-3 {
	padding: min(5vw, 50px) min(10vw, 50px);
	width: 50%;
	margin-left: auto;
}
footer .c-listMenu ul li {
	border-left: 1px solid var(--color-blue);
}
footer .c-listMenu a:before {
	content: none;
}
footer .c-listMenu a {
	font-size: min(4vw, 1rem);
	letter-spacing: 0;
	border-bottom: none;
}
footer .l-footer__foot {
	display: none;
}
@media screen and (min-width: 960px) {
	#before_footer_widget {
		display: none;
	}
}

footer .swell-block-linkList {
	justify-content: right;
	gap: 3em;
}
footer .swell-block-linkList a {
	font-size: min(4vw, 1.125rem);
	font-weight: var(--font-weight-bold);
}
footer .footer-sns-list {
	justify-content: flex-end;
	gap: 1em;
	margin-top: 2em;
}
footer .footer-sns-list img {
	width: 30px;
	height: 30px;
}

/*  TOP fv
------------------------*/
#post_slider {
	display: none !important;
}
#main_visual {
	background: var(--background-light-blue);
}
#main_visual .p-mainVisual__slideTitle {
	position: relative;
	font-size: min(12vw, 64px);
	font-weight: var(--font-weight-bold);
	font-family: var(--font-family-Gothic);
	letter-spacing: 0.08em;
	text-shadow: 2px 2px 0px #fff, 3px 3px 0px #103288;
}

#main_visual .p-mainVisual__slideText {
	font-size: min(6vw, 20px);
	font-weight: var(--font-weight-bold);
	font-family: var(--font-family-Gothic);
	letter-spacing: 0.08em;
	margin-bottom: -1em;
}

/*  TOP slider
------------------------*/
#slider {
	background: var(--background-light-blue);
}
#slider .ttl-container {
	margin-bottom: 30px;
}
#slider .ttl span {
	position: relative;
	display: inline-block;
	font-size: min(5vw, 1.75rem);
	font-weight: var(--font-weight-bold);
	color: var(--color-navy);
	padding: 0 1.5em;
}
#slider .ttl span::after,
#slider .ttl span::before {
	content: '';
	position: absolute;
	bottom: 0;
	width: 1em;
	height: 100%;
}
#slider .ttl span::before {
	left: 0;
	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/icon-hukidashi-l.webp)
		no-repeat left bottom / contain;
}
#slider .ttl span::after {
	right: 0;

	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/icon-hukidashi-r.webp)
		no-repeat left bottom / contain;
}
/*  TOP sec-pickup
------------------------*/
#sec-pickup {
	position: relative;
	background: var(--background-light-blue)
		url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/pickup-bg.webp)
		no-repeat top center / cover;
	z-index: 0;
}
#sec-pickup::before,
#sec-pickup::after {
	content: '';
	position: absolute;
	z-index: -1;
}
#sec-pickup::before {
	bottom: 10%;
	left: 10%;
	width: min(12vw, 110px);
	height: min(15vw, 148px);
	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/pickup-bg-l.webp)
		no-repeat left / contain;
}
#sec-pickup::after {
	top: 10%;
	right: 10%;
	width: min(15vw, 140px);
	height: min(20vw, 200px);
	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/pickup-bg-r.webp)
		no-repeat center / contain;
}
.pickup-column .img-content .img-wrap {
	position: relative;
}
.pickup-column .img-content .img-wrap figure {
	border-radius: min(2vw, 16px);
	overflow: hidden;
}
.pickup-column .img-content .text_L,
.pickup-column .img-content .text_R {
	position: absolute;
	/* width: 435px; */
}
.pickup-column .img-content .text_L p,
.pickup-column .img-content .text_R p {
	font-size: min(15vw, 120px);
	font-family: 'Oswald', sans-serif;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	color: #f7f1ec;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.08);
}
.pickup-column .img-content .text_L {
	top: calc(0% - 50px);
	transform: translateX(-50%);
}
.pickup-column .img-content .text_R {
	bottom: 3%;
	right: 0;
	transform: translateX(50%);
}
.pickup-column .ttl {
	font-size: min(5vw, 28px);
	font-weight: var(--font-weight-bold);
	color: var(--color-navy);
}
/*  TOP sec-about
------------------------*/
#sec-about {
	position: relative;
	background: var(--background-light-blue);
	z-index: 0;
}
#sec-about::before,
#sec-about::after {
	content: '';
	position: absolute;
	z-index: -1;
}
#sec-about::before {
	bottom: 20%;
	left: 10%;
	width: min(18vw, 177px);
	height: min(17vw, 163px);
	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/about-bg-l.webp)
		no-repeat left / contain;
}
#sec-about::after {
	top: 30%;
	right: 10%;
	width: min(20vw, 173px);
	height: min(18vw, 153px);
	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/about-bg-r.webp)
		no-repeat center / contain;
}
#sec-about .c--section-title-container h2.main::after {
	background: var(--color-turquoise);
}
.about-column p.message {
	font-size: min(4.25vw, 1.25rem);
	font-weight: var(--font-weight-regular);
	color: var(--color-navy);
}
.about-column .img-content figure {
	border-radius: min(2vw, 16px);
	overflow: hidden;
}
.about-column .img-content {
	position: relative;
}
.about-column .img-content .text_L,
.about-column .img-content .text_R {
	position: absolute;
	/* width: 435px; */
}
.about-column .img-content .text_L p,
.about-column .img-content .text_R p {
	font-size: min(15vw, 130px);
	font-family: 'Oswald', sans-serif;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	color: #fff;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.08);
}
.about-column .img-content .text_L {
	top: 0;
	transform: translateX(-50%);
}
.about-column .img-content .text_R {
	bottom: 0;
	right: 0;
	transform: translateX(50%);
}
/*  TOP sec-schedule
------------------------*/
#sec-schedule {
	position: relative;
	background: #fff
		url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/schedule-bg.webp)
		no-repeat center bottom / contain;
	z-index: 1;
}
#sec-schedule::before,
#sec-schedule::after {
	content: '';
	position: absolute;
	z-index: -1;
}
#sec-schedule::before {
	bottom: 3%;
	left: 3%;
	width: 50%;
	height: min(10vw, 150px);
	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/schedule-text01.webp)
		no-repeat left / contain;
}
#sec-schedule::after {
	top: 30%;
	right: 5%;
	width: min(15vw, 150px);
	height: min(20vw, 200px);
	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/schedule-bg-r.webp)
		no-repeat center / contain;
}
#sec-schedule .c--inner {
	padding-bottom: min(15vw, calc(160px + 3%));
}
#sec-schedule .c--section-title-container h2.main::after {
	background: var(--color-purple);
}
#sec-schedule .c--section-title-container.right .bg-ttl {
	transform: translate(130%, 100%);
}
/*  TOP sec-official
------------------------*/
#sec-official {
	background: url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/official-bg.webp)
		no-repeat center bottom / cover;
}
#sec-official .c--section-title-container h2.main::after {
	background: var(--color-yellow);
}
/*  TOP sec-youtube
------------------------*/
#sec-youtube {
	background: #fff
		url(https://recycle.lumica.co.jp/wp-content/uploads/2025/05/youtube-bg.webp)
		no-repeat center bottom / cover;
}
#sec-youtube .c--section-title-container h2.main::after {
	background: var(--color-red);
}
#sec-youtube .c--section-title-container.right .bg-ttl {
	transform: translate(80%, 100%);
	width: 230px;
}

/*  TOP sec-link
------------------------*/
#sec-link {
	background: var(--background-light-blue);
}
#sec-link .c--section-title-container h2.main::after {
	background: var(--color-green);
}
#sec-link .c--section-title-container .bg-ttl img {
	max-height: 90px;
}
.link-column .ttl span {
	position: relative;
	font-size: min(4.5vw, 1.5rem);
	font-weight: var(--font-weight-bold);
	color: var(--color-navy);
	padding-left: 1em;
	margin-bottom: min(4vw, 1em);
}
.link-column .ttl span::before {
	content: '';
	position: absolute;
	top: 0.5em;
	left: 0.1em;
	width: 0.5em;
	height: 0.5em;
	background: #008cd6;
	border-radius: 100%;
}

@media (max-width: 960px) {
	.pc-only {
		display: none !important;
	}
	.sp-only {
		display: block !important;
	}
	header.l-header {
		padding-top: 0;
		padding-bottom: 0;
	}
	header .l-header__inner {
		height: auto;
	}
	.l-header__inner.l-container {
		margin: 0;
		width: 100%;
		border-radius: 0;
	}
	.c--inner {
		padding-right: 5%;
		padding-left: 5%;
	}
	.c--inner.sub {
		padding-right: 7%;
		padding-left: 7%;
	}
	.c--section-title-container .bg-ttl {
		transform: translate(0, 50%);
	}
	.c--section-title-container h2.main {
		padding-top: 30px;
	}
	.c--section-title-container p::after {
		width: 100%;
	}
	.top .swell-block-button .swell-block-button__link {
		width: 100%;
		max-width: 500px;
	}
	.w-footer__box + .w-footer__box {
		margin: 0;
	}
	footer .w-footer__box:nth-child(2) {
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
	}
	footer #nav_menu-3 {
		width: 100%;
	}
	#custom_html-4 .swell-block-linkList {
		flex-direction: column;
		align-items: flex-end;
		gap: 1em;
	}
	/*  TOP slider
	------------------------*/
	/*  TOP sec-pickup
	------------------------*/
	#sec-pickup::before {
		bottom: 3%;
	}
	#sec-pickup::after {
		top: 20%;
	}
	#sec-pickup .c--section-title-container {
		margin-bottom: 90px;
	}
	#sec-pickup .c--section-title-container.right .bg-ttl {
		transform: translate(50%, 50%);
	}
	.pickup-column .img-content .text_L,
	.pickup-column .img-content .text_R {
		transform: translateX(0);
	}
	/*  TOP sec-about
	------------------------*/
	#sec-about::after {
		top: 17%;
	}
	.about-column .img-content .text_L,
	.about-column .img-content .text_R {
		transform: translateX(0);
	}
	/*  TOP sec-schedule
	------------------------*/
	#sec-schedule::before {
		bottom: 0;
	}
	#sec-schedule .c--section-title-container.right .bg-ttl {
		transform: translate(0%, 50%);
	}
	/*  TOP sec-official
	------------------------*/
	/*  TOP sec-youtube
	------------------------*/
	#sec-youtube .c--section-title-container.right .bg-ttl {
		transform: translate(-30%, 50%);
	}
	/*  TOP sec-link
	------------------------*/
	.link-column .swell-block-column {
		padding: 1rem;
	}
}
@media (max-width: 600px) {
}
