	@charset "utf-8";
	/*
	Theme Name: florist
	Theme URI: www.www.www
	Author: takedesign
	Author URI: www.www.www
	Version: 0.0.5
	*/
	/* リセットCSS */
	*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}main{display:block}h1,h2,h3,h4,h5,h6{font-size:inherit;line-height:inherit;font-weight:bold;}a{text-decoration:none;color:inherit;transition:all .3s ease-in-out}img{display: block;max-width:100%;height:auto;vertical-align: middle;}ol,ul{list-style:none}table{border-collapse:collapse}input,textarea,select{font:inherit;line-height:inherit;border:1px solid #ccc;padding:8px;}textarea{resize:vertical}button{padding: 0;font-family: inherit;appearance: none;cursor: pointer;background-color: transparent;border: none;}fieldset{border:0;padding:0;margin:0;min-width:0}legend{display:block;width:100%;max-width:100%;padding:0;white-space:normal;}[hidden],template{display:none}:focus-visible{outline:2px solid #000}

	/* 汎用CSS
	===================================================== */
	/* MV共通 */
	.mv {
	width: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	position: relative;
	}

	.mv-copy {
	max-width: 1600px;
	height: 100%;
	margin: 0 auto;
	padding: 0 90px 75px;
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 25px;

	.mv-copy-ex {
		font-family: var(--ex-font);
		font-size: clamp(36px, 8vw, 95px);
		line-height: 1.1;
	}

	.mv-copy-en {
		font-size: 1.2rem;
	}

	.mv-copy-main {
		font-size: 1.8rem;
	}

	.mv-copy-sub {
		font-size: 1.1rem;
		line-height: 2;
	}
	}

	.mv-btn-cont {
	width: 540px;
	position: absolute;
	bottom: 0;
	right: 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	}

	.mv-btn-cont:has(.btn-right:hover) {
	.btn.btn-left {
		color: var(--main-color);
				background-color: #fff;
	}
	}
	.mv-btn-cont:has(.btn-left:hover) {
	.btn.btn-right {
		color: #fff;
				background-color: var(--main-color);
	}
	}

	.mv-copy.mv-copy-center {
	justify-content: center;
	align-items: center;
	text-align: center;
	transform: translateY(75px);
	}

	/* MV共通（下層ページ） */
	.sub-mv {
	height: 70vh;

	.mv-copy {
		padding: 0 50px 45px;
		position: relative;
	}
	}

	.mv-copy-side {
	color: #fff;
	position: absolute;
	top: 160px;
	right: 40px;

	p {
		font-size: 1.5rem;
		writing-mode: vertical-rl;
	}
	}

	/* ボタン */
	.btn {
	width: 100%;
	padding: 25px 0;
	border: 1px solid var(--main-color);
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	transition: all 0.3s;

	.arrow-icon {
		margin-left: 2px;
	}

	&.btn-green {
		color: #fff;
		background-color: var(--main-color);

		&:hover {
			color: var(--main-color);
			background-color: #fff;
		}
	}
	&.btn-white {
		color: var(--main-color);
		background-color: #fff;

		&:hover {
			color: #fff;
			background-color: var(--main-color);
		}
	}
	}

	/* 見出し */
	.ttl-cont {
	margin-bottom: 60px;
	display: flex;
	flex-direction: column;
	gap: 20px;

	.ttl-en {
		font-size: 1.2rem;
		font-weight: 400;
	}
	.ttl-main {
		font-size: 2rem;
	}
	.ttl-sub {
		line-height: 2.2;
	}

	&.ttl-left {
		text-align: left;
	}
	&.ttl-right {
		text-align: right;
	}
	&.ttl-center {
		text-align: center;
	}

	&.ttl-white {
		color: #fff;
	}
	&.ttl-green {
		.ttl-en {
			color: var(--main-color);
		}
	}
	}

	/* 改行 */
	.pc-br {
	display: block;
	}

	.tab-br {
	display: none;
	}

	.sp-br {
	display: none;
	}

	/* リンクテキスト */
	.link-txt {
	font-size: 1.1rem;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	position: relative;
	transition: all 0.3s;

	&.link-txt-left {
		margin-right: auto;
	}
	&.link-txt-right {
		margin-left: auto;
	}
	&.link-txt-center {
		margin: 0 auto;
	}

	&::after {
		content: "";
		width: 99%;
		height: 1px;;
		display: block;
		position: absolute;
		bottom: 1px;
		left: 0;
	}

	&.link-txt-green {
		color: var(--main-color);

		&::after {
			background-color: var(--main-color);
		}
	}
	&.link-txt-white {
		color: #fff;

		&::after {
			background-color: #fff;
		}
	}

	.arrow-icon {
		transition: all 0.3s;
	}
	}

	.link-txt:hover {
	opacity: 0.5;

	.arrow-icon {
		transform: translateX(3px);
	}
	}

	/* アンダーラインテキスト */
	.underline {
	padding: 0 3px;
	line-height: 1.2;
	background: linear-gradient(transparent 85%, #c5dfd4 0%);
	}

	/* マップセクション */
	.access-cont {
	display: flex;
	gap: 8%;
	}

	.access-map-cont {
	width: 60%;

	iframe {
		width: 100%;
		height: 100%;
		min-height: 420px;
	}
	}

	.access-txt-cont {
	width: 32%;

	.access-company-name {
		margin-bottom: 25px;
		font-size: 1.4rem;
	}

	.access-address {
		line-height: 2;
	}
	}

	/* CTA */
	.cta-cont {
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 40px;
	}

	.cta-txt {
	font-size: 2rem;
	}

	.cta-tel-cont {
	.cta-tel-link {
		color: var(--main-color);
		font-size: 1.4rem;
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 15px;

		a {
			font-size: 2.8rem;
			line-height: 1.3;
		}
	}

	.cta-tel-warning {
		color: var(--font-color-gray);
		font-size: 0.8rem;
	}
	}

	.cta-btn-cont {
	width: 700px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 20px;

	.cta-btn-cont-inner {
		display: flex;
		gap: 15px;
	}
	}

	.cta-notes {
	margin-top: -20px;
	color: var(--font-color-gray);
	font-size: 0.8rem;
	}

	/* グリッドリスト */
	.grid-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: 1fr;
	gap: 25px;
	}

	.grid-list-item {
	padding: 90px 20px 40px;
	background-color: var(--bg-color-gray);
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	gap: 50px;

	.grid-list-num {
		width: 40px;
		height: 40px;
		color: #fff;
		background-color: #000;
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}

	.grid-list-img {
		height: 95px;
	}

	.grid-list-txt {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 5px;

		.grid-list-txt-en {
			font-size: 0.8rem;
		}

		.grid-list-txt-main {
			color: var(--main-color);
			font-size: 1.2rem;
			font-weight: 600;
		}

		.grid-list-txt-sub {
			font-family: var(--sub-font);
			font-size: 0.95rem;
			text-align: center;
		}
	}
	}

	/* .下線付きセクション */
	.container.cont-underline {
	position: relative;

	&::after {
		content: "";
		display: block;
		width: calc(100% - 50px);
		height: 1px;
		background-color: #c1cac7;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	}

	@media(max-width:1024px){
	/* 見出し */
	.ttl-cont {
		margin-bottom: 45px;
	}

	/* 改行 */
	.pc-br {
		display: none;
	}

	.tab-br {
		display: block;
	}

	.tab-br-none {
		display: none;
	}

	.mv-copy {
		padding: 0 45px 105px;
	}

	.mv-btn-cont {
		width: 100%;
	}

	/* MV共通（下層ページ） */
	.sub-mv {
		height: 60vh;

		.mv-copy {
			padding: 0 45px 105px;
		}
	}

	.mv-copy-side {
		right: 25px;
	}

	/* グリッドリスト */
	.grid-list {
		gap: 15px;
	}

	/* マップセクション */
	.access-cont {
		gap: 5%;
	}

	.access-map-cont {
		iframe {
			min-height: 350px;
		}
	}
	}

	@media(max-width:767px){
	/* 見出し */
	.ttl-cont {
		margin-bottom: 35px;
		gap: 15px;

		.ttl-main {
			font-size: 1.8rem;
		}
	}

	/* テキストサイズ */
	.sp-s-txt {
		font-size: 0.9em;
	}

	/* 改行 */
	.sp-br {
		display: block;
	}

	.sp-br-none {
		display: none;
	}

	/* リンクテキスト */
	.link-txt {
		font-size: 1rem;
	}

	/* CTA */
	.cta-cont {
		gap: 30px;
	}

	.cta-txt {
		font-size: 1.6rem;
	}

	.cta-tel-cont {
		.cta-tel-link {
			font-size: 1.2rem;
			gap: 10px;

			a {
				font-size: 2.4rem;
			}
		}
	}

	.cta-btn-cont {
		width: 100%;
		gap: 10px;

		.cta-btn-cont-inner {
			flex-direction: column;
			gap: 10px;
		}
	}

	/* グリッドリスト */
	.grid-list {
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		gap: 15px;
	}

	.grid-list-item {
		padding: 65px 20px 30px;
		gap: 25px;

		.grid-list-num {
			width: 35px;
			height: 35px;
		}

		.grid-list-img {
			height: 75px;
		}
	}

	/* マップセクション */
	.access-cont {
		flex-direction: column;
	}

	.access-map-cont {
		width: 100%;
		margin-bottom: 25px;

		iframe {
			min-height: 300px;
		}
	}

	.access-txt-cont {
		width: 100%;

		.access-company-name {
			margin-bottom: 15px;
		}
	}

	/* MV共通 */
	.mv-copy {
		padding: 0 25px 90px;
		gap: 15px;

		.mv-copy-ex {
			font-size: clamp(36px, 8vw, 95px);
		}
	}

	.mv-btn-cont {
		width: 100%;

		.btn {
			font-size: 0.9rem;

			.arrow-icon {
				margin-left: 0;
				font-size: 1.5rem;
			}
		}
	}

	/* MV共通（下層ページ） */
	.sub-mv {
		height: 70vh;

		.mv-copy {
			padding: 0 25px 90px;
			position: relative;
		}
	}

	.mv-copy-side {
		display: none;
	}

	/* ボタン */
	.btn {
		padding: 20px 0;
	}
	}

	/* スマホでテキストの折り返し用 */
	.ib {display: inline-block}

	/* フォーム */
	label {margin-bottom:8px;}
	select,
	input[type=date],
	input[type=email],
	input[type=number],
	input[type=password],
	input[type=tel],
	input[type=text],
	input[type=url],
	textarea {width: 100%;max-width: 100%;padding: 8px 16px;background-color: #fff;margin-top: 4px;}
	select,input,textarea {line-height: 1.1;font-family: inherit;font-size: inherit;font-weight: inherit;}

	input[type="submit"],
	input[type="button"]{padding: 12px 16px;}

	.fontM{font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;}
	.fontG{font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;}
	.fonten{font-family:var(--en-font)}

	:root {
	--font-color: #000;
	--font-color-gray: #9ca4ae;
	--main-color:#004425;
	--bg-color-gray: #e8ebea;
	--main-font: "游明朝", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "MS P明朝", "MS 明朝", serif;
	--sub-font: noto-sans-cjk-jp, sans-serif;
	--ex-font: big-caslon-fb, serif;
	--hover-transform:all .3s ease-in-out;
	--hamburger-transform:display .5s ease-in-out;
	--show-anime:opacity 1.2s , translate 1s;
	--clip-triangle-top: polygon(50% 0, 100% 100%, 0 100%);
	--clip-triangle-bottom: polygon(0 0, 100% 0, 50% 100%);
	--clip-triangle-right: polygon(0 0, 100% 50%, 0 100%);
	--clip-triangle-left: polygon(0 50%, 100% 0, 100% 100%);
	--clip-triangle-lower-left: polygon(0 0, 100% 100%, 0 100%);
	--clip-triangle-upper-left: polygon(0 0, 100% 0, 0 100%);
	--clip-triangle-lower-right: polygon(100% 0, 100% 100%, 0 100%);
	--clip-triangle-upper-right: polygon(0 0, 100% 0, 100% 100%);
	}

	::selection {background-color: var(--main-color);color:#fff;}

	/* 基本レイアウト
	===================================================== */

	html{height: -webkit-fill-available;}
	body{min-height: 100vh;min-height: -webkit-fill-available;}

	body {font-size: 16px;font-family:var(--main-font);line-height:1.6;letter-spacing: 0.1em;color: var(--font-color);text-align: justify;font-feature-settings: "palt";}

	#page{overflow:hidden;}

	.container{width: 1140px;max-width: 100%;padding: 150px 25px;margin-inline: auto;position: relative;z-index:11}

	@media(max-width:1024px){
	.container {
		padding: 100px 25px;
	}
	}
	@media(max-width:720px){
	html{font-size:14px;}

	.container {
		padding: 75px 25px;
	}
	}

	/* 投稿一覧
	===================================================== */
	.posts-archive-list{display:grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 40px;}
	.posts-item{position:relative;display: flex;flex-direction: column;}
	.posts-thumbnail{width:100%;aspect-ratio:3/2;overflow:hidden}
	.posts-thumbnail img{display:block;width:100%;height:100%!important;object-fit:cover;transition:var(--hover-transform);}
	.posts-item-des{margin-top: 32px;}
	.posts-cat-list{display:flex;flex-wrap:wrap;gap:8px 1em;}
	.posts-cat-list li{padding-block:2px;padding-inline:16px;border:1px solid #fff;font-size:14px;color:#fff;}
	.posts-tit{font-size:18px;color:#fff;margin-top:16px;}
	.posts-more{width:fit-content;margin-top: auto;margin-left:auto;padding-top: 16px;}
	.posts-more span{font-weight:900;text-transform:uppercase;color:var(--main-color)}

	.article-wrap{max-width: 100%;margin-inline:auto;}
	.posts-list-content{position:relative;display:flex;flex-direction:column;}
	/* ページネーション */
	.pagination{margin-top: 80px;}
	.nav-links ul{position: relative;display:flex;gap: 8px;align-items: center;justify-content: center;width: 100%;flex-wrap: wrap;font-family: var(--en-font);line-height: 1;}
	.nav-links li .page-numbers{width:40px;aspect-ratio:1;border: 1px solid;display:grid;place-items:center;background-color: #fff;position:relative;}
	.nav-links li .page-numbers.current{background-color: var(--main-color);border: none;}

	/* 記事
	===================================================== */

	/* 関連記事 */
	.single-related{margin-top:80px;}
	.single-related-list{display:grid;gap: 32px;grid-template-columns:repeat(2,minmax(0,1fr))}
	.single-related-list li{position:relative;}
	.single-related-tit{font-size: 24px;color: var(--main-color);margin-block:100px 35px;padding-top: 25px;border-top:1px solid var(--font-color);}
	.single-related-item{display:grid;grid-template-columns: 180px minmax(0,1fr);gap: 25px;}
	.single-related-img{width:100%;aspect-ratio:3/2;}
	.single-related-img img{width:100%;height:100%;object-fit:cover;}
	.single-related-des{display:flex;flex-direction:column;}
	.single-related-des h4{line-height:1.2;}

	/* 投稿者情報 */
	.author-info{padding-block: 40px;padding-inline: 24px;background-color: #E4E4E4;}
	.author-name{width:fit-content;}
	.author-name img{width: 240px;}
	.author-data{margin-top: 1em;}
	.author-data-head{font-size:12px;}
	.author-data-body{margin-top:1em;font-size: 12px;}
	.author-googlemap{margin-top: 8px;}
	.author-googlemap a{font-size:14px;font-family:var(--en-font);line-height:1;display:inline-block;padding:8px 24px;background-color: #fff;}
	.author-contact{margin-top: 1em;}

	.single-content-item{margin-top:40px;}
	.shingle-update{font-family:var(--en-font)}
	.single-title{font-size: 24px;margin-bottom: 1em;color: #000;}
	.single-thumbnail{margin-bottom: 40px;}

	/* 記事コンテンツ内部 */
	.single-content h2{font-size: 24px;padding-block:8px;padding-inline:8px;margin-block:1em;background-color:var(--gray-color)}
	.single-content h3{font-size: 24px;padding-block:8px;margin-block:1em;border-bottom:1px solid var(--font-color);}
	.single-content h4{font-size: 24px;color: var(--main-color);margin-block: 1em 4px;padding-top: .5em;border-top:1px solid var(--font-color);}
	.single-content h5{font-size: 16px;font-weight: 700;margin-block:1em}
	.single-content a {text-decoration:underline;text-underline-offset:4px;}
	.single-content img{display:block;}

	/* レイアウト用 */
	/* 文字に蛍光ペンで引いたような下線 */
	.marker{background:linear-gradient(transparent 65%, #fff366 65%);display:inline;font-weight:600}

	.single-posts-nav{margin-block: 75px 40px;}
	.single-posts-nav ul{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:40px;}
	.single-posts-nav ul li a{display:block;padding-inline:24px;position: relative;}
	.single-posts-nav ul li a::after{content:'';position:absolute;width:10px;aspect-ratio:1/1;border-top:1px solid;border-right:1px solid;top: 24px;}
	.single-posts-nav ul li.single-next{text-align:right;}
	.single-posts-nav ul li.single-next a::after{rotate:45deg;right:0;}
	.single-posts-nav ul li.single-previous a::after{rotate:225deg;left:0;}
	.single-posts-nav ul li.single-previous{border-right:1px solid}
	.single-prev-txt,
	.single-next-txt{font-size:12px;}

	.single-more{width:400px;max-width: 100%;margin-top:40px;margin-inline:auto}
	/* .single-more a{display:block;padding-block:8px;padding-inline:24px;background-color:var(--main-color);color:var(--font-color);font-size:16px;font-weight:bold;text-align:center;text-transform:uppercase} */

	/* 記事ページネーション */
	.single-pagination{width:400px;max-width: calc(100% - 32px);margin:64px auto 0;}
	.single-pagination ul{display:flex;justify-content: space-between;gap: 16px;}
	.single-pagination li a{display:block;font-size:14px;font-weight: bold;padding: 4px 24px;border:1px solid #000;text-align:center;position:relative;line-height: 1;}
	.single-pagination li.single-previous,
	.single-pagination li.single-next{width: 97px;font-size:12px;font-family: var(--en-font);font-weight:bold;}
	.single-pagination li.single-previous a::before{content:'';display:inline-block;width: 8px;height: 8px;border-bottom:1px solid #000;border-left:1px solid #000;margin-right:8px;transform: rotate(45deg);vertical-align: 1px;}
	.single-pagination li.single-next a::after{content:'';display:inline-block;width: 8px;height: 8px;border-top:1px solid #000;border-right:1px solid #000;margin-left:8px;transform: rotate(45deg);vertical-align: 1px;}

	@media (max-width: 767px) {
	.single-related-list {
		grid-template-columns: 1fr;
		gap: 25px;
	}
	}

	/* ヘッダー
	===================================================== */
	header {
	width: 100%;
	height: 120px;
	background-color: rgba(255, 255, 255, 0.9);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	}

	.header-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	}

	.header-left {
	padding: 22px 25px;

	img {
		height: 76px;
	}
	}

	.header-right {
	display: flex;
	padding-right: 150px;
	flex-direction: column;
	align-items: flex-end;

	.header-nav {
		margin-bottom: 12px;
		padding-top: 10px;

		ul {
			display: flex;
			gap: 35px;

			li a {
				transition: all 0.3s;

				&:hover {
					color: var(--main-color);
					opacity: 0.8;
				}
			}
		}
	}

	.header-tel-cont {
		display: flex;
		gap: 20px;

		.header-tel-txt {
			font-size: 1.3rem;
		}

		.header-tel-link {
			a {
				color: var(--main-color);
				font-size: 2rem;
				line-height: 1;
			}

			p {
				color: var(--font-color-gray);
				font-size: 0.8rem;
				text-align: right;
			}
		}
	}

	.header-box-link {
		width: 125px;
		height: 120px;
		color: #fff;
		font-size: 0.85rem;
		text-align: center;
		background-color: var(--main-color);
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		top: 0;
		right: 0;
	}
	}

	/* ハンバーガーメニュー */
	/* PCでは非表示 */
	.hamburger {
	display: none;
	}

	@media (max-width: 1024px) {
	/* レイアウト */
	.header-inner {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.header-left {
		position: relative;
		z-index: 101;
	}

	/* ハンバーガーボタン */
	.hamburger {
		background-color: var(--main-color);
		display: block;
		position: relative;
		z-index: 101;
		width: 80px;
		height: 80px;
		padding: 0;
		border: 0;
		cursor: pointer;
	}

	.hamburger-line {
		position: absolute;
		left: 20px;
		width: 40px;
		height: 2px;
		background: #fff;
		transition: top 0.3s, transform 0.3s, opacity 0.3s;
	}
	.hamburger-line:nth-child(1) { top: 27px; }
	.hamburger-line:nth-child(2) { top: 39px; }
	.hamburger-line:nth-child(3) { top: 51px; }

	body.is-drawerActive .hamburger-line:nth-child(1) {
		top: 39px;
		transform: rotate(45deg);
	}
	body.is-drawerActive .hamburger-line:nth-child(2) {
		opacity: 0;
	}
	body.is-drawerActive .hamburger-line:nth-child(3) {
		top: 39px;
		transform: rotate(-45deg);
	}

	/* メニュー本体 */
	.header-right {
		position: fixed;
		inset: 0;
		z-index: 100;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 32px;
		padding: 80px 24px 40px;
		background: #fff;
		overflow-y: auto;

		/* 閉じている状態 */
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity 0.4s ease, visibility 0.4s;
	}

	/* 開いている状態 */
	body.is-drawerActive .header-right {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.header-nav ul {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 24px;
	}
	}

	body.fix {
	position: fixed;
	width: 100%;
	}

	@media (max-width: 767px) {
	.hamburger {
		width: 55px;
		height: 55px;
	}

	.hamburger-line {
		left: 14px;
		width: 27px;
	}
	.hamburger-line:nth-child(1) { top: 18.5px; }
	.hamburger-line:nth-child(2) { top: 26.5px; }
	.hamburger-line:nth-child(3) { top: 34.5px; }

	body.is-drawerActive .hamburger-line:nth-child(1) {
		top: 26.5px;
	}
	body.is-drawerActive .hamburger-line:nth-child(3) {
		top: 26.5px;
	}
	}


	/* フッター
	---------------------------- */
	footer {
	padding: 100px 50px 15px;
	background-color: var(--main-color);
	}

	.footer-inner {
	width: 100%;
	max-width: 1600px;
	margin: 0 auto 35px;
	display: flex;
	justify-content: space-between;
	}

	.footer-left {
	.footer-logo {
		width: 175px;
		margin-bottom: 50px;
	}

	.footer-address {
		color: #fff;
		font-family: var(--sub-font);
		font-size: 0.9rem;
		line-height: 2;
	}
	}

	.footer-right {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;

	.footer-link {
		margin-bottom: 35px;
		color: #fff;
		font-family: var(--sub-font);
		font-size: 0.9rem;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-template-rows: repeat(3, auto);
		grid-auto-flow: column;
		column-gap: 40px;
		row-gap: 8px;

		li:nth-child(6) {
			grid-column: 3;
			grid-row: 1;
		}
		li:nth-child(7) {
			grid-column: 3;
			grid-row: 2;
		}
	}

	.footer-link li::before {
	content: "・ ";
	}

	.footer-tel {
		padding: 6px 32px;
		color: #fff;
		font-size: 1.1rem;
		font-family: var(--sub-font);
		border: 2px solid #fff;
		border-radius: 25px;
		transition: 0.3s;

		&:hover {
			color: var(--main-color);
			background-color: #fff;
		}
	}
	}

	.footer-copyright {
	color: #7da090;
	font-size: 0.9rem;
	font-family: var(--sub-font);
	text-align: right;
	}

	@media(max-width:1024px){
	/* ヘッダー */
	header {
		height: 80px;
		background-color: transparent;
	}

	.header-inner {
		align-items: flex-start;
	}

	.header-hamburger {
		display:block;
	}

	.header-right {
		.header-tel-cont {
			text-align: center;
			gap: 10px;
			flex-direction: column;

			.header-tel-link p {
				text-align: center;
			}
		}
		.header-box-link {
		display:none;
		}
	}

	.header-left {
			padding: 15px;

		img {
			height: 65px;
		}
	}

	/* フッター */
	.footer-inner {
		flex-direction: column;
		gap: 50px;
	}
	}

	@media(max-width:767px){
	header {
		height: 55px;
	}

	.header-left {
		padding: 8px;

		img {
			height: 45px;
		}
	}

	.header-right {
		.header-nav ul {
			font-size: 0.95rem;
			gap: 25px;
		}

		.header-tel-cont {
			.header-tel-txt {
				font-size: 1.1rem;
			}

			.header-tel-link a {
				font-size: 1.8rem;
			}
			}
		}

	footer {
		padding: 50px 25px 15px;
	}

	.footer-inner {
		gap: 35px
	}

	.footer-left {
		.footer-logo {
			width: 120px;
			margin-bottom: 35px;
		}
	}

	.footer-right {
			.footer-link {
			grid-template-columns: repeat(2, 1fr);
			grid-template-rows: repeat(4, auto);
			column-gap: 15px;

			li:nth-child(6) {
				grid-column: auto;
				grid-row: auto;
			}
			li:nth-child(7) {
				grid-column: auto;
				grid-row: auto;
			}
		}
	}
	}

	/*-------------------------------------
	/* 共通
	--------------------------------------- */
	.noPost{text-align:center;}

	.link-over{position:absolute;inset:0;margin:auto;z-index:1}

	.fadeIn{opacity: .0;transition:var(--show-anime);}
	.fadeUP{opacity: .0;translate: 0 35px;transition:var(--show-anime);}
	.fadeLeft{opacity: .0;translate: -50px 0;transition:var(--show-anime);}
	.fadeRight{opacity: .0;translate: 50px 0;transition:var(--show-anime);}
	.show .fadeIn{opacity:1;}
	.show .fadeUP{opacity:1;translate:0}
	.show .fadeLeft{opacity:1;translate:0}
	.show .fadeRight{opacity:1;translate:0}
	.show .delay2{transition-delay:.2s}
	.show .delay4{transition-delay:.4s}
	.show .delay6{transition-delay:.6s}
	.show .delay8{transition-delay:.8s}

	/*-------------------------------------
	/* ホバースタイル
	--------------------------------------- */

	@media (hover: hover){
	.header_Menu_list li a:hover{opacity:.5}
	.footer_navi a:hover{opacity:.5}
	.link-over:hover ~ figure img{scale:1.05}
	}


	/* TOP
	===================================================== */
	/* TOP-MV */
	.top-mv {
	height: 100vh;
	background-image: url(images/top_mv.jpg);
	}

	/* TOP-ABOUT */
	.top-about {
	background-image: url(images/top_about_bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	}

	.top-about-cont {
	width: 100%;
	aspect-ratio: 942 / 890;
	display: flex;
	justify-content: center;
	gap: 10%
	}

	.top-about-img-cont {
	width: 45%;
	position: relative;

	.top-about-img {
		position: absolute;

		&:nth-of-type(1) {
			width: 82%;
			top: 0;
			left: 0;
		}
		&:nth-of-type(2) {
			width: 60%;
			top: 49%;
			right: 0;
		}
		&:nth-of-type(3) {
			width: 60%;
			top: 80%;
			left: 15%;
		}
	}
	}

	.top-about-txt-cont {
	width: 45%;
	display: flex;
	flex-direction: column;
	gap: 50px;

	.ttl-cont {
		margin-bottom: 0;
	}

	.top-about-txt {
		margin-bottom: 50px;
		color: #fff;
		line-height: 2.7;
	}
	}

	/* TOP-REASON */
	.top-reason {
	.container {
		padding-top: 50px;
	}
	}

	.top-reason-slide-cont.swiper {
	margin-right: calc(50% - 50vw);
	}

	.top-reason-slide-item {
	aspect-ratio: 650 / 460;
	display: flex;
	cursor: pointer;

	.top-reason-slide-img {
		width: 50%;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;

		&.reason-slide-01 {
			background-image: url(images/top_reason_01.jpg);
		}
		&.reason-slide-02 {
			background-image: url(images/top_reason_02.jpg);
		}
		&.reason-slide-03 {
			background-image: url(images/top_reason_03.jpg);
		}
		&.reason-slide-04 {
			background-image: url(images/top_reason_04.jpg);
		}
	}

	.top-reason-slide-txt {
		padding: 50px;
		width: 50%;
		background-color: var(--bg-color-gray);
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: 15px;

		.reason-slide-num {
			color: var(--main-color);
			font-size: 3rem;
		}
		.reason-slide-ttl {
			font-size: 1.5rem;
			font-weight: normal;
		}
		.reason-slide-txt {
			font-family: var(--sub-font);
			line-height: 1.8;
		}
	}
	}

	.swiper-control {
	width: 1140px;
	max-width: 100%;
	height: 20px;
	margin-top: 45px;
	padding: 0 25px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 15px;
	}

	.swiper-control .swiper-button-prev,
	.swiper-control .swiper-button-next {
	width: 20px;
	height: 20px;
	margin: 0;
	color: #000;
	position: static;
	}

	.swiper-control .swiper-button-prev::after,
	.swiper-control .swiper-button-next::after {
	font-size: 0.9rem;
	}

	.swiper-control .swiper-pagination {
	width: auto !important;
	display: flex;
	align-items: center;
	position: static;
	}

	.swiper-control .swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	background-color: #fff;
	border: 1px solid #000;
	opacity: 1;
	}

	.swiper-control .swiper-pagination-bullet-active {
	background-color: #000;
	}

	/* TOP-ENTRANCE */
	.top-entrance {
	width: 100%;
	aspect-ratio: 1920 / 1195;
	background-color: var(--bg-color-gray);
	position: relative;

	.top-entrance-bg {
		width: 100%;
		height: 47%;
		background-image: url(images/top_entrance_bg.jpg);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		position: absolute;
		top: 0;
		left: 0;
	}
	}

	.top-entrance-cont {
	display: flex;
	flex-direction: column;
	}

	.top-entrance-head {
	margin-bottom: 75px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;

	.ttl-cont {
		margin-bottom: 0;
	}

	.top-entrance-head-txt {
		color: #fff;
		font-family: var(--ex-font);
		font-size: 2.4rem;
		line-height: 1.4;
	}
	}

	.top-entrance-body {
	margin-bottom: 100px;
	padding: 50px;
	background-color: #fff;
	display: flex;

	.top-entrance-body-item {
		width: 50%;
		padding: 25px 0;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-items: center;

		&:nth-of-type(1) {
			border-right: 1px solid var(--bg-color-gray);
		}

		img {
			height: 210px;
			margin-bottom: 25px;
		}

		h3 {
			margin-bottom: 15px;
			font-size: 1.5rem;
			font-weight: normal;
		}

		p {
			margin-bottom: 40px;
			font-family: var(--sub-font);
			font-weight: 300;
			line-height: 1.8;
			text-align: center;
		}
	}
	}

	/* TOP-WORKS */
	.top-works {
	.container.first-cont {
		padding-bottom: 0;
	}
	.container.end-cont {
		display: flex;
		padding-top: 0;
	}

	.works-swiper {
		.swiper-button-prev,
		.swiper-button-next,
		.swiper-pagination {
			display: none;
		}
	}
	}

	/* TOP-MESSAGE */
	.top-message {
	background-image: url(images/top_message_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	}

	.top-message-cont {
	color: #fff;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 75px;

	.top-message-txt {
		font-size: 1.2rem;
		line-height: 3;
	}
	}

	/* TOP-CTA */

	@media(max-width:1024px){
	/* TOP-ABOUT */
	.top-about-cont {
		aspect-ratio: auto;
		gap: 8%
	}

	.top-about-img-cont {
		.top-about-img {
			&:nth-of-type(1) {
				top: 10%;
				left: 6%;
			}
			&:nth-of-type(2) {
				top: 44%;
				right: -3%;
			}
			&:nth-of-type(3) {
				top: 66%;
				left: 20%;
			}
		}
	}

	.top-about-txt-cont {
		.top-about-txt {
			margin-bottom: 0;
			line-height: 2.5;
		}
	}

	/* TOP-REASON */
	.top-reason-slide-item {
		.top-reason-slide-txt {
			padding: 30px;
			gap: 15px;

			.reason-slide-num {
				font-size: 2.5rem;
			}
			.reason-slide-ttl {
				font-size: 1.4rem;
			}
		}
	}

	/* TOP-ENTRANCE */
	.top-entrance-head {
		margin-bottom: 50px;
	}

	.top-entrance-body {
		margin-bottom: 75px;
		padding: 25px 0;
	}

	.top-entrance-body {
		.top-entrance-body-item {
			p {
				min-height: 120px;
				display: flex;
				align-items: center;
			}
		}
	}

	/* TOP-MESSAGE */
	.top-message-cont {
		.top-message-txt {
			line-height: 2.7;
		}
	}
	}

	@media(max-width:767px){
	/* TOP-ABOUT */
	.top-about {
		.container {
			padding-bottom: 35px;
		}
	}

	.top-about-cont {
		aspect-ratio: auto;

		flex-direction: column-reverse;
		gap: 50px;
	}

	.top-about-img-cont {
		width: 100%;
		display: flex;
		flex-direction: column;
		gap: 20px;

		.top-about-img {
			position: static;

			&:nth-of-type(1) {
				width: 55%;
			}
			&:nth-of-type(2) {
				width: 48%;
				align-self: flex-end;
			}
			&:nth-of-type(3) {
				width: 48%;
				transform: translateX(25px);
			}
		}
	}

	.top-about-txt-cont {
		width: 100%;
		gap: 25px;

		.top-about-txt {
			margin-bottom: 0;
			line-height: 2.5;
		}

		.link-txt.link-txt-green {
			color: #fff;

			&::after {
				background-color: #fff;
			}
		}
	}

	/* TOP_REASON */
	.top-reason-slide-item {
		.top-reason-slide-txt {
			padding: 25px;
			gap: 10px;

			.reason-slide-num {
				font-size: 2rem;
			}
			.reason-slide-ttl {
				font-size: 1.2rem;
			}
			.reason-slide-txt {
				font-size: 0.9rem;
			}
		}
	}

	/* TOP-ENTRANCE */
	.top-entrance {
		aspect-ratio: auto;
	}

	.top-entrance-head {
		margin-bottom: 25px;
		flex-direction: column-reverse;

		.ttl-cont {
			margin-bottom: 25px;
		}

		.top-entrance-head-txt {
			font-size: 1rem;
			text-align: right;
			align-self: flex-end;
		}
	}

	.top-entrance-body {
		margin-bottom: 50px;
		padding: 15px 25px;
		flex-direction: column;

		.top-entrance-body-item {
			width: 100%;
			padding: 25px 0 30px;

			&:nth-of-type(1) {
				border-bottom: 1px solid var(--bg-color-gray);
				border-right: none;
			}

			img {
				height: 135px;
			}

			p {
				margin-bottom: 30px;
			}
		}
	}

	/* TOP-WORKS */
	.top-works {
		.works-list {
			margin-bottom: 25px;
		}
	}

	/* TOP-MESSAGE */
	.top-message-cont {
		gap: 50px;

		.top-message-txt {
			line-height: 2.4;
		}
	}
	}

	/* お問い合わせ
	===================================================== */
	.page-contact-des{text-align:center;padding-top:40px;}

	.c-table {width: 800px;max-width:100%;margin-inline: auto;}
	.from-item{display:flex;flex-wrap: wrap;padding-block: 40px;border-bottom: 1px solid #E4E4E4;}
	.c-table .fl{width:240px;padding-block: 4px;display: block;}
	.c-table .fr{width:calc(100% - 240px)}
	.required{font-size: 12px;color: #fff;padding-block: 4px;padding-inline: 8px;background-color: var(--main-color);margin-right: 16px;vertical-align: 1px;}
	.any{font-size: 12px;padding: 4px 8px;background-color: #b4b5b5;margin: 0 16px 0 0;vertical-align: 1px;}
	.example{font-size: 14px;letter-spacing: -1px;}
	.from-item input[type=email]{width:100%}
	.from-item input[type=tel]{width:310px;}
	.from-item textarea {height: 140px;width:100%}
	.from-note{width: 420px;max-width: 100%;text-align:center;margin:40px auto 0;padding: 32px 16px;border: 1px solid;}
	.from-note p{color:#000;}
	.from-note .acceptance-wrap{font-weight:bold;margin:16px 0 0}
	.from-note .doui{width: 18px;height: 18px;margin: 0 8px 0 0;border: none;vertical-align: -3px;}
	.wpcf7-submit:disabled{opacity: 0.3;pointer-events: none}
	.formsubmit{margin: 60px auto 0;position:relative;width:fit-content;color: #fff;}
	.formsubmit .wpcf7-submit{width: 300px;max-width:100%;margin-inline: auto;padding-block: 24px;background-color: var(--main-color);line-height:1;text-align: center;position: relative;font-size: 20px;transition:var(--hover-transform);color: #fff;}
	.wpcf7-spinner{display:block;margin:16px auto}
	.policy-link{padding:0 8px;text-decoration: underline;}

	@media(max-width:720px){
	.c-table .fl,
	.c-table .fr{width:100%;}
	}

	@media(max-width:560px){
	.c-table{margin-top:24px}
	}

	/* privacypolicy
	===================================================== */

	.privacypolicy-item{width: 800px;max-width:100%;margin-inline:auto;}
	.privacypolicy-item h3{font-size:20px;margin-block:40px 8px}
	.privacypolicy-item h4{font-size:18px;margin-block:32px 8px}
	.privacypolicy-item h4::before{content:'';display:inline-block;width:16px;height:16px;background-color: var(--main-color);margin-right:8px;}
	.privacypolicy-item h5{margin-block:24px 8px}
	.privacypolicy-item h5::before{content:'';display:inline-block;width:16px;height:1px;background-color: var(--main-color);margin-right:8px;vertical-align: 6px;}
	.privacypolicy-item ul,
	.privacypolicy-item ol{margin-block:16px}
	.privacypolicy-item li{position:relative;padding-left: 24px;}
	.privacypolicy-item li::before{content:'';position: absolute;width:10px;height:10px;border-radius:10px;background-color: var(--main-color);margin-right:8px;top: 8px;left: 4px;}

	/* 下層ページ
	===================================================== */
	/* ORDER - 花のご注文 */
	/* ORDER-MV */
	.order-mv {
	background-image: url(images/order_mv.jpg);
	}

	/* ORDER-REASON */
	.order-reason {
	overflow-x: hidden;

	.container {
		padding-top: 50px;
	}
	}

	.order-reason-head {
	margin-bottom: 75px;
	margin-right: calc(50% - 50vw);
	}

	.order-reason-head-inner {
	width: 100%;
	min-height: 420px;
	padding: 50px 0 50px 75px;
	background-image: url(images/order_reason_bg.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	display: flex;
	align-items: center;

	.ttl-cont {
		margin-bottom: 0;
	}
	}

	.order-reason-txt-cont {
	display: flex;
	justify-content: space-between;

	.order-reason-txt {
		line-height: 2.7;
	}

	.order-reason-copy {
		color: #dcdfdd;
		font-family: var(--ex-font);
		font-size: 2.4rem;
		text-align: right;
		line-height: 1.4;
	}
	}

	/* ORDER-PRICE */
	.order-price {
	background-color: var(--bg-color-gray);
	}

	.table-cont {
	display: flex;
	flex-direction: column;
	gap: 1px;
	}

	.table-row {
	width: 100%;
	display: flex;

	.table-head {
		width: 35%;
		height: 90px;
		color: #fff;
		font-size: 1.5rem;
		background-color: #9ca4ae;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.table-body {
		width: 65%;
		height: 90px;
		font-size: 1.5rem;
		background-color: #fff;
		display: flex;
		justify-content: center;
		align-items: center;

		span {
			margin-left: 5px;
			font-family: var(--sub-font);
			font-size: 0.8rem;
		}
	}
	}

	/* ORDER-CORPORATE */
	.order-corporate {
	background-color: var(--bg-color-gray);

	.container {
		padding-top: 0;
		display: flex;
		flex-direction: column;
	}
	}

	.order-corporate-txt {
	margin-bottom: 65px;
	line-height: 2.7;
	}

	.order-corporate-list {
	margin-bottom: 75px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 25px;
	}

	.order-corporate-list-item {
	background-position: center center;
	background-size: cover;
	aspect-ratio: 1 / 1.05;
	}

	.corporate-list-txt {
	height: 100%;
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 5px;

	.corporate-list-txt-en {
		font-size: 0.8rem;
	}
	.corporate-list-txt-main {
		font-size: 1.2rem;
	}
	.corporate-list-txt-sub {
		font-family: var(--sub-font);
		font-size: 1.1rem;
	}
	}

	.order-corporate-list-item:nth-of-type(1) {
	background-image: url(images/corporate_list_bg_01.jpg);
	}
	.order-corporate-list-item:nth-of-type(2) {
	background-image: url(images/corporate_list_bg_02.jpg);
	}
	.order-corporate-list-item:nth-of-type(3) {
	background-image: url(images/corporate_list_bg_03.jpg);
	}

	/* ORDER-FLOW */
	.order-flow-cont {
	display: flex;
	align-items: flex-end;
	gap: 17%;
	}

	.order-flow-txt {
	width: 40%;
	}

	.flow-step-cont {
	display: flex;
	flex-direction: column;
	}

	.flow-step-item {
	padding: 40px 0;
	border-bottom: 1px dotted #000;
	display: flex;
	align-items: center;
	gap: 40px;

	.flow-step-item-num {
		width: 40px;
		height: 40px;
		color: #fff;
		background-color: #000;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.flow-step-item-txt {
		.flow-step-item-ttl {
			margin-bottom: 2px;
			font-size: 1.2rem;
		}
		.flow-step-item-detail {
			font-family: var(--sub-font);
		}
	}

	&:last-of-type {
		border-bottom: none;
	}
	}

	.order-flow-img {
	width: 43%;

	img {
		width: 90%;
		margin-right: auto;
	}
	}

	/* ORDER-WORKS */
	.order-works {
	background-color: var(--bg-color-gray);

	.container {
		display: flex;
		flex-direction: column;
	}
	}

	.works-list {
	margin-bottom: 75px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 35px;
	}

	/* ORDER-CTA */
	.order-cta {
	.container {
		padding-top: 0;
	}
	}
	/* OWNER - 事業者の方へ */
	/* OWNER-MV */
	.owner-mv {
	background-image: url(images/owner_mv.jpg);
	}

	/* OWNER-FOR */
	.owner-for {
	.container {
		padding-bottom: 100px;
	}
	}

	.grid-list.owner-for-list {
	grid-template-columns: repeat(4, 1fr);
	}

	/* OWNER-MERIT */
	.owner-merit {
	background-image: url(images/owner_merit_bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	}

	.owner-merit-cont {
	width: 700px;
	margin: 0 auto 125px;
	aspect-ratio: 630 / 580;
	position: relative;
	}

	.owner-merit-item {
	width: calc(53% + 1px);
	aspect-ratio: 1 / 1;
	color: #fff;
	text-align: center;
	border: 1px solid #fff;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;

	.owner-merit-item-ttl {
		margin-bottom: 15px;
		font-size: 1.4rem;
		text-decoration: underline;
		position: relative;
	}

	.owner-merit-item-txt {
		font-family: var(--sub-font);
		line-height: 1.8;
	}

	&.merit-item-01 {
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	&.merit-item-02 {
		bottom: 0;
		left: 0;
	}
	&.merit-item-03 {
		bottom: 0;
		right: 0;
	}
	}

	.owner-merit-ambient-txt {
	color: rgba(255, 255, 255, 0.4);
	font-family: var(--ex-font);
	font-size: 1.2rem;
	text-align: right;
	position: absolute;
	top: 25px;
	right: 0;
	transform: translateX(50%);
	}

	.owner-merit-copy {
	color: #fff;
	font-size: 1.7rem;
	letter-spacing: 0.3em;
	display: flex;
	justify-content: center;
	align-items: center;

	&::after {
		content: "";
		width: 65px;
		height: 1px;
		margin-left: 6px;
		background: currentColor;
	}
	}

	/* OWNER-ACCESS */
	.owner-access {
	background-color: var(--bg-color-gray);
	}

	/* OWNER-WORKS */
	.owner-works {
	.container {
		display: flex;
		flex-direction: column;
	}
	}

	/* WORKS - 事例集 */
	.archive-content-wrap {
	.ttl-cont {
		margin-bottom: 100px;
	}
	}

	.works-cont {
	display: grid;
	grid-template-columns: 300px 1fr;
	gap: 60px;
	align-items: start;
	}

	/* WORKS - 左カラム */
	.works-sidebar {
	position: sticky;
	top: 100px;
	}

	.works-filter {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
	}

	.works-filter a {
	display: block;
	width: 60%;
	padding: 8px 16px;
	border: none;
	border-radius: 999px;
	background: var(--bg-color-gray);
	color: #999;
	font: inherit;
	font-size: 0.85rem;
	font-family: var(--sub-font);
	text-align: center;
	cursor: pointer;
	transition: background-color .3s, color .3s;
	}

	.works-filter .is-current a,
	.works-filter a:hover {
	background: var(--main-color);
	color: #fff;
	}

	/* WORKS - 右カラム */
	.works-archive-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 60px 40px;
	}

	.works-item {
	position: relative;
	}

	.works-item .link-over {
	position: absolute;
	inset: 0;
	z-index: 1;
	}

	.works-thumbnail {
	margin: 0;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	}

	.works-thumbnail img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: var(--hover-transform);
	}

	.works-item-des {
	margin-top: 36px;
	}

	.works-cat-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 12px;
	padding: 0;
	list-style: none;
	}

	.works-cat {
	padding: 6px 30px;
	border-radius: 999px;
	background: var(--main-color);
	color: #fff;
	font-family: var(--sub-font);
	font-size: 0.85rem;
	letter-spacing: .05em;
	}

	.works-ttl {
	margin: 0 0 16px;
	font-size: 1.5rem;
	font-weight: 500;
	}

	.works-info {
	margin: 0;
	padding: 0;
	list-style: none;
	font-family: var(--sub-font);
	line-height: 1.8;
	}

	.works-cta {
	.container {
		padding-top: 0;
	}
	}

	/* ABOUT - 創造産業について */
	/* ABOUT-MV */
	.about-mv {
	background-image: url(images/about_mv.jpg);
	}

	/* ABOUT-MESSAGE */
	.about-message {
	.container {
		width: 1920px;
		padding: 150px 25px 150px 0;
	}
	}

	.about-message-cont {
	display: flex;
	gap: 8%;
	}

	.about-message-img {
	width: 45%;
	}

	.about-message-txt {
	width: 47%;
	display: flex;
	flex-direction: column;
	justify-content: center;

	.ttl-cont {
		margin-bottom: 50px;
	}

	.message-txt {
		max-width: 500px;
		margin-bottom: 35px;
		font-family: var(--sub-font);
	}
	.message-name {
		max-width: 500px;
		font-family: var(--sub-font);
		text-align: right;
	}
	}

	/* ABOUT-HISTORY */
	.history-cont {
	display: flex;
	gap: 10%;
	}

	.history-ttl {
	width: 38%;
	}

	.history-timeline {
	width: 52%;
	}

	.timeline-item {
	display: grid;
	grid-template-columns: 85px 40px 1fr;
	align-items: center;
	min-height: 100px;

	.timeline-year {
		color: #c5dfd4;
		font-size: 2rem;
	}

	.timeline-marker {
		position: relative;
		display: flex;
		justify-content: center;

		&::before {
			content: "";
			width: 10px;
			height: 10px;
			border-radius: 50%;
			background-color: #000;
		}
		&::after {
			content: "";
			width: 1px;
			height: 100px;
			background-color: #000;
			position: absolute;
			top: 0;
			bottom: 0;
		}
	}

	&:last-of-type {
		.timeline-marker::after {
			display: none;
		}
	}

	.timeline-txt {
		margin-left: 15px;
		font-family: var(--sub-font);
	}
	}

	/* ABOUT-SKILL */
	.skill-cont {
	display: flex;
	flex-direction: column;
	gap: 100px;
	}

	.skill-item {
	display: flex;
	gap: 10%;

	.skill-item-img {
		width: 50%;

		img {
			width: 100%;
		}
	}

	.skill-item-txt {
		width: 40%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: 20px;

		.skill-ttl-en {
			color: var(--main-color);
			font-size: 1.2rem;
		}
		.skill-ttl-ja {
			font-size: 1.8rem;
		}
		.skill-txt {
			font-family: var(--sub-font);
		}
	}
	}

	/* ABOUT-BUSINESS */
	.grid-list.about-business-list {
	grid-template-columns: repeat(4, 1fr);

	.grid-list-item {
		padding: 60px 20px 30px;
		gap: 40px;
	}
	}

	.about-business-link {
	position: absolute;
	bottom: -40px;
	}

	/* ABOUT-COMPANY */
	.company-table-row {
	padding: 25px 0;
	border-top: 1px solid #dcdfdd;
	display: flex;
	align-items: center;

	.company-table-head {
		width: 20%;
		font-size: 1.1rem;
	}
	.company-table-body {
		width: 80%;
		color: #575757;
		font-family: var(--sub-font);
	}

	&:last-of-type {
		border-bottom: 1px solid #dcdfdd;
	}
	}

	/* LOOP-SLIDE */
	.loop-slide {
	overflow: hidden;
	}

	.loop-slide-track {
	width: max-content;
	padding: 0 25px;
	display: flex;
	justify-content: center;
	gap: 25px;
	position: relative;
	left: 0;
	/*   transform: translateX(-50%); */
	animation: marquee 60s linear infinite;
	}

	@keyframes marquee {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
	}

	.loop-slide-track-item {
	width: 420px;
	flex: 0 0 auto;

	img {
		width: 100%;
		height: 320px;
		object-fit: cover;
		display: block;
	}
	}

	@media(max-width:1024px) {
	/* ORDER-REASON */
	.order-reason-head {
		margin-bottom: 50px;
	}

	.order-reason-head-inner {
		min-height: 350px;
		padding: 35px 0 35px 50px;
	}

	.order-reason-txt-cont {
		.order-reason-txt {
			line-height: 2.5;
		}
	}

	/* ORDER-CORPORATE */
	.order-corporate-txt {
		margin-bottom: 50px;
		line-height: 2.5;
	}

	.order-corporate-list {
		margin-bottom: 75px;
		gap: 15px;
	}

	/* ORDER-FLOW */
	.order-flow-cont {
		gap: 5%;
	}

	.order-flow-txt {
		width: 45%;
	}

	.order-flow-img {
		width: 50%;
		padding-bottom: 25px;

		img {
			width: 100%;
		}
	}

	/* OWNER-FOR */
	.owner-for {
		.container {
			padding-bottom: 50px;
		}
	}

	.grid-list.owner-for-list {
		grid-template-columns: repeat(2, 1fr);
	}

	/* OWNER-MERIT */
	.owner-merit-cont {
		margin: 0 auto 75px;
	}

	.owner-merit-ambient-txt {
		transform: none;
	}

	/* WORKS */
	.works-cont {
		grid-template-columns: 180px 1fr;
		gap: 30px;
	}
	.works-list {
		margin-bottom: 25px;
	}

	.works-filter a {
		width: 100%;
	}
	.works-archive-list {
		gap: 45px 25px;
	}
	.works-item-des {
		margin-top: 20px;
	}
	/* ABOUT-BUSINESS */
	.grid-list.about-business-list {
		grid-template-columns: repeat(2, 1fr);

		.grid-list-item {
			height: 335px;
		}
	}
	}

	@media(max-width:767px){
	/* ORDER-REASON */
	.order-reason {
		.container {
			padding-top: 0;
		}
	}

	.order-reason-head {
		margin-bottom: 25px;
	}

	.order-reason-head-inner {
		min-height: 260px;
		padding: 35px 0 35px 20px;
	}

	.order-reason-txt-cont {
		flex-direction: column;

		.order-reason-txt {
			margin-bottom: 20px;
			line-height: 2.5;
		}

		.order-reason-copy {
			font-size: 1.8rem;
			text-align: left;
		}
	}

	/* ORDER-PRICE */
	.table-row {
		flex-direction: column;

		.table-head {
			width: 100%;
			height: 45px;
			font-size: 1.4rem;
		}

		.table-body {
			width: 100%;
			height: 60px;
		}
	}

	/* ORDER-CORPORATE */
	.order-corporate-txt {
		margin-bottom: 35px;
		line-height: 2.5;
	}

	.order-corporate-list {
		margin-bottom: 35px;
		grid-template-columns: 1fr;
		gap: 15px;
	}

	.order-corporate-list-item {
		aspect-ratio: 1 / 0.7;
		background-size: cover;
	}

	/* ORDER-FLOW */
	.order-flow-cont {
		flex-direction: column;
		align-items: flex-start;
		gap: 35px;
	}

	.order-flow-txt {
		width: 100%;

		.ttl-cont {
			margin-bottom: 15px;
		}
	}

	.flow-step-item {
		padding: 25px 0;
		gap: 25px;

		.flow-step-item-num {
			width: 35px;
			height: 35px;
		}
	}

	.order-flow-img {
		width: 100%;

		img {
			width: 90%;
			margin: 0 auto;
		}
	}

	.grid-list.owner-for-list {
		grid-template-columns: 1fr;
	}

	/* OWNER-MERIT */
	.owner-merit-cont {
		width: 100%;
		margin: 0 auto 50px;
	}

	.owner-merit-item {
		.owner-merit-item-ttl {
			margin-bottom: 8px;
			font-size: 0.9rem;
			line-height: 1.3;
		}

		.owner-merit-item-txt {
			line-height: 1.6;
			font-size: 0.8rem;
		}
	}

	.owner-merit-ambient-txt {
		font-size: 0.5rem;
	}

	.owner-merit-copy {
		font-size: 1.1rem;

		&::after {
			width: 35px;
		}
	}

	/* 	WORKS */
	.works-list {
		grid-template-columns: 1fr;
		gap: 15px;
	}
	.archive-content-wrap {
		.ttl-cont {
				margin-bottom: 35px;
			}
	}
	.works-cont {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.works-sidebar {
		position: static;
	}

	.works-filter {
		display: flex;
		gap: 8px;
		flex-wrap: wrap;
		padding-bottom: 8px;
	}

	.works-filter li {
		flex-shrink: 0;
	}

	.works-filter a {
		width: auto;
		padding: 8px 20px;
		white-space: nowrap;
	}

	.works-archive-list {
		grid-template-columns: 1fr;
		gap: 40px;

		img {
			width: 100%;
		}
	}
	.works-cat {
		padding: 6px 24px;
	}
	.works-ttl {
		font-size: 1.3rem;
	}





















	/* ABOUT - 創造産業について */
	/* ABOUT-MESSAGE */
	.about-message {
		.container {
		width: 100%;
		padding: 75px 25px 75px 0;
		}
	}

	.about-message-cont {
		flex-direction: column;
		gap: 25px;
	}

	.about-message-img {
		width: 100%;
	}

	.about-message-txt {
		width: 100%;
		padding-left: 25px;

		.ttl-cont {
		margin-bottom: 15px;
		}

		.message-txt {
		margin-bottom: 15px;
		}
	}

	/* ABOUT-HISTORY */
	.history-cont {
		flex-direction: column;
		gap: 0;
	}

	.history-ttl {
		width: 100%;

		.ttl-cont {
			margin-bottom: 0;
		}
	}

	.history-timeline {
		width: 100%;
	}

	/* ABOUT-SKILL */
	.skill-cont {
		gap: 50px;
	}

	.skill-item {
		flex-direction: column;
		gap: 15px;

		.skill-item-img {
		width: 100%;

		img {
			width: 100%;
		}
		}

		.skill-item-txt {
		width: 100%;
		gap: 10px;
		}
	}

	/* ABOUT-BUSINESS */
	.grid-list.about-business-list {
		grid-template-columns: 1fr;

		.grid-list-item {
		height: 260px;
		padding: 35px 20px 30px;
		gap: 25px;

			&:nth-of-type(4) {
				margin-top: 55px;
			}
		}
	}

	/* ABOUT-COMPANY */
	.company-table-row {
		padding: 20px 0;

		.company-table-head {
		width: 90px;
		font-size: 1rem;
		}
		.company-table-body {
		width: calc(100% - 90px);
		font-size: 0.9rem;
		}
	}

	/* LOOP-SLIDE */
	.loop-slide-track {
		left: -25px;
		transform: none;
	}

	.loop-slide-track-item {
		width: 300px;

		img {
		height: 225px;
		}
	}
	}

	.recruit-mv{
		background-image: url(images/recruit_mv.jpg);
	}
	.recruit-table + .recruit-table{
		margin-top:80px
	}