:root {
	--green: #60A228;
	--light-green: #EEFCE8;
	--yellow: #F8C026;
	--light-yellow: #FFFBE8;
	--light-orange: #FFF2E9;
	--blue: #3995BE;
	--light-blue: #EDFCFE;
	--white: #fff;

	--font30-copy: clamp(24px, 2.5vw, 30px);
	--font40-h1: clamp(22px, 2.5vw, 40px);
	--font32-h2: clamp(24px, 2.5vw, 32px);
	--font20-h3: clamp(16px, 4vw, 20px);
	--font18-h4: clamp(14px, 4vw, 18px);
	--font14-h5: clamp(12px, 4vw, 14px);
	--font12-h6: clamp(10px, 4vw, 12px);
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

h1 {
	font-size: var(--font40-h1);
}

h2 {
	font-size: var(--font32-h2);
}

h3 {
	font-size: var(--font20-h3);
}

h4 {
	font-size: var(--font18-h4);
}

h5 {
	font-size: var(--font14-h5);
}

h6 {
	font-size: var(--font12-h6);
}

.hrg {
	font-family: hiragino-kaku-gothic-pron, sans-serif;
}

.din {
	font-family: din-2014, sans-serif;
}

p {
	font-size: 16px;
	line-height: 1.7;
	letter-spacing: 0.05em;
}

a {
	text-decoration: none;
}

ul {
	list-style: none;
}
address .din,
address .hrg {
    font-style: normal;
}


/*　各ページヒーロー　*/
.page-hero {
	max-width: 1366px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-bottom: 98px;
}

.page-hero_left {
	max-width: 510px;
	min-width: fit-content;
	margin-left: 6%;
	margin-right: 30px;
}

.page-hero_right {
	width: auto;
}

.page-hero_right img {
	width: 100%;
	height: 378px;
	max-width: 850px;
	object-fit: cover;
}


.page-hero_sub-title {
	text-align: left;
	font-size: var(--font18-h4);
	color: var(--green);
	font-weight: 600;
	margin-top: 38px;
	margin-bottom: 8px;
}

.page-hero_jp-title {
	text-align: left;
	font-size: var(--font32-h2);
	color: #000;
	font-weight: 600;
	margin-bottom: auto;
}

.page-hero_breadcrumbs {
	margin-top: 34px;
	font-size: 10px;
}

.page-hero_breadcrumbs a {
	color: #000;
}

.page-hero_breadcrumbs a:hover {
	color: var(--green);
}

@media screen and (max-width: 800px) {
	.page-hero {
		flex-direction: column-reverse;
		align-items: flex-start;
	}
}

/* 各ページコンテンツのタイトル */
.content_sub-title {
	text-align: center;
	font-size: var(--font18-h4);
	color: var(--green);
	font-weight: 600;
	margin-bottom: 5px;
}

.content_jp_title {
	text-align: center;
	font-size: var(--font32-h2);
	color: #000;
	font-weight: 600;
	margin-bottom: 48px;
}

/* 各コンテンツの幅指定 */
.container_1200 {
	width: 88%;
	max-width: 1200px;
	margin: 0 auto;
}

.container_1000 {
	width: 73%;
	max-width: 1000px;
	margin: 0 auto;
}

/* 緑のボタン */
.green_btn-link {
	min-width: 245px;
	display: inline-flex;
	align-items: center;
	justify-content: space-around;
	gap: 32px;
	color: var(--green);
	background-color: var(--white);
	font-weight: 600;
	font-size: 16px;
	border: 2px solid var(--green);
	border-radius: 50px;
	padding: 16px 32px;
	line-height: 1.75;
}

.green_btn-link i {
	font-size: 28px;
}

/* メディアクエリ 改行・表示切り替え */
@media screen and (min-width: 1200px) {
	.sp_only_1200 {
		display: none;
	}

	.pc_only_1200 {
		display: block;
	}
}

@media screen and (max-width: 1200px) {
	.sp_only_1200 {
		display: block;
	}

	.pc_only_1200 {
		display: none;
	}
}

@media screen and (min-width: 800px) {
	.pc_only_800 {
		display: block;
	}

	.sp_only_800 {
		display: none;
	}
}

@media screen and (max-width: 800px) {
	.pc_only_800 {
		display: none;
	}

	.sp_only_800 {
		display: block;
	}

	.container_1000,
	.container_1200 {
		width: 85%;
	}
}

@media screen and (min-width: 768px) {
	.sp_only_768 {
		display: none;
	}

	.pc_only_768 {
		display: block;
	}
}

@media screen and (max-width: 768px) {
	.sp_only_768 {
		display: block;
	}

	.pc_only_768 {
		display: none;
	}
}

@media screen and (min-width: 400px) {
	.sp_only_400 {
		display: none;
	}
}

@media screen and (max-width: 400px) {
	.sp_only_400 {
		display: block;
	}

	.green_btn-link {
		gap: 20px;
		padding: 16px 20px;
	}
}

/*==============================================
# header
===============================================*/
header {
	height: auto;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

/*ミドリのライン*/
.header-top-line {
	height: 27px;
	background-color: var(--green);
	position: relative;
	z-index: 3000;
}

.top-line-inner {
	height: 100%;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 36px;
}

.top-line-inner a {
	font-size: 12px;
	color: var(--white);
}

/*背景白色の部分*/
.header-inner {
	height: 100%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.header-inner-left {
	width: 44%;
}

.header-inner-left h6 {
	font-weight: 400;
	margin: 14px 0;
	white-space: nowrap;
}

/*ロゴ*/
.header-inner-left a {
	display: inline-block;
	margin-bottom: 18px;
}

@media screen and (max-width: 800px) {
	.header-inner-left a {
		margin-top: 18px;
	}
}

.header-inner-left .header-logo {
	width: clamp(200px, 25.5vw, 306px);
	height: auto;
	object-fit: contain;
}

/*右側のテキスト*/
.header-inner-right {
	width: 56%;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.header-inner-right-1 {
	text-align: right;
	margin-right: 22px;
}

header .header-inner-right-1 address .header-tel_h2 a {
	color: var(--green);
	font-weight: 600;
	font-size: clamp(28px, 2.5vw, 32px);
}

header .header-inner-right-1 address .header-tel_h2 a:hover,
header .header-inner-right-1 address .header-tel_h5 a:hover {
	opacity: 0.8;
}

header .header-inner-right-1 address .header-tel_h5 a {
	color: var(--green);
}

header .header-inner-right-1 address .header-tel_h5 {
	font-style: normal;
	font-weight: 600;
}

header .header-inner-right-1 address .header-time_h6 {
	font-weight: 300;
}

/*******************メニュー******************/

/*ハンバーガーボタンPC時*/
.hamburger {
	display: none;
	width: 28px;
	height: 22px;
	flex-direction: column;
	justify-content: space-between;
	cursor: pointer;
	background: none;
	border: none;
	padding: 10px;
	box-sizing: content-box;
}

.hamburger span {
	display: block;
	width: 100%;
	height: 3px;
	background-color: var(--green);
	border-radius: 2px;
	transition: all 0.3s ease;
}

/*メニューPC時*/
.header-nav {
	transition: all 0.3s ease;
}

@media (min-width: 901px) {
	.header-nav ul {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 15px;
		margin-bottom: 6px;
	}

	.header-nav ul li a {
		display: block;
		font-size: 16px;
		color: #000;
		font-weight: 600;
		padding: 10px 5px;
		white-space: nowrap;
		font-size: clamp(14px, 1.5vw, 18px);
	}

	.header-nav ul li:last-child a {
		padding-right: 0;
	}
}

/* 開いたときのアニメーション */
.hamburger.active span:nth-child(1) {
	transform: translateY(9px) rotate(45deg);
	z-index: 2000;
}

.hamburger.active span:nth-child(2) {
	opacity: 0;
}

.hamburger.active span:nth-child(3) {
	transform: translateY(-9px) rotate(-45deg);
	z-index: 2000;
}

/*メニュースマホ時*/
@media (max-width: 900px) {
	.header-inner {
		align-items: center;
	}

	.hamburger {
		display: flex;
		margin-left: auto;
	}

	.header-nav {
		position: fixed;
		top: 0;
		right: -100%;
		width: 70%;
		height: auto;
		background: #fff;
		box-shadow: -4px 0 10px rgba(0, 0, 0, 0.1);
		transition: right 0.3s ease;
		padding: 80px 20px 40px 20px;
		z-index: 1000;
	}

	.header-nav.active {
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
		text-align: center;
		gap: 10px;
		right: 0;
		margin: 50px 0 30px 0;
	}

	.header-inner-right-2 a img {
		width: 80px;
		height: 80px;
	}

	.header-inner-right-1 {
		width: 100%;
		display: flex;
		flex-direction: column-reverse;
		align-items: center;
		text-align: center;
		gap: 30px;
		margin-right: 0;
	}

	.header-inner-right-1 address .header-tel_h2 {
		font-size: 24px;
		margin-bottom: 10px;
	}

	.header-inner-right-1 nav {
		width: 100%;
	}

	.header-inner-right-1 nav ul {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}

	.header-inner-right-1 nav ul li a {
		font-size: 18px;
		color: #333;
		padding: 5px 0;
		display: block;
		border-bottom: 1px solid var(--green);
	}

	.header-inner-right-1 nav ul li:first-child a {
		margin-top: 10px;
		border-top: 1px solid var(--green);
	}
}

/*******************メニュー・おわり******************/

.header-inner-right-2 {
	margin-top: 14px;
	margin-bottom: 10px;
}

.header-inner-right-2 a {
	display: block;
}

.header-inner-right-2 img {
	width: 94px;
	height: auto;
	object-fit: contain;
}

.header-inner-right-2 p {
	font-size: 10px;
	margin-top: 10px;
	white-space: nowrap;
}

/*==============================================
# footer
===============================================*/
footer {
	height: auto;
	background-color: var(--green);
}

/*フッターの一番上の層*/
.footer-inner_1 {
	height: 100%;
	border-bottom: 2px solid var(--white);
	padding: 73px 0 43px 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.footer-inner-1_left {
	width: 50%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.footer-inner-1_right {
	width: 50%;
	text-align: center;
	margin: 0 auto;
}

/*フッターの一番上の層の左側　フッターナビ*/
.footer-nav {
	width: 50%;
}

.footer-nav ul li a {
	color: var(--white);
	display: block;
	font-weight: 600;
}

.footer-nav ul li.footer-nav-item a {
	font-size: clamp(12px, 4vw, 16px);
	padding: 10px 0;
	margin-bottom: 4px;
}

.footer-nav ul li.footer-nav-item:nth-child(4) a {
	margin-bottom: 5px;
}

.footer-nav ul li.footer-nav-sub a {
	font-size: clamp(10px, 4vw, 14px);
	margin-bottom: 10px;
}

/*フッターの一番上の層の左側　ポストカテゴリー*/
.footer-inner-post-category {
	width: 50%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 20px;
}

.footer-works-category {
	width: 50%;
}

.footer-real-estate-category {
	width: 50%;
}

.footer-post-title a {
	display: inline-block;
	color: var(--white);
	font-size: clamp(12px, 4vw, 16px);
	font-weight: 600;
	margin-bottom: 17px;
}

.works-category-item a,
.real-estate-category-item a {
	display: block;
	color: var(--white);
	font-size: clamp(10px, 4vw, 14px);
	margin-bottom: 10px;
}

/*フッターの一番上の層の右側	　電話番号*/
.footer-tel {
	width: 72%;
	margin: 0 auto;
	background-color: var(--white);
	border-radius: 11px;
	padding: 17px 0 15px 0;
}

.footer-tel-title {
	font-size: clamp(12px, 4vw, 16px);
	font-weight: 600;
	color: #000;
	margin-bottom: -5px;
}

.footer-tel-1 {
	font-weight: 600;
	color: var(--green);
}

.footer-tel-2 {
	font-size: clamp(14px, 4vw, 18px);
	font-weight: 600;
	color: var(--green);
	margin-top: -10px;
}

.footer-tel-time {
	font-weight: 300;
	color: #000;
}

/*フッターの一番上の層の右側　お問合せフォームボタン*/
.footer-contact {
	display: block;
	width: 72%;
	margin: 0 auto;
	color: var(--white);
	font-weight: 600;
	background-color: var(--yellow);
	border-radius: 50px;
	padding: 25px 0;
	margin-top: 17px;
}

.footer-contact:hover {
	opacity: 0.8;
}


/*フッターの真ん中の層*/
.footer-inner_2 {
	height: 100%;
	padding: 47px 0 41px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.footer-inner-2_left {
	width: 280px;
}

.footer-inner-2_right {
	width: calc(100% - 280px);
	text-align: left;
	padding-left: 46px;
}

.footer-inner-2_company {
	color: var(--white);
	font-weight: 600;

}

.footer-inner-2_text {
	color: var(--white);
	font-size: clamp(10px, 4vw, 14px);
	font-weight: 300;
}

.footer-inner-2_text:last-child {
	margin-top: 10px;
}

/*フッターの一番下の層*/
.footer-inner_3 {
	width: 100%;
	height: 91px;
	background-color: var(--white);
	margin: 0 auto;
	padding: 17px 0 48px 0;
}

.footer-inner-3_text {
	color: var(--green);
	font-size: clamp(12px, 4vw, 16px);
	font-weight: 300;
	text-align: center;
}

@media screen and (max-width: 800px) {
	.footer-inner_1 {
		flex-direction: column;
		align-items: center;
	}

	.footer-inner-1_left {
		width: 100%;
		margin: 0 auto 50px auto;
	}

	.footer-nav {
		width: 100%;
	}
	
	.footer-nav ul li.footer-nav-item a {
		margin-bottom: 8px;
	}

	.footer-inner-post-category {
		display: none;
	}

	.footer-inner-1_right {
		width: 100%;
	}

	.footer-inner-1_right .footer-tel {
		width: 100%;
	}

	.footer-inner-1_right .footer-tel-title {
		margin-bottom: 0;
	}

	.footer-inner-1_right .footer-tel-2 {
		margin-top: 0px;
	}

	.footer-inner-1_right .footer-contact {
		width: 100%;
	}

	.footer-inner_2 {
		flex-direction: column;
		align-items: center;
	}

	.footer-inner-2_left {
		width: 100%;
	}

	.footer-inner-2_right {
		width: 100%;
		padding-left: 0;
	}

	.footer-inner-2_company {
		text-align: center;
	}

	.footer-inner-2_text {
		text-align: center;
		margin-top: 10px;
	}

	.footer-inner-2_text:last-child {
		margin-top: 0;
	}

	.footer-inner_3 {
		height: auto;
		padding: 17px 0 48px 0;
	}

	.footer-inner-3_text {
		font-size: 12px;
	}
}



/*==============================================
# トップページ (index.php)
===============================================*/

/*ーーーーーーー ヒーローイメージ ーーーーーーー*/
.top_hero {
	width: 100%;
	max-width: 1366px;
	margin: 0 auto;
	padding: 45px 30px 40px 34px;
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 18px;
	box-sizing: border-box;
	/* ← これ重要 */
}

.top_hero_left,
.top_hero_right {
	width: 50%;
	display: flex;
}

.top_hero_left img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 25px;
}

/* ヒーローイメージの右側 */
.top_hero_right {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

/* ヒーローイメージの右側の上下ブロック */
.top_hero_right-top,
.top_hero_right-bottom {
	flex: 1;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 18px;
}

.top_hero_right-top {
	margin-bottom: 16px;
}

.top_hero_right-top img {
	width: 45%;
	height: 100%;
	object-fit: cover;
	border-radius: 25px;
}

.top_hero_right-bottom img {
	width: 32%;
	height: 100%;
	object-fit: cover;
	border-radius: 25px;
}

.top_hero_right-bottom_title {
	color: var(--green);
	margin-top: auto;
	font-size: var(--font30-copy);
	letter-spacing: 0.05em;
	white-space: nowrap;
}



@media screen and (max-width: 768px) {
	.top_hero {
		flex-direction: column;
		gap: 11px;
	}

	.top_hero_left,
	.top_hero_right {
		width: 100%;
	}

	.top_hero_right-top {
		justify-content: center;
	}

	.top_hero_right-top img {
		width: calc(50% - 9px);
	}

	.top_hero_right-bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 11px;
	}

	.top_hero_right-bottom img {
		width: 50%;
	}

	.top_hero_right-bottom_title {
		font-size: 30px;
	}

}

@media screen and (max-width: 400px) {
	.top_hero_right-bottom_title {
		font-size: 28px;
	}
}

/*ーーーーーーー セクション1 新着情報・リフォーム ーーーーーーー*/

/*新着のお知らせ*/
.top_section1_news {
	width: 58%;
	margin: 0 auto;
	max-width: 794px;
	padding-top: 16px;
}

.top_section1_news_h4 {
	display: inline-block;
	color: var(--green);
	border-bottom: 1px solid var(--green);
	margin-bottom: 10px;
}

.top-news {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 1em;
	padding: 20px 0;
	font-size: 14px;
}

.top-news-item {
	width: 100%;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.top-news-date {
	color: #797979;
	margin-right: 8px;
}

.top-news-cat a {
	color: #797979;
	padding: 3px 8px;
	border-radius: 4px;
	font-weight: 600;
}

.post-cat {
	color: #797979;
}

.top-news-title {
	color: #000;
	text-decoration: none;
	max-width: 320px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 14px;
}
.top-news-more {
	color: #3995BE;
	font-weight: 300;
	text-decoration: none;
	margin-left: auto;
}

@media screen and (max-width: 800px) {
	.top_section1_news {
		width: 100%;
		text-align: left;
	}

	.top_section1_news_h4 {
		margin-bottom: 0;
	}
}

/*リフォーム*/
.top_section1_reform {
	width: 100%;
	margin: 0 auto;
	padding: 49px 0 117px 0;
}

.top_section1_reform_img1 {
	width: 60%;
	height: auto;
	object-fit: cover;
	border-radius: 25px;
	object-position: left;
	margin-bottom: 64px;
}

.top_section1_reform_text {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}

.top_section1_reform_text-left {
	width: 50%;
	padding-right: 10%;
}

.top_section1_reform_text-right {
	width: 50%;
	height: 100%;
}

.top_section1_reform_btn {
	display: inline-flex;
	align-items: center;
	font-size: 16px;
	font-weight: 600;
	color: var(--green);
	border: 2px solid var(--green);
	border-radius: 50px;
	padding: 16px 0 16px 39px;
	margin-top: 87px;
	line-height: 1.75;
}

.top_section1_reform_btn i {
	font-size: 28px;
	margin-left: 57px;
	margin-right: 9px;
}

.top_section1_reform_text-right h1 {
	color: var(--green);
	font-size: var(--font30-copy);
	letter-spacing: 0.05em;
	padding-left: 13%;
}

.top_section1_reform_img2 {
	display: inline-block;
	width: 120%;
	height: auto;
	object-fit: cover;
	border-radius: 25px;
	margin-top: 20%;
}

.sp_top_section1_reform_img2 {
	display: none;
}

@media screen and (max-width: 800px) {
	.top_section1_reform_img1 {
		width: 100%;
		margin-bottom: 49px;
	}

	.top_section1_reform {
		position: relative;
	}

	.top_section1_reform_text {
		flex-direction: column-reverse;
	}

	.top_section1_reform_text-left {
		width: 100%;
		padding-right: 0;
	}

	.top_section1_reform_btn {
		width: 60%;
		justify-content: space-around;
		padding: 16px 0;
		margin-top: 50px;
	}

	.top_section1_reform_btn i {
		margin-left: 20px;
	}

	.top_section1_reform_text-right {
		width: 100%;
	}

	.top_section1_reform_text-right h1 {
		padding-left: 0;
		padding-bottom: 31px;
		font-size: 30px;
	}

	.top_section1_reform_img2 {
		display: none;
	}

	.sp_top_section1_reform_img2 {
		display: inline-block;
		width: 100%;
		height: auto;
		object-fit: cover;
		border-radius: 25px;
		margin-top: 41px;
	}
}

@media screen and (max-width: 500px) {
	.top_section1_reform_btn {
		width: 76%;
		justify-content: center;
	}
}

/*ーーーーーーー セクション2 施工事例 スライダー ーーーーーーー*/
.works_section {
	background-color: var(--light-orange);
	padding: 52px 0 68px 0;
}

/*施工事例スライダー*/
.works_slider-item {
	width: 360px;
	margin: 0 10px;
	position: relative;
}

.works_slider-link {
	display: block;
	text-decoration: none;
	color: #000;
}


.works_slider-thumb {
	height: 220px;
}

.works_slider-thumb img {
	width: 100%;
	height: 220px;
	object-fit: cover;
}

/* カテゴリータグ（白背景・左右半円） */
.works_slider-cat {
	position: absolute;
	top: 10px;
	left: 10px;
}

.works_slider-cat .cat-item {
	background: #fff;
	color: var(--green);
	padding: 8px 16px;
	margin-bottom: 4px;
	border-radius: 20px;
	/* 半円 */
	display: inline-block;
	font-size: 12px;
	margin-right: 5px;
}

.works_slider-text {
	background: #fff;
	height: 100%;
	min-height: 205px;
	padding: 21px;
}

/* タイトル（3行超えたら省略） */
.works_slider-title {
	display: block;
	color: #000;
	margin-bottom: 21px;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.4;
	overflow: hidden;
}

/* タグ */
.works_slider-tags {
	height: fit-content;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 5px;
	/* 上下6px・左右5px */
}

.works_slider-tags .tag-item {
	display: inline-block;
	font-size: 12px;
	color: #8D8D8D;
	border: 1px solid #8D8D8D;
	padding: 6px 12px;
	border-radius: 6px;
	white-space: nowrap;
}

/*ーーーーーーー セクション2 施工事例 ボタン ーーーーーーー*/

.works_link_btn {
	text-align: center;
	margin-top: 59px;
}


/*ーーーーーーー セクション3 目的別に施工事例を探す ーーーーーーー*/

.works-card_link {
	padding: 51px 0 112px 0;
}

.works-card_link_title {
	text-align: center;
	font-size: 16px;
	color: #000;
	font-weight: 600;
	padding-bottom: 27px;
}

.works-card_link_content_item {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px 30px;
}



.works-card_link_content_item-link {
	display: block;
	text-align: center;
	font-size: var(--font18-h4);
	color: var(--green);
	font-weight: 300;
	padding: 25px 0;
	border: 2px solid var(--green);
	width: 100%;
}

@media screen and (max-width: 1000px) {
	.works-card_link_content_item {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 768px) {
	.works-card_link_content_item {
		grid-template-columns: repeat(1, 1fr);
		width: 100%;
	}
}

/* リフォームシミュレーションボタン */
.works_simulation_btn {
	padding-top: 103px;
	padding-bottom: 112px;
}

.works_simulation_btn a {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	background-color: var(--white);
	border: 3px solid var(--blue);
}

.works_simulation_img {
	width: 285px;
	object-fit: cover;
}

.works_simulation_img img {
	width: 100%;
	object-position: center;
	display: block;
}

.works_simulation_text {
	width: calc(100% - 285px);
	padding: 0 38px;
	text-align: left;
}

.works_simulation_text h2 {
	font-size: var(--font32-h2);
	color: var(--blue);
	font-weight: 600;
	padding: 41px 0 19px 0;
}

.works_simulation_text .works_simulation_text-p {
	font-size: 16px;
	color: #000;
	padding-bottom: 10px;
}

.works_simulation_text .caption {
	font-size: 12px;
	color: #000;
	padding-bottom: 10px;
}

.works_simulation_logo {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 10px;
	padding-bottom: 17px;
}

.works_simulation_logo p {
	font-size: 12px;
	color: var(--blue);
	font-weight: 600;
}

.works_simulation_logo img {
	width: 105px;
	height: auto;
	object-fit: contain;
}

@media screen and (max-width: 1200px) {
	.works_simulation_btn {
		width: 90%;
		margin: 0 auto;
	}

	.works_simulation_img {
		width: 29%;
	}

	.works_simulation_text {
		width: 71%;
	}
}

@media screen and (max-width: 768px) {
	.works_simulation_btn {
		width: 90%;
		margin: 0 auto;
	}

	.works_simulation_btn a {
		flex-direction: column;
		align-items: center;
	}

	.works_simulation_img {
		width: 285px;
	}

	.works_simulation_text {
		width: 100%;
	}

	.works_simulation_text h2 {
		text-align: center;
	}

	.works_simulation_logo {
		justify-content: center;
	}
}

/*ーーーーーーー 251210 追加 取扱メーカー ーーーーーーー*/

.manufacturer_section_inner {
	padding: 46px 0 81px 0;
	background-color: var(--light-green);
	margin: 0 auto;
	width: 80%;
}

.manufacturer_section_title {
	font-size: 16px;
	font-weight: 600;
	padding-bottom: 40px;
	text-align: center;
}

.manufacturer_section_content {
	width: 80%;
	margin: 0 auto;
}

.manufacturer_section_content span {
	display: inline-block;
	font-size: 16px;
	color: #000;
	padding-bottom: 10px;
}

@media screen and (max-width: 768px) {
	.manufacturer_section_inner {
		width: 90%;
		text-align: center;
	}

}

/*ーーーーーーー セクション4 事業所改修・メンテナンス ーーーーーーー*/

.Reform-Business_section {
	padding: 46px 0 81px 0;
	background-color: #EDEDED;
}

.Reform-Business_content {
	width: 93%;
	margin: 0 auto;
}

.Reform-Business_content_p {
	padding-top: 31px;
	padding-bottom: 24px;
}

.Reform-Business_content_banner {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0 auto;
	background-color: var(--white);
	border-radius: 10px;
	object-fit: cover;
}

.Reform-Business_content_banner img {
	display: block;
	width: calc(100% - 395px);
	border-radius: 10px 0 0 10px;
	object-fit: cover;
	align-self: stretch;
}

.Reform-Business_content_text {
	padding: 68px 0 30px 29px;
	width: 395px;
}

.Reform-Business_content_text_p {
	font-size: 27px;
	color: #000;
	font-weight: 600;
	padding-bottom: 56px;
	white-space: nowrap;
}

@media screen and (max-width: 1200px) {
	.Reform-Business {
		width: 90%;
		margin: 0 auto;
	}

}

@media screen and (max-width: 800px) {
	.Reform-Business_content_banner {
		flex-direction: column;
		align-items: center;
		gap: 20px;
	}

	.Reform-Business_content_banner img {
		width: 100%;
		border-radius: 10px 10px 0 0;
	}

	.Reform-Business_content_text {
		width: 100%;
		text-align: center;
		padding-top: 30px;
		padding-left: 0;
	}

	.Reform-Business_content_text_p {
		padding-bottom: 30px;
	}
}

@media screen and (max-width: 400px) {
	.Reform-Business_content_text_p {
		font-size: 22px;
	}
}

/*ーーーーーーー セクション5 施工対応エリア ーーーーーーー*/

.works-area_section {
	padding: 60px 0 78px 0;
	margin: 77px auto 62px auto;
	background-color: var(--light-blue);
	text-align: center;
}

.works-area_sub-title {
	font-size: 16px;
	color: var(--green);
	padding-bottom: 34px;
}

.works-area_title {
	padding-bottom: 18px;
}

.works-area_section_text {
	font-size: 18px;
	color: #000;
}

@media screen and (max-width: 768px) {
	.works-area_section {
		width: 100%;
	}
}

/*ーーーーーーー セクション6 不動産情報 スライダー ーーーーーーー*/
.top_section6 {
	padding-bottom: 97px;
}

/*不動産情報スライダー*/
.estate_slider-item {
	width: 360px;
	margin: 0 10px;
	position: relative;
}

.estate_slider-link {
	display: block;
	text-decoration: none;
	color: #000;
}

.estate_slider-thumb {
	height: 220px;
}

.estate_slider-thumb img {
	width: 100%;
	height: 220px;
	object-fit: cover;
}

/* カテゴリータグ（白背景・左右半円） */
.estate_slider-cat {
	position: absolute;
	top: 10px;
	left: 10px;
}

.estate_slider-cat .cat-item {
	background: #fff;
	color: var(--green);
	padding: 8px 16px;
	margin-bottom: 4px;
	border-radius: 20px;
	/* 半円 */
	display: inline-block;
	font-size: 12px;
	margin-right: 5px;
}

.estate_slider-text {
	background: #fff;
	height: 100%;
	min-height: 205px;
	padding: 21px;
}

/* タイトル（3行超えたら省略） */
.estate_slider-title {
	display: block;
	color: #000;
	margin-bottom: 21px;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.4;
	overflow: hidden;
}

/* タグ */
.estate_slider-tags {
	height: fit-content;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 5px;
	/* 上下6px・左右5px */
}

.estate_slider-tags .tag-item {
	display: inline-block;
	font-size: 12px;
	color: #8D8D8D;
	border: 1px solid #8D8D8D;
	padding: 6px 12px;
	border-radius: 6px;
	white-space: nowrap;
}

.top_section6_estate_btn {
	text-align: center;
	margin-top: 31px;
}

/*ーーーーーーー セクション7 会社情報ミドリのセクション ーーーーーーー*/

.about_green_section_bg {
	background-color: var(--light-green);
	padding: 55px 0 59px 0;
}

.about_green_section {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 34px;
}

.about_green_section_left {
	width: 57%;
}

.about_green_section_left img {
	display: block;
	width: 100%;
	max-width: 689px;
	height: 100%;
	object-fit: cover;
	border-radius: 24px;
}

.about_green_section_right {
	width: 43%;
}

.about_green_section_right h4 {
	font-size: 16px;
	color: var(--green);
	padding-bottom: 6px;
}

.about_green_section_right h2 {
	font-size: 32px;
	color: #000;
	padding-bottom: 97px;
}

.about_green_section_text {
	font-size: 16px;
	color: #000;
	padding-bottom: 48px;
}

@media screen and (max-width: 800px) {
	.about_green_section {
		flex-direction: column;
		align-items: center;
	}

	.about_green_section_left {
		width: 100%;
	}

	.about_green_section_right {
		width: 100%;
	}

	.about_green_section_right h2 {
		padding-bottom: 30px;
	}

	.about_green_section_text {
		padding-bottom: 30px;
	}
}

/*ーーーーーーー セクション8 お問い合わせ ーーーーーーー*/

.recruit-partner_btn_section {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 56px;
	padding: 80px 0 92px 0;
}

.recruit-partner_btn_item {
	width: 50%;
}

.recruit-partner_btn_item a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	max-width: 414px;
	min-width: 300px;
	border-radius: 10px;
	border: 2px solid var(--green);
}

.recruit-partner_btn_item img {
	display: block;
	width: 39%;
	max-width: 160px;
	min-width: 80px;
	height: auto;
	object-fit: cover;
	border-radius: 8px 0 0 8px;
}

.recruit-partner_text {
	display: block;
	font-size: 24px;
	color: var(--green);
	font-weight: 600;
	padding-left: 33px;
}

@media screen and (max-width: 1000px) {
	.recruit-partner_btn_section {
		width: 90%;
		margin: 0 auto;
	}
}

@media screen and (max-width: 768px) {
	.recruit-partner_btn_section {
		flex-direction: column;
		align-items: center;
		gap: 20px;
		margin: 0 auto;
	}

	.recruit-partner_btn_item {
		width: 100%;
	}

	.recruit-partner_btn_item a {
		max-width: 100%;
	}

	.recruit-partner_text {
		padding-left: 20px;
		font-size: 20px;
	}

}

/*==============================================
# リフォームページ (page-reform.php)
===============================================*/
.reform-main {
	overflow: hidden;
}

.reform_section1 {
	padding-bottom: 128px;
}

.reform_section1_item {
	width: 100%;
	max-width: 1366px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 34px;
	position: relative;
}

.reform_section1_item_left {
	width: 50%;
}

.reform_section1_item_right {
	width: 50%;
}

.reform_section1-num {
	font-size: 18px;
	color: var(--green);
	font-weight: 600;
	padding-bottom: 19px;
}

.reform_section1-title {
	font-size: 32px;
	color: #000;
	padding-bottom: 81px;
}


/* セクション1-1 */
.reform_section1-1_left {
	position: relative;
	height: 100%;
	max-height: 464px;
	padding-top: 32px;
	width: fit-content;
	margin: 0 auto;
}

.reform_section1-1_bg {
	display: block;
	height: 100%;
	position: absolute;
	top: 0;
	left: -5%;
	background-color: var(--light-yellow);
	width: 100%;
	max-width: 428px;
	z-index: -1;
}

.reform_section1_item_left img {
	display: block;
	width: 100%;
	max-width: 485px;
	height: auto;
	object-fit: cover;
	padding-bottom: 75px;
}

.reform_section1-1_right {
	align-self: center;
	padding-left: 6%;
}

/* セクション1-2 */
.reform_section1-2 {
	position: relative;
	height: 100%;
	max-height: 627px;
	width: fit-content;
	margin: 180px auto 166px auto;
}

.reform_section1-2_left {
	align-self: flex-end;
	padding-left: 6%;
}

.reform_section1-img1 {
	display: block;
	position: absolute;
	top: -63px;
	left: -83px;
	width: 59%;
	height: 376px;
	object-fit: cover;
}

.reform_section1-img1-sp {
	display: none;
}

.reform_section1-2_left p {
	margin-top: 376px;
	padding-bottom: 87px;
}

.reform_section1-2_right {
	padding-top: 150px;
	position: relative;
}

.reform_section1-2_inner {
	width: fit-content;
	margin: 0 auto;
}

.reform_section1-2_bg {
	display: block;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background-color: var(--light-yellow);
	width: 100%;
	max-width: 485px;
	z-index: -1;
}

.reform_section1-2_right img {
	display: block;
	width: 100%;
	max-width: 485px;
	height: auto;
	object-fit: cover;
	margin: 0 auto;
	padding-bottom: 87px;
}

.reform_section1-2_title {
	position: relative;
}

.reform_section1-2_title span {
	position: absolute;
	top: 20px;
	left: 100%;
	width: 200%;
	height: 1px;
	margin-left: 28px;
	background-color: var(--green);
}

/* セクション1-3 */
.reform_section1-3_left {
	position: relative;
	height: 100%;
	max-height: 647px;
	padding-top: 171px;
	width: fit-content;
	margin: 0 auto;
}

.reform_section1-img2 {
	display: block;
	position: absolute;
	top: -63px;
	right: -83px;
	width: 59%;
	height: 376px;
	object-fit: cover;
}

.reform_section1-3_bg {
	display: block;
	height: 100%;
	position: absolute;
	top: 0;
	left: -5%;
	background-color: var(--light-yellow);
	width: 100%;
	max-width: 428px;
	z-index: -1;
}

.reform_section1-3_left img {
	display: block;
	width: 100%;
	max-width: 485px;
	height: auto;
	object-fit: cover;
	padding-bottom: 78px;
}

.reform_section1-3_right {
	position: relative;
	align-self: flex-end;
}

.reform_section1-3_right p {
	width: 91%;
	margin: 0 auto;
	padding-bottom: 78px;
}

.reform_section1-3_title {
	position: relative;
}

.reform_section1-3_title span {
	position: absolute;
	top: 20px;
	right: 100%;
	width: 200%;
	height: 1px;
	margin-right: 28px;
	background-color: var(--green);
}

@media screen and (max-width: 800px) {
	.reform_section1_item {
		flex-direction: column;
		align-items: center;
	}

	.reform_section1-1 {
		margin-bottom: 100px;
	}

	.reform_section1-2 {
		flex-direction: column-reverse;
		margin-bottom: 100px;
	}

	.reform_section1-3 {
		margin-bottom: 100px;
	}

	.reform_section1_item_left {
		width: 100%;
	}

	.reform_section1_item_right {
		width: 100%;
	}

	.reform_section1-img1 {
		display: none;
	}

	.reform_section1-img1-sp,
	.reform_section1-img2 {
		display: block;
		width: 100%;
		height: auto;
		right: 0;
		top: 0;
		object-fit: cover;
		position: relative;
		margin: 0 auto 100px auto;
	}

	.reform_section1-1_left img {
		padding-bottom: 0;
	}

	.reform_section1-2_left {
		padding-left: 0;
	}

	.reform_section1-2_left p {
		padding-bottom: 0;
		margin-top: 0;
	}

	.reform_section1-2_right {
		padding-top: 0;
	}

	.reform_section1-2_inner {
		margin: 0 auto;
	}

	.reform_section1-2_right img {
		padding-bottom: 0;
	}

	.reform_section1-3_left {
		padding-top: 0;
	}

	.reform_section1-3_left p {
		padding-bottom: 0;
		margin-top: 0;
	}

	.reform_section1-3_right p {
		padding-bottom: 0;
	}

	.reform_section1-3_left img {
		padding-bottom: 0;
	}
}

@media screen and (max-width: 400px) {
	.reform_section1-title {
		padding-bottom: 20px;
	}

	.reform_section1-2_inner {
		margin-left: 0;
	}
}

/*ーーーーーーー セクション2 施工事例 　TOPと同じ ーーーーーーー*/
/*ーーーーーーー セクション3 目的別に施工事例を探す 　TOPと同じ ーーーーーーー*/
/*ーーーーーーー セクション4 施工対応エリア 　TOPと同じ ーーーーーーー*/


/*ーーーーーーー セクション5 株式会社カナダのお約束 ーーーーーーー*/
.reform_section5 {
	padding: 68px 0;
}

.reform_section5_top,
.reform_section5_bottom {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 60px;
	margin-bottom: 60px;
}

.reform_section5_item {
	width: 100%;
	max-width: 360px;
}

.reform_section5_item img {
	width: 100%;
	height: 230px;
	object-fit: cover;
}

.reform_section5_item h4 {
	color: var(--green);
	font-size: 18px;
	padding: 24px 0;
}

.reform_section5_item p {
	font-size: 16px;
	line-height: 1.7;
}

@media screen and (max-width: 1364px) {

	.reform_section5_top,
	.reform_section5_bottom {
		gap: 40px;
	}

	.reform_section5_item {
		max-width: 320px;
	}
}

@media screen and (max-width: 768px) {
	.reform_section5_item {
		margin: 0 auto;
	}
}

.reform_section5_btn {
	text-align: center;
}


/*==============================================
# 事業所改修・メンテナンス事業ページ (page-reformbusiness.php)
===============================================*/
/*ーーーーーーー ヒーロー ーーーーーーー*/
.reform-business_hero_img img {
	object-position: left;
}

/*ーーーーーーー セクション1 事業を止めないための最善策を ーーーーーーー*/
.reform-business_section1 {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-bottom: 90px;
}

.reform-business_section1_left,
.reform-business_section1_right {
	width: 50%;
}

.reform-business_section1_title {
	padding-bottom: 34px;
}

.reform-business_section1_bg {
	display: block;
	width: 57%;
	height: 118px;
	background-color: var(--light-yellow);
}

@media screen and (max-width: 800px) {
	.reform-business_section1 {
		flex-direction: column;
		align-items: center;
	}

	.reform-business_section1_left,
	.reform-business_section1_right {
		width: 100%;
	}

	.reform-business_section1_title {
		padding-bottom: 20px;
	}
}

/*ーーーーーーー セクション2 こんなお困りごとありませんか ーーーーーーー*/
.reform-business_section2 {
	width: 57%;
	max-width: 778px;
	margin: 0 auto;
	background-color: var(--light-yellow);
	padding: 68px 0;
}

.reform-business_section2_content {
	width: fit-content;
	padding: 48px 20px 58px 20px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: stretch;
}

.reform-business_section2_title {
	padding-bottom: 36px;
}

.reform-business_section2_content_item {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding-bottom: 15px;
}

.reform-business_section2_content_item i {
	flex-shrink: 0;
	line-height: 1;
	font-size: 24px;
	color: var(--green);
}

.reform-business_section2_green_text {
	color: var(--green);
	font-size: 40px;
	font-weight: 600;
	padding-top: 33px;
}

@media screen and (max-width: 1000px) {
	.reform-business_section2 {
		width: 90%;
		padding: 40px 0;
	}
}

@media screen and (max-width: 400px) {
	.reform-business_section2_title {
		text-align: center;
	}

	.reform-business_section2_green_text {
		font-size: 35px;
		white-space: nowrap;
	}

}

/*ーーーーーーー セクション3 アフターケア ーーーーーーー*/
.reform-business_section3 {
	width: 100%;
	max-width: 1366px;
	margin: 71px auto 117px auto;
}

.reform-business_section3_container {
	height: 610px;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.reform-business_section3_left {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 369px;
	height: 483px;
	object-fit: cover;
	z-index: -1;
}

.reform-business_section3_right {
	position: absolute;
	top: 0;
	right: 0;
	width: 354px;
	height: 499px;
	object-fit: cover;
	z-index: -1;
}

.reform-business_section3_center {
	height: fit-content;
	width: 50%;
	margin: 68px auto;
	text-align: center;
	background-color: var(--white);
	padding: 68px 20px;
}

.reform-business_section3_title {
	font-size: 22px;
	font-weight: 600;
	padding-bottom: 48px;
}

@media screen and (max-width: 1000px) {
	.reform-business_section3_center {
		width: 60%;
		margin: 0 auto;
	}
}

@media screen and (max-width: 768px) {
	.reform-business_section3 {
		margin: 40px auto 80px auto;
	}

	.reform-business_section3_container {
		height: fit-content;
	}

	.reform-business_section3_left,
	.reform-business_section3_right {
		position: relative;
		width: 100%;
		height: 300px;
		object-fit: cover;
		z-index: 1;
		object-position: left center;
	}

	.reform-business_section3_center {
		width: 85%;
		margin: 0 auto;
		padding: 40px 0;
	}

	.reform-business_section3_title {
		padding-bottom: 20px;
		font-size: 16px;
	}

	.reform-business_section3_text {
		font-size: 12px;
	}
}

/*ーーーーーーー セクション4 施工事例も多数 ーーーーーーー*/
.reform-business_section4 {
	width: 100%;
	max-width: 1366px;
	margin: 0 auto;
	padding-bottom: 157px;
}

.reform-business_section4_container {
	text-align: center;
}

.reform-business_section4_title {
	font-size: 40px;
	color: var(--green);
	font-weight: 600;
	padding-bottom: 38px;
}

.reform-business_section4_text {
	font-size: 16px;
	color: #000;
	padding-bottom: 48px;
}

.reform-business_section4_slider {
	width: 100%;
	max-width: 1366px;
	margin: 0 auto;
}

.reform-business_section4_slider_item {
	width: calc(100% / 5 - 20px);
	height: 292px;
	padding: 0 10px;
}

.reform-business_section4_slider_item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 768px) {
	.reform-business_section4_slider .slick-slide {
		width: auto;
		height: 200px;
		object-fit: cover;
		margin: 0 auto;
	}
}

/*ーーーーーーー セクション5 施工事例 　TOPと同じ ーーーーーーー*/
/*ーーーーーーー セクション6 施工対応エリア 　TOPと同じ ーーーーーーー*/
/*ーーーーーーー セクション7 会社情報 　TOPと同じ ーーーーーーー*/


/*==============================================
# 会社案内ページ (page-about.php)
===============================================*/
/*ーーーーーーー セクション1 居心地の良い空間をいつまでも ーーーーーーー*/
.about_section1 {
	background-color: var(--light-yellow);
	padding: 72px 0 98px 0;
}

.about_section1_container {
	width: 100%;
	max-width: 663px;
	padding: 0 20px;
	margin: 0 auto;
}

.about_section1_title {
	color: var(--green);
	font-weight: 600;
	padding-bottom: 64px;
	text-align: center;
}
/*ーーーーーーー アクセス ーーーーーーー*/
.access-content {
	padding: 105px 0 153px 0;
}
.access-content-section1 {
	display: block;
	padding: 46px 0 81px 0;
	background-color: var(--light-yellow);
}
.access-content-section1-title {
	padding-bottom: 64px;
	text-align: center;
	color: var(--green);
}
.access-main {
	width: 100%;
	max-width: 921px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 50px;
}
.access-main-left {
	width: 50%;
}
.access-main-right {
	width: 50%;
}
.access-main-left-title {
	width: 120px;
	font-weight: 600;
}

.access-main-item {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 10px;
	padding: 20px 0;
	border-bottom: 1px solid #707070;
}

.access-main-left-text {
	font-size: 16px;
}
.access-main-left-time {
	font-size: 14px;
}
.access-main-item-tel a {
	display: inline-block;
	font-size: 18px;
	color: var(--green);
	text-decoration: none;
	font-weight: 600;
	margin-bottom: 10px;
}	
.access-main-item-tel a:hover {
	opacity: 0.7;
}
 .access-main-item-contact {
	justify-content: center;
}
.access-main-left-contact {
	font-size: 16px;
	font-weight: 600;
	display: inline-block;
	color: var(--green);
	border: 2px solid var(--green);
	text-decoration: none;
	padding: 8px 16px;
}
.access-main-left-contact:hover {
	color: var(--white);
	background-color: var(--green);
	padding: 10px 20px;
}

.access-main-item:last-child {
	border-bottom: none;
}
.access-main-item-tel {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-bottom: 20px;
}
.access-main-right iframe {
	width: 100%;
	height: 450px;
}

@media screen and (max-width: 1000px) {
	.access-main {
		width: 90%;
		flex-direction: column;
	}
	.access-main-left {
		width: 100%;
	}
	.access-main-right {
		width: 100%;
	}
	.access-main-right iframe {
		height: 350px;
	}
}

/*ーーーーーーー セクション2 会社概要 ーーーーーーー*/
.about_section2 {
	padding: 105px 0 153px 0;
}

.about_section2_table table {
	width: 100%;
	max-width: 921px;
	margin: 0 auto;
	border-collapse: collapse;
	font-size: 16px;
	line-height: 1.7;
	border: 1px solid #707070;
}

.about_section2_table th {
	width: 20%;
	text-align: left;
	vertical-align: top;
	background: #FFE7A7;
	padding: 12px 16px;
	font-weight: bold;
	border: 1px solid #707070;
}

.about_section2_table td {
	padding: 12px 16px;
	border: 1px solid #707070;
}

.about_section2_table a {
	color: var(--green);
	text-decoration: none;
}

.maker-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	/* 5つずつ縦に並べる */
	gap: 8px 10px;
}

.maker-grid span {
	display: block;
}



@media (max-width: 1000px) {
	.maker-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.about_section2_table table {
		border: none;
	}

	.about_section2_table tr {
		display: block;
		margin-bottom: 15px;
		border: 1px solid #707070;
	}

	.about_section2_table th {
		display: block;
		width: 100%;
		background: #FFE7A7;
		border-bottom: 1px solid #707070;
	}

	.about_section2_table td {
		display: block;
		width: 100%;
	}

	.maker-grid {
		grid-template-columns: repeat(1, 1fr);
	}
}

/*ーーーーーーー セクション3 住宅リフォーム ーーーーーーー*/
.Reform_green_section {
	padding: 46px 0 81px 0;
	background-color: var(--light-green);
}

.Reform_green_content {
	width: 93%;
	margin: 0 auto;
}

.Reform_green_content_p {
	padding-bottom: 24px;
	text-align: center;
}

.Reform_green_content_banner {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0 auto;
	background-color: var(--white);
	border-radius: 10px;
	object-fit: cover;
}

.Reform_green_content_banner img {
	display: block;
	width: calc(100% - 395px);
	border-radius: 10px 0 0 10px;
	object-fit: cover;
	align-self: stretch;
}

.Reform_green_content_text {
	padding: 31px 0 29px 29px;
	width: 395px;
}

.Reform_green_content_text_title {
	font-size: 27px;
	color: #000;
	font-weight: 600;
	white-space: nowrap;
}

.Reform_green_content_text_p {
	font-size: 16px;
	color: #000;
	padding: 31px 20px 29px 0;
}

@media screen and (max-width: 1200px) {
	.Reform {
		width: 90%;
		margin: 0 auto;
	}

}

@media screen and (max-width: 800px) {
	.Reform_green_content_banner {
		flex-direction: column;
		align-items: center;
		gap: 20px;
	}

	.Reform_green_content_banner img {
		width: 100%;
		border-radius: 10px 10px 0 0;
	}

	.Reform_green_content_text {
		width: 100%;
		text-align: center;
		padding-top: 30px;
		padding-left: 0;
	}

	.Reform_green_content_text_title {
		padding-bottom: 0;
	}

	.Reform_green_content_text_p {
		padding: 20px;
	}
}

@media screen and (max-width: 400px) {
	.Reform_green_content_text_title {
		font-size: 22px;
	}
}

/*==============================================
# FAQページ (page-faq.php)
===============================================*/
.faq_main {
	overflow: hidden;
}

/*ーーーーーーー セクション1 カテゴリー ーーーーーーー*/
.faq_section1 {
	padding: 55px 0;
	background-color: var(--yellow);
	border-radius: 29px;
}

.faq_section1_content {
	width: 95%;
	margin: 0 auto;
}

.faq_section1_content ul {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 26px;
}

.faq_section1_content ul li a {
	display: block;
	color: var(--green);
	background-color: var(--white);
	text-align: center;
	font-size: clamp(20px, 2vw, 27px);
	font-weight: 600;
	text-decoration: none;
	padding: 10px 16px;
}

.faq_section1_content ul li a:hover {
	color: var(--white);
	background-color: var(--green);
	padding: 10px 20px;
}

@media screen and (max-width: 1000px) {
	.faq_section1 {
		padding: 30px 0;
	}

	.faq_section1_content ul {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}
}

@media screen and (max-width: 768px) {
	.faq_section1_content ul {
		grid-template-columns: repeat(1, 1fr);
	}
}

/*ーーーーーーー セクション2-5 Q&A ーーーーーーー*/
.q-and-a_section {
	padding: 54px 0 65px 0;
	position: relative;
}

.q-and-a_title {
	color: #000;
	font-weight: 600;
	padding-bottom: 40px;
	text-align: center;
}

/* 全体の余白 */
.faq {
	width: 100%;
	max-width: 768px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* Q（押せる部分） */
.faq-question {
	width: 100%;
	text-align: left;
	background: #fff;
	border: 2px solid var(--green);
	/* ミドリの線 */
	padding: 28px;
	display: flex;
	align-items: center;
	gap: 12px;
	cursor: pointer;
}

/* A は初期状態は非表示 */
.faq-answer {
	display: none;
	/* ← これが効くように修正！ */
	border: 2px solid var(--yellow);
	background-color: var(--white);
	border-top: none;
	/* Q の枠線と繋がる */
	padding: 28px;
	flex-direction: row;
	gap: 12px;
}

/* アイコン（36×32） */
.faq-icon {
	width: 36px;
	height: 32px;
	flex-shrink: 0;
	/* テキストが下に入らない */
}

/* テキスト */
.faq-text {
	font-size: 16px;
	flex: 1;
	line-height: 1.6;
}

/*ーーーーーーー 背景 ーーーーーーー*/
.faq_section2_bg-1 img {
	position: absolute;
	top: 19%;
	right: -83px;
	width: 100%;
	max-width: 183px;
	height: auto;
	z-index: -1;
	object-fit: cover;
}

.faq_section2_bg-2 {
	background-color: var(--light-yellow);
	position: absolute;
	top: 50%;
	left: -83px;
	width: 16%;
	max-width: 216px;
	height: 33%;
	z-index: -1;
	transform: translateY(-50%);
	border-radius: 0 40px 40px 0;
}

.faq_section2_bg-3 {
	background-color: var(--light-yellow);
	position: absolute;
	top: 50%;
	right: -83px;
	width: 16%;
	max-width: 216px;
	height: 33%;
	z-index: -1;
	transform: translateY(-50%);
	border-radius: 40px 0 0 40px;
}

.faq_section2_bg-4 {
	background-color: var(--light-yellow);
	position: absolute;
	top: 0;
	left: -83px;
	width: 16%;
	max-width: 216px;
	height: 33%;
	z-index: -1;
	transform: translateY(-50%);
	border-radius: 0 40px 40px 0;
}

.faq_section2_bg-5 img {
	position: absolute;
	top: 0;
	left: -83px;
	width: 100%;
	max-width: 183px;
	height: auto;
	z-index: -1;
	object-fit: cover;
}

/*==============================================
# 協力会社募集ページ (page-partner.php)
===============================================*/
/*ーーーーーーー セクション1 協力会社募集 ーーーーーーー*/
.partner_section1 {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 0;
	padding: 76px 0 55px 0;
}

.partner_section1_left {
	width: 50%;
	align-self: center;
	text-align: left;
	padding-right: 2%;
}

.partner_section1_right {
	width: 50%;
}

.partner_section1_title {
	font-size: clamp(24px, 2.3vw, 32px);
	padding-bottom: 40px;
}

.partner_section1_btn {
	margin-top: 23px;
	text-align: left;
}

.partner_section1_right img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 1200px) {
	.partner_section1 {
		flex-direction: column-reverse;
		align-items: center;
		gap: 20px;
		padding: 50px 0;
	}

	.partner_section1_left {
		width: 100%;
	}

	.partner_section1_right {
		width: 100%;
	}
}

/*ーーーーーーー セクション2 募集要項 ーーーーーーー*/
.partner_section2 {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 0;
	padding: 0 0 47px 0;
}

.partner_section2_left {
	width: 42%;
}

.partner_section2_right {
	width: 58%;
	background-color: var(--light-yellow);
	padding: 58px 36px;
}

.partner_section2_left img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.partner_section2_item {
	font-size: 24px;
	color: var(--green);
	font-weight: 600;
	padding-bottom: 24px;
}

.partner_section2_text {
	padding-bottom: 63px;
}

.partner_section2_text_dot_list {
	display: flex;
	align-items: center;
	padding-bottom: 8px;
}

.partner_section2_text_dot {
	color: #000;
	font-size: 16px;
	flex-shrink: 0;
}

@media screen and (max-width: 1000px) {
	.partner_section2 {
		flex-direction: column;
		align-items: center;
		gap: 20px;
		padding: 0 0 47px 0;
	}

	.partner_section2_left {
		width: 100%;
	}

	.partner_section2_right {
		width: 100%;
		padding: 58px 36px;
	}

	.partner_section2_left img {
		max-height: 300px;
	}
}

@media screen and (max-width: 400px) {
	.partner_section2_right {
		padding: 30px 20px;
	}
}

/*ーーーーーーー セクション3 安心です ーーーーーーー*/
.partner_section3 {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 47px 0 178px 0;
}

.partner_section3_title {
	color: var(--green);
	padding-bottom: 40px;
}

.partner_section3_text {
	line-height: 1.7;
	padding-bottom: 55px;
	text-align: center;
	white-space: nowrap;
}

.partner_section3_btn {
	text-align: center;
}


/*==============================================
# 採用情報ページ (page-recruit.php)
===============================================*/
/*ーーーーーーー セクション1 採用情報 ーーーーーーー*/
.recruit_section1 {
	padding: 76px 0 55px 0;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 0;
}

.recruit_section1_left {
	width: 50%;
	padding-right: 2%;
}

.recruit_section1_right {
	width: 50%;
}

.recruit_section1_left_title {
	color: var(--green);
	padding-bottom: 40px;
}

.recruit_section1_text {
	line-height: 1.7;
}

.recruit_section1_right img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media screen and (max-width: 800px) {
	.recruit_section1 {
		flex-direction: column;
		gap: 30px;
		padding-top: 50px;
	}

	.recruit_section1_left {
		width: 100%;
	}

	.recruit_section1_right {
		width: 100%;
	}
}

/*ーーーーーーー セクション2 募集職種 ーーーーーーー*/

.recruit_section2 {
	padding: 92px 20px 85px 20px;
	background-color: var(--light-yellow);
	margin-bottom: 60px;
}

.recruit_section2_title {
	text-align: center;
	padding-bottom: 77px;
}

.recruit_section2_items {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
}

.recruit_section2_item {
	color: var(--green);
	font-size: 24px;
	font-weight: 600;
	padding-bottom: 15px;
}

.recruit_section2_text {
	line-height: 1.7;
	padding-bottom: 40px;
}

@media screen and (max-width: 768px) {
	.recruit_section2_title {
		padding-bottom: 40px;
	}
}

/*ーーーーーーー セクション3 カナダの特徴 ーーーーーーー*/
.recruit_section3 {
	padding: 57px 0 143px 0;
	background-color: var(--green);
}

.recruit_section3_title {
	text-align: center;
	padding-bottom: 95px;
	color: var(--yellow);
}

.recruit_section3_items {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
	gap: 80px 45px;
	max-width: 1200px;
	margin: 0 auto;
}

.recruit_section3_item {
	width: 100%;
	max-width: 365px;
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
}

.recruit_section3_item_title {
	width: 100%;
	min-height: 86px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	color: var(--white);
	font-weight: 600;
	line-height: 1.2;
	padding-bottom: 21px;
}

.recruit_section3_item_text {
	width: 100%;
	min-height: 91px;
	background-color: var(--white);
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 0 20px;
	line-height: 1.7;
}

@media screen and (max-width: 1320px) {
	.recruit_section3_items {
		gap: 40px 20px;
	}
}

@media screen and (max-width: 1200px) {
	.recruit_section3_items {
		justify-content: center;
		grid-template-columns: repeat(2, 1fr);
	}

	.recruit_section3_item {
		margin: 0 auto;
	}
}

@media screen and (max-width: 800px) {
	.recruit_section3_title {
		padding-bottom: 40px;
	}

	.recruit_section3_items {
		grid-template-columns: repeat(1, 1fr);
	}

	.recruit_section3_item {
		padding-bottom: 30px;
	}

	.recruit_section3_item_title {
		padding-bottom: 5px;
	}
}

/*ーーーーーーー セクション4 福利厚生 ーーーーーーー*/
.recruit_section4 {
	padding: 91px 0 103px 0;
}

.recruit_section4_title {
	text-align: center;
	padding-bottom: 44px;
}

.recruit_section4_text {
	text-align: center;
	padding-bottom: 20px;
}

.recruit_section4_items {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 40px 20px;
	border-radius: 39px;
	border: 1px solid var(--green);
}

.recruit_section4_item {
	width: 100%;
	max-width: 542px;
	margin: 0 auto;
	padding: 20px 0;
}

.recruit_section4_item_title {
	display: inline-block;
	font-size: 24px;
	color: var(--white);
	padding: 2px 12px;
	background-color: var(--green);
	margin-bottom: 16px;
}

.recruit_section4_item_list {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 24px;
}

.recruit_section4_item_list p {
	font-size: 24px;
	font-weight: 600;
}


.recruit_section4_item_list_kyuka {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
}

.recruit_section4_btn {
	text-align: center;
	padding-top: 105px;
}

@media screen and (max-width: 768px) {
	.recruit_section4_item {
		max-width: 400px;
	}

	.recruit_section4_item_list {
		gap: 8px;
	}

	.recruit_section4_item_title {
		font-size: 20px;
	}

	.recruit_section4_item_list_kyuka {
		grid-template-columns: repeat(1, 1fr);
	}

	.recruit_section4_item_list {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}
}

/*==============================================
# お問い合わせページ (page-contact.php)
===============================================*/

.contact_section1 {
	text-align: center;
	padding-bottom: 128px;
}

.contact_section1_title {
	padding-bottom: 16px;
}

.contact_section1_text {
	padding-bottom: 85px;
}

.contact_section1_form {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	background-color: var(--light-yellow);
	padding: 83px 20px;
}

.contact-form-section .wpcf7-form {
	width: 100%;
	max-width: 713px;
	margin: 0 auto;
}

.contact-form-section .wpcf7-form table {
	border-collapse: separate;
	border-spacing: 0 18px;
	width: 100%;
	margin-bottom: 84px;
}

.contact-form-section .wpcf7-form td p {
	width: 100%;
	max-width: 713px;
	margin: 0 auto;
}

.contact-form-section .wpcf7-form td p input {
	width: 100%;
	padding: 10px 16px;
	font-size: 16px;
}

.contact-form-section .wpcf7-form td {
	width: 74%;
}

/*必須・任意*/
.contact-form-section .wpcf7-form th {
	text-align: left;
}

.haveto {
	font-size: 10px;
	color: var(--white);
	background-color: var(--green);
	padding: 5px 9px;
	margin-right: 10px;
}

.any {
	font-size: 10px;
	color: var(--white);
	background-color: #8D8D8D;
	padding: 5px 9px;
	margin-right: 10px;
}

/*チェックボックス見た目*/
.contact-form-section .wpcf7-form .q-type {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 18px;
	justify-content: flex-start;
}

.contact-form-section .wpcf7-form .q-type .wpcf7-list-item label {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
}

.contact-form-section .wpcf7-form td p .q-type .wpcf7-list-item label input {
	width: fit-content;
}

.wpcf7-list-item-label {
	width: auto;
}

/*テキストエリア*/
.contact-form-section .wpcf7-form td textarea {
	width: 100%;
	padding: 10px 16px;
	font-size: 16px;
}
.contact-form-section .wpcf7-form td p input.wpcf7-file {
	padding-bottom: 2px;
}
.contact-note {
	font-size: 14px;
	color: #797979;
	text-align: left;
	padding: 0 16px;
}
/*送信ボタン*/
.contact-form-section .wpcf7-form p input[type="submit"] {
	width: 287px;
	margin: 0 auto;
	background-color: var(--green);
	padding: 26px 0;
	color: var(--white);
	font-weight: 600;
	margin-top: 52px;
	font-size: 16px;
}

@media screen and (max-width: 800px) {
	.contact-form-section .wpcf7-form table tbody {
    display: block;
    width: 100%;
    margin: 0 auto;
  }

	.contact-form-section .wpcf7-form .q-type {
		grid-template-columns: repeat(1, 1fr);
	}

	/* テーブル自体をブロックにする */
	.contact-form-section .wpcf7-form table,
	.contact-form-section .wpcf7-form tr {
		display: block;
		width: 100%;
		margin: 0 auto;
	}

	/* th と td をブロックにする */
	.contact-form-section .wpcf7-form th,
	.contact-form-section .wpcf7-form td {
		display: block;
		width: 100%;
		text-align: left;
		/* 左揃え */
	}

	/* th の余白を調整 */
	.contact-form-section .wpcf7-form th {
		width: 100%;
		margin-bottom: 5px;
		font-weight: bold;
	}

	/* td の下の余白 */
	.contact-form-section .wpcf7-form td {
		width: 100%;
		margin-bottom: 15px;
	}

}

@media screen and (max-width: 400px) {
	.contact-form-section .wpcf7-form p input[type="submit"] {
		width: 100%;
	}
}

/*==============================================
# プライバシーポリシーページ (page-privacy-policy.php)
===============================================*/

.privacy-policy-main {
	padding: 76px 20px;
	margin: 30px auto;
	background-color: var(--light-yellow);
}

.privacy-policy-section_title {
	text-align: center;
}

.privacy-policy-section {
	padding: 25px 0;
}

.privacy-policy-title {
	font-size: 24px;
	padding-bottom: 20px;
	color: var(--green);
}

.privacy-policy-section5_text {
	padding-bottom: 20px;
}

.privacy-policy-list {
	padding: 20px 0 20px 40px;
}

.privacy-policy-list li {
	padding-bottom: 10px;
}

.privacy-policy-section10_text a {
	color: var(--green);
	font-weight: 600;
}

@media screen and (max-width: 768px) {
	.privacy-policy-list {
		padding: 20px 0 20px 20px;
	}
}

/*==============================================
# 全てのアーカイブページ (通常投稿・カスタム投稿アーカイブ、カテゴリーやタグのアーカイブページ)
===============================================*/
.archive-main {
	padding-bottom: 76px;
}

.archive-title {
	padding-bottom: 40px;
}

/* ▼ 投稿一覧（PC → 3列12件 / SP → 2列6件） */
.archive-main .archive-post-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 35px;
  margin-bottom: 60px;
}

.archive-main .archive-item {
	width: 100%;
	max-width: 360px;
	margin: 0 auto;
	height: 100%;
	min-height: 205px;
  display: block;
  text-decoration: none;
  color: inherit;
	position: relative;
}

.archive-main .archive-thumb img {
  width: 100%;
	max-width: 360px;
  height: 240px;
	object-fit: cover;
}

.archive-main .archive-cat {
	position: absolute;
	top: 10px;
	left: 10px;
}

.archive-main .cat-item {
	background: #fff;
	color: var(--green);
	padding: 8px 16px;
	margin-bottom: 4px;
	border-radius: 20px;
	/* 半円 */
	display: inline-block;
	font-size: 12px;
	margin-right: 5px;
}

.archive-main .archive-text {
	overflow: hidden;
	width: 100%;
	max-width: 360px;
}
.archive-main .archive-title-text {
	display: block;
	color: #000;
	margin: 21px;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.4;
	overflow: hidden;
}



.archive-main .archive-tags {
	height: fit-content;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 5px;
}

.archive-main .tag-item {
	display: inline-block;
	font-size: 12px;
	color: #8D8D8D;
	border: 1px solid #8D8D8D;
	padding: 6px 12px;
	border-radius: 6px;
	white-space: nowrap;
}


@media screen and (max-width: 1000px) {
  .archive-main .archive-post-list {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 600px) {
	.archive-main .archive-post-list {
		grid-template-columns: repeat(1, 1fr);
	}
}


.archive-main .pagination ul {
  display: flex;
  gap: 8px;
  justify-content: center;
  list-style: none;
  padding: 0;
}

.archive-main .pagination li a,
.archive-main .pagination li span {
  display: block;
  padding: 6px 12px;
  border: 1px solid var(--green);
  color: var(--green);
  text-decoration: none;
}

.archive-main .pagination li span.current {
  background: var(--green);
  color: #fff;
}



/*-------- ▼ カテゴリーやタグのアーカイブページ 絞り込みバー▼ --------*/
.tax-block {
  margin-bottom: 30px;
	padding-bottom: 15px;
}

.tags_tax_block {
	background-color: var(--light-yellow);
	border-radius: 4px;
}

.cats_tax_block {
	background-color: var(--light-green);
	border-radius: 4px;
	margin-bottom: 80px;
}
/* 横バー */
.tax-toggle-bar_tag {
  width: 100%;
  padding: 12px 16px;
  background: var(--yellow);
	color: var(--white);
	font-weight: 600;
  cursor: pointer;
  border-radius: 4px;
  text-align: center;
  user-select: none;
  transition: .2s;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.tax-toggle-bar_tag i,
.tax-toggle-bar_cat i {
	display: block;
	font-size: 16px;
}

.tax-toggle-bar_cat {
  width: 100%;
  padding: 12px 16px;
  background: var(--green);
	color: var(--white);
	font-weight: 600;
  cursor: pointer;
  border-radius: 4px;
  text-align: center;
  user-select: none;
  transition: .2s;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.tax-toggle-bar_tag:hover,
.tax-toggle-bar_cat:hover {
  opacity: 0.8;
}

/* --- 閉じた状態（1行だけ） --- */
.tax-list-wrap {
  max-height: 42px; /* 1行分の高さに固定（環境に応じて調整） */
  overflow: hidden;
  margin: 15px 20px 0 20px;
}

/* 閉じた状態のリスト*/
.tax-list {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px 10px;
  white-space: nowrap;
}

/* --- 展開時（flex-wrap ON、全表示） --- */
.tax-list-wrap.open {
  max-height: none;
  overflow: visible;
}

.tax-list-wrap.open .tax-list {
  flex-wrap: wrap;
  overflow: visible;
  white-space: normal;
}


.tax-list li a {
  background: var(--white);
  text-decoration: none;
  font-size: .9rem;
  display: inline-block;
}

.tax-list.tags_btn li a {
	padding: 6px 12px;
	color: #8D8D8D;
	border: 1px solid #8D8D8D;
	border-radius: 6px;
}

.tax-list.cats_btn li a {
	padding: 6px 20px;
	border: 1px solid var(--green);
	color: var(--green);
	border-radius: 100px;
}
.tax-list li a:hover {
  opacity: 0.8;
}

@media (max-width: 768px) {
  .tax-list-wrap {
    max-height: 140px;
  }
}

/*-------- ▼ カテゴリーやタグのアーカイブページ カスタム投稿アーカイブページ ▼ --------*/
.works-archive-main,
.real-estate-archive-main {
	padding: 0 ;
}

.archive-term-description {
	padding-top: 15px;
}
.tax-archive-section {
	padding-bottom: 100px;
}

.gallery_tax_block {
	margin-top: 40px;
	margin-bottom: 80px;
}

/*==============================================
# 普通の投稿・カスタム投稿の単体ページ (single.php)
===============================================*/
/* 全体 */
.single-main {
	padding: 60px 20px;
}

.single-main-inner {
	max-width: 1000px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

/* タイトル */

.single-main-title {
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 10px;
	text-align: left;
}

.single-main-date {
	text-align: right;
	font-size: 14px;
	color: #666;
	margin-bottom: 10px;
}


/* アイキャッチ */
.single-main-eyecatch img {
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 8px;
}

/* 本文 */
.single-main-content {
	width: 100%;
}
.single-main-content h1,
.single-main-content h2,
.single-main-content h3,
.single-main-content h4,
.single-main-content h5,
.single-main-content h6,
.single-main-content p {
    width: 100%;           /* 親幅に収まる */
    word-break: break-word; /* 長い単語も折り返す */
    overflow-wrap: break-word;
    margin-bottom: 1em;
}
.single-main-content h1 {
	font-size: 32px;
	line-height: 1.4;
	margin-bottom: 1em;
}

.single-main-content h2 {
	font-size: 26px;
	line-height: 1.5;
	margin-bottom: 0.8em;
}

.single-main-content h3 {
	font-size: 22px;
	line-height: 1.5;
	margin-bottom: 0.6em;
}

.single-main-content h4 {
	font-size: 18px;
	line-height: 1.5;
	margin-bottom: 0.4em;
}

.single-main-content h5 {
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 0.2em;
}


.single-main-content h6 {
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 0.1em;
}


/* 必要に応じてh4〜h6も設定 */

@media screen and (max-width: 768px) {
	.single-main-content h1 { font-size: 24px; }
	.single-main-content h2 { font-size: 20px; }
	.single-main-content h3 { font-size: 18px; }
	.single-main-content h4 { font-size: 16px; }
	.single-main-content h5 { font-size: 14px; }
	.single-main-content h6 { font-size: 12px; }
}

.single-main-content ul,
.single-main-content ol {
    list-style: disc; /* ul は通常のドット、ol は数字 */
    padding-left: 1.5em; /* インデント確保 */
    margin-bottom: 1em;
}
.single-main-content .wp-block-button__link {
	background: var(--green);
	color: var(--white);
	font-weight: 600;
}	

.single-main-content ol {
    list-style-type: decimal; /* 数字リスト */
}



/* フッター */
.single-main-footer {
	border-top: 1px solid #ddd;
	padding-top: 20px;
	font-size: 14px;
	color: #999;
	text-align: right;
}
.single-main-footer .cat-item a {
	background: #fff;
	color: var(--green);
	padding: 8px 16px;
	margin-bottom: 12px;
	border-radius: 20px;
	display: inline-block;
	font-size: 12px;
	margin-right: 5px;
	border: 1px solid var(--green);
}
.single-main-footer .tag-item a {
	display: inline-block;
	font-size: 12px;
	color: #8D8D8D;
	border: 1px solid #8D8D8D;
	padding: 6px 12px;
	border-radius: 6px;
	white-space: nowrap;
}
/* レスポンシブ */
@media screen and (max-width: 768px) {
	.single-main-title {
			font-size: 26px;
	}
	.single-main-text {
			font-size: 15px;
	}
}
