@charset "utf-8";
/* CSS Document */
/**********************************************************/
.sub_header {
	width: 100%;
	height: 280px;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
	overflow: hidden;
	background-image: url(../images/pattern.webp);
	background-color: rgba(255, 255, 255, 0.1);
	color: #FFF;
	margin: 1.5rem 0;
}
.sub_header:before {
	content:"";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 360px;
	display: block;
	background: url(../images/header_bg03.png);
	background-size: cover;
	background-position: top center;
}
.sub_header_title {
	display: inline-block;
	color: #fff;
	padding: 0.8em 4rem;
	font-size: 2em;
	font-weight: 700;
	letter-spacing: 0.2em;
	margin-bottom: 1rem;
	text-shadow: 2px 2px #ff9a01;
}
/****************************************************/
.reform_info_wrapper {
	width: 96%;
	margin: 0 auto;
}
.reform_title_wrapper {
	text-align: center;
	padding: 64px 0 92px 0;
}
.reform_title_wrapper h1 {
	margin-bottom: 1em;
}
/***********section1******************/
.reform_category_list {
	margin: 32px 0;	
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.category_box {
	width: 23%;
	margin-bottom: 2rem;
	min-width: 128px;
}
.category_box .category_img {	
	width: 100%;
	background-color: #FFF;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 8px;
}
.category_box h4{
	font-size: 0.9rem;
}
.category_box .category_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.ctg_note li {
	padding: 0.25rem 0.5rem;
	background-color: #000;
	color: #FFF;
	display: inline-block;
	margin: 0 0.1rem 0.2rem 0;
	font-size: 0.7rem;
	border-radius: 8px;
	line-height: 1;
	font-weight: 700;
}
/***************************************/
.reform_info {
	
}
.reform_info_title {
	text-align: center;
	margin-bottom: 2rem;
	font-size: 1.1rem;
}
.reform_onayami {
	width: 100%;
	max-width: 780px;
	margin: 0 auto;	
	padding-right: 30%;
	box-sizing: border-box;
	background-image: url(../images/illust_image02.png);
	background-repeat: no-repeat;
	background-position: bottom right;
	background-size: 30% auto;	
}
.reform_onayami li {
	font-size: 15px;
	padding: 0.5rem 1rem;
	display: block;
	border: solid 1px #ccc;
	border-radius: 1rem;
	margin-bottom: 1rem;
}
/************** section-1-② ***************************************/
.works_container {
	width: 96%;
	margin: 0 auto;
	padding: 32px 0;
}
.works_title_wrapper {
	width: 90%;
	margin: 0 auto 64px auto;
	padding-top: 1rem;
	box-sizing: border-box;
	padding-left: 5rem;	
	background-image: url(../images/illst_icon_07.png);
	background-repeat: no-repeat;
	background-size: contain;
	
}
.works_title_wrapper h2{
	font-size: 2rem;
	letter-spacing: 0.2em;
	line-height: 1rem;
}
.works_title_wrapper p{
	font-size: 1rem;
	letter-spacing: 0.5em;
	line-height: 1rem;
	font-weight: 700;
}

.works_wrap {
	margin-bottom: 64px;
}
.works_head_area {
	padding-bottom: 0.5rem;
	border-bottom: dotted 3px #ffca96;
	margin-bottom: 0.5rem;
}
.works_head_under {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 4rem;
	text-align: right;
}
.category_tag {
	display: flex;
}
.article__category{
	font-size: 0.8rem;
	font-weight: 700;
	padding: 0.25rem 0.5rem;
	border-radius: 0.5rem;
	margin-right: 1rem;
	margin-bottom: 0.5rem;
}
.article_body {
	width: 100%;
}
/******BEFORE********************/
.before_gallary {
	width: 80%;
	min-width: 300px;
	padding: 1rem;
	box-sizing: border-box;
	background-color: #eee;
	border-radius: 0 1rem 1rem 1rem;
	margin: 0 auto 1rem auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	position: relative;
}
.before_gallary:before {
	content: "BEFORE";
	font-family: "Noto Serif JP", serif;
	font-size: 18px;
	font-weight:700;
	display: inline-block;
	padding: 0.5rem;
	letter-spacing: 0.1rem;
	background-color: #eee;
	position: absolute;
	top: -2em;
	left: 0;
	border-radius: 0.5rem 0.5rem 0 0;	
}
.before_gallary:after {
	content: "";
	position: absolute;
	bottom: -32px;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 15px solid transparent;
	border-left: 15px solid transparent;
	border-top: 20px solid #555555;
	border-bottom: 0;
}
.before_gallary .works-gallery__item {
	width: 80%;
	aspect-ratio: 5 / 3;
	overflow: hidden;
	margin-bottom: 1rem;
}
.before_gallary .works-gallery__item:nth-child(n+2) {
	width: 49%;
	overflow: hidden;
	display: inline-block;
	padding-right: 1rem;
	box-sizing: border-box;
}
/********AFTER********************/
.works-gallery {		
	width: 100%;
	padding-top: 64px;
	position: relative;
}
.works-gallery:before {
	content: "AFTER";
	font-family: "Noto Serif JP", serif;
	font-size: 28px;
	font-weight: 700;
	position: absolute;
	top: 0px;
	left: 0;
}
.works-gallery .works-gallery__item {
	width: 100%;
	aspect-ratio: 5 / 3;
	overflow: hidden;
	margin-bottom: 1rem;
}
.works-gallery  .works-gallery__item:nth-child(n+2) {
	width: 49%;
	overflow: hidden;
	display: inline-block;
	padding-right: 1rem;
	box-sizing: border-box;
}
.works-gallery__item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 8px;
}
/************************/
.category_post {
	width: 100%;
	margin: 1rem auto;
	display: block;
}
.category_post dl{
	display: flex;
	flex-wrap: wrap;
}
.category_post dt {
	display: block;
	background-color: #ffca96;
	padding: 1rem;
	border-radius: 16px 0 0 16px;
	margin-bottom: 1rem;
	width: 6em;
	text-align: center;
	font-size: 0.8rem;
	font-weight: 700;
	color: #FFF;
	letter-spacing: 0.1rem;
}
.category_post dd {
	font-size: 0.8rem;
	display: block;
	padding: 1rem;
	border-radius:0 16px 16px 0;
	margin-bottom: 1rem;
	border: 2px solid #ffca96;
	box-sizing: border-box;
	flex-grow: 2;
}
/*******施工ポイント*************/
.works_point {
	width: 100%;
	padding: 1rem;
	background-color: #fff5e9;
	margin-bottom: 1rem;
	border-radius: 8px;
	box-sizing: border-box;
}
.point_title {
	letter-spacing: 0.1rem;
	margin-bottom: 12px;
	display: inline-block;
	background-color: #FFF;
	padding: 0.5rem 1rem;
	border-radius: 12px;
}
.customer_request {
	font-size: 0.8rem;
}
.dashed_note {
	background-color: #fff5e9; /* 背景色 */
	background-image: linear-gradient(90deg, transparent 0%, transparent 50%, #fff5e9 50%, #fff5e9 100%), /* 点線1の色 */
		              linear-gradient(180deg, #ccc 1px, transparent 1px); /* 点線2の色と太さ */
	background-size: 8px 100%, /* 点線1のサイズ */
		             100% 2.5em; /* 点線2のサイズ */
	line-height: 2.5em; /* 文字の高さ */
	padding-bottom: 1px; /* 最終行の下にも罫線を引く */
}
/*****************************/
.centerbtn {
	text-align: center;	
}
.centerbtn .button {
	display: inline-block;
	cursor: pointer;
	margin: 0 auto;
	height: 2em;
	padding: 1em 3%;
	background-color: #ffbc64;
	border-radius: 32px;
	border: solid 2px #ffac6c;	
	color: #828282;
	background-color: #fff;
}
.to_arch {
	line-height: 2rem;
	display: flex;
	display: -webkit-flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: space-between;
	justify-content: space-between;	
}
.to_arch .indextag {
	font-size: clamp(0.7rem, 1.2vw, 1.2rem);
}
.to_arch p {
	font-size: clamp(0.7rem, 5vw, 1.2rem);
	padding: 0 1em;
}
.arrow {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  transform: translate(6px, 0px);
}
.arrow::before, .arrow::after {
  box-sizing: border-box;
}
.arrow::after {
  content: '';
  width: 50%;
  height: 50%;
  border-top: 3px solid currentColor;
  border-right: 3px solid currentColor;
  transform: translateX(-15%) rotate(45deg);
}
/************************/
#interior_container {
	background-color: #f5f3f3;
}
.interior_info_wrapper {
	width: 96%;
	margin: 0 auto;
	padding: 16px 0;
}
.interior_reform_top {
	margin-bottom: 2rem;
}
.interior_reform {
	width: 100%;
}
.interior_box_left {
	width: 100%;
	padding: 0 1rem 38px 1rem;
	box-sizing: border-box;
	position: relative;
}
.interior_title_trnce {
	font-size: 1.1rem;	
	transform: rotate(-7deg);
	padding-bottom: 2em;
	color: #af775f;
}
.interior_title {
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-weight: 900;
	font-size: 2rem;
	padding-left: 1rem;
	margin-bottom: 1rem;
	color: #af775f;
}
.txt_style23 {
	line-height: 1.6rem;
	letter-spacing: 0.1rem;
	margin-bottom: 1rem;
}
.bofore_img {
	display: block;	
	text-align: right;
	width: 40%;
	min-width: 200px;
	aspect-ratio: 5 / 3;
	margin: 0 auto;
	overflow: hidden;	
}
.bofore_img img {
	border-radius: 16px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.interior_box_left:after {
	content: "";
	position: absolute;
	right: 0;
	left: 0;
	bottom: 10px;
	margin: 0 auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 20px solid transparent;
	border-left: 20px solid transparent;
	border-top: 20px solid #555555;
	border-bottom: 0;
}
.interior_box_right {
	width: 100%;
}
.after_img {
	width: 100%;
	aspect-ratio: 5 / 3;
	overflow: hidden;
}
.after_img img {
	border-radius: 16px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/*****************/
.interior_reform_under {
}
.interior_remakeinfo {
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-size: 1.4rem;
	margin-bottom: 0.5rem;
	margin-left: 1rem;
	color: #af775f;
}
.remake_img_wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 3% 2rem;
}
.remake_img_box {
	width: 43%;
	max-width: 235px;
	margin-bottom: 1rem;
}
.remake_img {	
	width: 100%;
	aspect-ratio: 5 / 3;
	overflow: hidden;
	border-radius: 16px;
}
.remake_img img {
	width: 100%;
	height: 100%;	
	object-fit: cover;
}
/*****************************/
.interior_subcontents {
	
}
/***************/
/***************/
/***************/
.cordinetor_wrapp {
	width: 48%;
	max-width: 650px;
	min-width: 545px;
	margin: 0 auto 3rem auto;
}
.cordinetor_info {
	border: solid 8px #CCC;
	border-radius: 16px;
	padding: 0.5rem 1rem 0.5rem 45%;
	margin-top: 2rem;
	position: relative;
	background-color: #FFF;
}
.cordinetor_info:after {
	content: "";
	width: 43%;
	height: 120%;
	background-image: url(../images/cordinetor05.png);
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 0;
	left: 0;
}
.cordinetor_info h3 {
	font-size: clamp(14px, 3.5vw, 1.3rem);
	line-height: 2rem;
}
.boldtitle {
	display: inline-block;
	font-size: 1.5em;
	font-weight: 900;
}
.cordinet_txt {
	font-weight: 500;
	letter-spacing: 0.1rem;
}
/**************/
/**************/
/**************/
.live_with_pet_wrapp {
	width: 48%;
	max-width: 650px;
	min-width: 545px;
	margin: 0 auto;
	padding: 1rem;
	background-color: #FFF;
	box-sizing: border-box;
	border-radius: 16px;
}
.pet_info_area {
	width: 100%;
	padding-right: 40%;
	box-sizing: border-box;
	background-image: url(../images/pet_img00.png);
	background-position: right 18px top 0;
	background-repeat: no-repeat;
	background-size: auto 90%;
}
.pet_img_area {
	display: flex;
	justify-content: space-around;
}
.pet_img {	
	width: 30%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 16px;
}
.pet_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: bottom;
}
.pet_note {
	font-weight: 900;
	letter-spacing: 0.1rem;
	font-size: 14px;
}
.pet_title {
	font-weight: 900;
	letter-spacing: 0.1rem;
	font-size: 2rem;
	margin-bottom: 1rem;
}
.pet_info_area ul {
	display: flex;
	flex-wrap: wrap;
}
.pet_info_area ul li {
	font-size: 0.8rem;
	padding-left: 0.5rem;
	border-left: solid 1px #828282;
	margin-right: 1rem;
	margin-bottom: 0.5rem;
	font-weight: 500;
}
/*****************************************************/
.s_construction {	
	width: 96%;
	margin: 0 auto;
	padding: 60px 0;
}
.s_const_title_wrapp {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	border-top: solid 4px #ff9a01;
	border-bottom: solid 4px #ff9a01;
	gap: 0 1rem;
	color: #424242;
	margin-bottom: 0.5rem;
	padding: 0.5rem 0;
}
.s_const_title {
	font-size: 1.3rem;
	font-weight: 900;
	letter-spacing: 0.1rem;
}
.large_txt {
	font-size: 1.5em;
}
.sall_txt {	
	font-family: "Mochiy Pop One", sans-serif;
	font-size: 1.2rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	padding-left: 80px;
	background-image: url(../images/illst_icon_02.png);
	background-repeat: no-repeat;
	background-size: auto 100%;
}
.title_under_p {
	padding-left: 10%;
	font-size: 1.2rem;
	line-height: 1.5rem;
}
/********************/
.s_const_garally {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	gap: 1rem 1%;
	width: 90%;
	margin: 32px auto;
}
.s_category_box {
	width: 19%;
	min-width: 88px;
}
.s_category_img {
	width: 100%;
	aspect-ratio: 5/3;
	overflow: hidden;
	border-radius: 8px;
}
.s_category_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: bottom;
}
/*************************************************************/
.tatami_fusuma {	
	width: 96%;
	margin: 0 auto;
	padding: 60px 0;
}
.harikae_title_wrapper {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	align-items: center;
	padding: 0.5rem 2em 0 2em;
	line-height: 1em;
	border-bottom: solid 6px #ffbc64;
	background: linear-gradient(transparent 70%, #ffbc64 70%);
	margin-bottom: 2rem;
}
.tatamifusuma_headtitle {
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-size: 2.3rem;
	line-height: 1em;
}
.tatamifusuma_headtitle span.kakomi {
	font-weight: 900;
	font-size: 1.2em;
	display: inline-block;
	padding: 0.2em 0.1em;
	border: solid 2px;
	background-color: #FFF;
	margin: 0 0.1em;
}
.campain_info {
	font-size: 1.9rem;
	font-weight: 900;
	line-height: 1em;
	text-shadow:
		3px 3px 0 #FFf,
		-3px 3px 0 #FFf,
		-3px -3px 0 #FFf,
		3px -3px 0 #FFf;
}
/**************************/
.harikae_wrapper {
	margin-bottom: 1rem;
	min-width: 310px;
}
.tatami_fusuma_wrapper {
	margin-bottom: 1rem;
	flex-direction: column;
	align-items: center !important;
}
.harikae_wrapper .is-layout-flex {
	gap: 0.5rem !important;
}
/****畳*****/
.tatami_box_column {
	width: 80%;
	min-width: 300px;
}
.tatami_title_wrapp {
	padding: 1em 0.5rem;
	border-radius: 16px 16px 0 0;
	background-color: #ffcaa5;
}
.tatami_frame {
	padding: 2rem 1rem 1rem 1rem;
	border: solid 8px #ffcaa5;
	margin-top: -16px;
	border-radius: 16px;
	position: relative;
	z-index: -1;
}
.tatami_frame:after {
	position: absolute;
	height: 72%;
	width: 2px;
	background-color: #eee;
	content: "";
	bottom: 16px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.tatami_title_wrapp h3 {	
	position: relative;
}
.tatami_title_wrapp h3:before {
	content: "";
	position: absolute;
	width: 111px;
	height: 94px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	left: -120px;
	display: inline-block;
	background-image: url(../images/illust_tatami.png);
	background-repeat: no-repeat;
	background-size: cover;
}
/****襖*****/
.fusuma_box_column {
	min-width: 300px;
	margin: 0 auto 1rem auto !important;
}
.fusuma_title_wrapp {
	padding: 1rem 0.5rem 1rem 50px;
	border-radius: 16px 16px 0 0;
	background-color: #ffcaa5;
}
.fusuma_frame {	
	padding: 66px 1rem 1rem 1rem;
	border: solid 8px #ffcaa5;
	margin-top: -56px;
	border-radius: 16px;
}
.fusuma_title_wrapp h3 {
	position: relative;
}
.fusuma_title_wrapp h3:before {
	content: "";
	position: absolute;
	width: 65px;
	height: 94px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	left: -80px;
	display: inline-block;
	background-image: url(../images/illust_fusuma.png);
	background-repeat: no-repeat;
	background-size: cover;
}
/*****障子*******/
.syouji_amido_wrapper {
	display: flex;
	flex-direction: column;
}
.syouji_frame{	
	padding: 1rem 1rem 1rem 1rem;
	border: solid 8px #ffcaa5;
	border-radius: 16px;
	width: 60%;
	min-width: 300px;
	margin: 0 auto 1rem auto !important;
	box-sizing: border-box;
}
.title_syouji {	
	position: relative;
	padding-left: 50px;
}
.title_syouji:before {
	content: "";
	position: absolute;
	width: 55px;
	height: 92px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	left: 10px;
	display: inline-block;
	background-image: url(../images/illust_syouji.png);
	background-repeat: no-repeat;
	background-size: cover;
}
/******網戸*******/
.amido_frame {	
	padding: 1rem 1rem 1rem 1rem;
	border: solid 8px #ffcaa5;
	border-radius: 16px;
	width: 60%;
	min-width: 300px;
	margin: 0 auto 1rem auto !important;
	box-sizing: border-box;
}
.title_amido {	
	position: relative;
	padding-left: 50px;
}
.title_amido:before {
	content: "";
	position: absolute;
	width: 50px;
	height: 90px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	left: 10px;
	display: inline-block;
	background-image: url(../images/illust_amido.png);
	background-repeat: no-repeat;
	background-size: cover;
}
/*************************タブレット*************************************************/
@media screen and (max-width: 782px) {
/***********************************************************************************/
	.tatami_frame:after {
		display: none;
	}
	.syouji_frame,
	.amido_frame {
		max-width: 300px;
		margin: 0 auto !important;
	}
	.reform_onayami {
		padding-right: 0;
		padding-bottom: 130px;
		background-position: bottom right 5%;
		background-size: auto 130px;	
	}
}
/*************************タブレット*************************************************/
@media screen and (max-width: 620px) {
/***********************************************************************************/
	.cordinetor_wrapp {
		width: 100%;
		min-width: 300px;
		margin: 0 auto 3rem auto;
	}
	.live_with_pet_wrapp {
		width: 100%;
		min-width: 300px;
		padding: 1rem;
		box-sizing: border-box;
	}
	.pet_info_area {
		width: 100%;
		padding-right: 30%;
		box-sizing: border-box;
		background-position: right 18px bottom 0;
		background-repeat: no-repeat;
		background-size: 30% auto;
	}
	.pet_img {
		border-radius: 4px;
	}
	.cordinetor_info h3 {
        line-height: 1.8rem;
    }
	.s_const_title {		
		font-size: clamp(0.8rem, 4vw, 1.3rem);
	}
	.harikae_title_wrapper {
		padding: 0; 
	}
	.tatamifusuma_headtitle{
		font-size: clamp(1.3rem, 6vw, 2rem);
		margin-bottom: 0.5rem;
	}
	.campain_info {		
		font-size: clamp(1rem, 6vw, 2rem);
	}
	.tatami_title_wrapp {
		justify-content: flex-end !important;
	}
}

/***********************************SP*************************************************/
@media screen and (max-width: 475px) {
/************************************************************************************/
	.interior_title {
		font-size: clamp(1.5rem, 6.5vw, 2rem);
		padding-left: 0;
	}
	.interior_title_trnce {
		padding-bottom: 1rem;
	}
	.live_with_pet_wrapp {
		padding: 0.5rem;
	}
	.pet_title {
		font-size: 1.5rem;
	}
	.pet_info_area {
		width: 100%;
		padding-right: 0;
		box-sizing: border-box;
		background-position: left 14rem top 0;
		background-size: auto 4rem;		
	}
	.pet_info_area ul li {		
        font-size: 0.7rem;
	}
	.cordinetor_info {
		padding: 0 0 0 38%;
	}
	.cordinetor_info h3 {
		line-height: 1.5em;
	}
	.cordinetor_info:after {
		content: "";
		width: 40%;
		height: 120%;
		background-position: left bottom;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		bottom: 0;
	}
	.s_category_box h4{
		font-size: 14px;
	}
	.s_const_title {		
		font-size: 1.3rem;
		text-align: center;
	}
	.sall_txt {	
		font-size: 17px;
		padding-left: 55px;
	}
	.tatami_title_wrapp,
	.fusuma_title_wrapp {
		display: flex;
		flex-direction: column;
	}
	.tatami_title_wrapp h3:before {
		width: 82px;
		height: 65px;
		left: -100px;
		bottom: -8px;
	}
	.fusuma_title_wrapp h3:before {
		width: 58px;
		height: 84px;
		left: -111px;
		bottom: -11px;
	}
	.fusuma_itemname {
		display:none;
	}
}