@charset "utf-8";
/* CSS Document */

#headimg_container {
	width: 100%;
	height: 76vh;
	min-height: 580px;
	margin-bottom: 32px;
}
.headimage_wrapper {
	width: 100%;
	height: 100%;
	position: relative;
	background-image: url(../images/rnv_topimage02.png);
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: 70% auto;
}
.bottom_wrapp {
	width: 50%;
	max-width: 400px;
	aspect-ratio: 5 / 3;
	position: absolute;
	left: 0;
	bottom: 5%;
	display: flex;
	align-items: flex-end;
	background-image: url(../images/rnv_topimage03.png);
	background-repeat: no-repeat;
	background-size: cover;	
	box-sizing: border-box;
	border: solid 4px #FFF;
}
.clip_left {
	width: 100%;
	height: 92%;
	position: absolute;
	top: 0;
	left: 0;
	clip-path: polygon(0 0, 100% 0, 100% 60%, 0 80%);
	background-image: url(../images/rnv_topimage01.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
}
.head_chach {
	position: absolute;
	top: 30%;
	font-size: 2rem;
	font-weight:900;
	z-index: 1;
	color: #FFF;
	margin-left: 1em;
	text-shadow: 4px 4px #4a4a4a;
}
.rnv_topinfo_sub {	
	font-size: 1.35rem;
	font-weight:900;
	color: #FFF;
	text-shadow: 4px 4px #4a4a4a;
}
/*******************************************************************/
#renovation_container {
	margin: 0 auto;
}
.info_container {	
	width: 90%;
	min-width: 300px;
	margin: 0 auto 64px auto;
	
}
.title_txt01 {
	font-size: clamp(1.1rem, 5.3vw, 1.8rem);
	font-weight:700;
	letter-spacing: 0.1rem;
	line-height: 1.6em;
	margin-bottom: 1em;
	color: #424242;
	box-sizing: border-box;
	padding-left: 40%;
	padding-top: 2em;
	background-image: url(../images/family02.png);
	background-repeat: no-repeat;
	background-size: auto 96%;
	background-position: left -2rem top;
}
.txt_style01 {
	font-size: 1.0rem;
	line-height: 1.8rem;
	color: #424242;
}
/*********************************************/
.renovation_works_containr {
	width: 100%;	
	background-image: url(../images/bg_03.png);
	background-size: 30px;
	padding-bottom:30px;
}
.works_wrapper {
	width: 96%;
	min-width: 300px;
	margin: 0 auto;
	padding: 32px 0 16px 0;
}
.works_title_wrapp {
	padding-bottom: 0.5rem;
	margin-bottom: 0.5rem;
	position: relative;
}
.works_title_wrapp:before {
	content: "";
	position: absolute;
	width: 5rem;
	height: 5rem;
	background-image: url(../images/illst_icon_07.png);
	background-repeat: no-repeat;
	background-size: contain;
	bottom: 0;
	left: 0;
	display: inline-block;
}
.rnv_werkstitle {
	font-family: "Mochiy Pop One", sans-serif;
	font-size: 2.2rem;
	letter-spacing: 0.2em;
	font-weight: 700;
	color: #f98e00;
	padding-left: 5rem;
}
.rnv_titlenote {	
	padding-left: 5.2rem;
	font-weight: 900;
	letter-spacing: 0.8em;
}
/**********************/
.works_head_area {
	display: flex;
	flex-wrap: wrap;
	margin: 2rem 0;
}
.works_head_left {
	padding: 1rem;
}
.works_head_right {
	flex-basis: 2;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
	flex-wrap: wrap;
	align-items: stretch;	
	border-bottom: none;
	font-size: clamp(0.8rem, 1.8vw, 1rem);
}
.works_head_right dt{
	background: #f5f5f5;
	padding: 5px;
	width: 130px;
	box-sizing: border-box;
	border-bottom: 1px dotted #000;
}
.works_head_right dd{
	background: #fff;
	padding: 5px;
	width: calc(100% - 130px);
	box-sizing: border-box;
	border-bottom: 1px dotted #000;
}
/************************/
.works_img_container {
	padding: 24px 0;
}
.before_gallary {
	width: 96%;
	margin-bottom: 1rem;
	position: relative;
}
.before_gallary:before {
	content: "BEFORE";
	font-family: "Noto Serif JP", serif;
	font-size: 25px;
	font-weight:900;
	display: inline-block;
	letter-spacing: 0.1rem;
	position: absolute;
	top: -1.5em;
	left: 0;
	border-radius: 0.5rem 0.5rem 0 0;
	color: #f98e00;
}
.before_gallary:after {
	content: "";
	position: absolute;
	right: 0;
	left: 0;
	bottom: 0;
	margin: 0 auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 20px solid #f98e00;
	border-right: 20px solid transparent;
	border-left: 20px solid transparent;
	border-bottom: 0;
}
.before_gallary .works-gallery__item {
	width: 80%;
	min-width: 300px;
	background-color: #FFF;
	aspect-ratio: 5 / 3;
	overflow: hidden;
	border-radius: 16px 16px 0 0;
}
.before_gallary .works-gallery__item img {
	border-radius: 16px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/************************/
.order_note_wrapp {
	padding: 3rem 0 2rem 0;
	position: relative;
}
.order_note_wrapp:before {
	content: "ORDER";
	font-size: 18px;
	font-weight: 900;
	display: inline-block;
	letter-spacing: 0.1rem;
	position: absolute;
	top: 1rem;
	left: 0;
	color: #e10000;
}
.order_note_wrapp ul li {
	width: 80%;
	min-width: 300px;
	box-sizing: border-box;
	padding: 10px 0 10px 24px;
	background-color: #FFF;
	margin-bottom: 1rem;
	border: solid 2px #ccc;
	border-radius: 8px;	
	font-size: clamp(0.9rem, 3vw, 1.1rem);
}
/******** ビックリマーク *******/
.dli-exclamation {
	display: inline-block;
	vertical-align: middle;
	color: #e10000;
	line-height: 1em;
	width: 0.4em;
	height: 2rem;
	margin-right: 1rem;
}
.dli-exclamation::before, .dli-exclamation::after {
  content: '';
  display: block;
  width: inherit;
  background: currentColor;
}
.dli-exclamation::before {
  margin-bottom: 0.1em;
  height: 1.1em;
  border-radius: 25%;
}
.dli-exclamation::after {
  height: 0.3em;
  border-radius: 50%;
}
/****************/
.works-gallery {
	width: 100%;
	position: relative;
}
.works-gallery:before {
	content: "AFTER";
	font-size: 3rem;
	font-weight: 900;
	display: inline-block;
	letter-spacing: 0.1rem;
	position: absolute;
	top: 0.5rem;
	left: 0.5rem;
	color: #FFF;
	font-family: "Noto Serif JP", serif;
}
.works-gallery .works-gallery__item {
	width: 100%;
	background-color: #FFF;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-radius: 16px 16px 0 0;
}
.works-gallery .works-gallery__item img {
	border-radius: 16px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.works_info_note {
	padding: 1rem;
	margin: 2rem 0 1rem 0;
	font-size: 15px;
	letter-spacing: 0.1em;
	line-height: 1.8rem;
}
/***/
.works_sub-gallery {
	display: flex;
	justify-content: space-around;
	
}
.works_sub-gallery  .works-gallery_sub_item {
	width: 30%;
	background-color: #FFF;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-radius: 8px;
}
.works_sub-gallery  .works-gallery_sub_item img {
	border-radius: 8px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/****************************/
.criant_voice_wrapp {
	width: 80%;
	min-width: 300px;
	margin: 2rem auto;
	padding: 1rem;
	background-color: #fff5e9;
	margin-bottom: 1rem;
	border-radius: 8px;
	box-sizing: border-box;
	border-radius: 16px;
}
.voice_voice_title {
	padding: 1rem 0 1rem 2rem;
	background-image: url(../images/icon_customer.png);
	background-repeat: no-repeat;
	background-size: 2rem;
	color: #828282;
	font-size: 1.4rem
}
.voice_title {
	font-size: 1.2rem;
}
.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; /* 最終行の下にも罫線を引く */
	font-size: 15px;
}











/**********************************************/
#page_container {
	width: 96%;
	min-width: 300px;
	margin: 64px auto 0 auto;
}
.rnv_tenderbox {
	flex-wrap: wrap !important;
}
.tender_left {
	flex-basis: 45% !important;
}
.tender_center {
	order: 2;
	flex-basis: 100% !important;
}
.tender_right {
	flex-basis: 45% !important;
}
.tender_right .tender_item_wrapper {
	max-width: 472px;
	margin: 0 auto;
}
.tender_right .tender_item_wrapper .tender_item_box {
	flex-basis: 45% !important;
}

/***********************************SP*************************************************/
@media screen and (max-width: 781px) {
/**************************************************************************************/
	.tender_center {
		order: 0;
	}
}
/***********************************SP*************************************************/
@media screen and (max-width: 428px) {
/**************************************************************************************/
	#headimg_container {
		min-height: 400px;
	}
	.clip_left {
		height: 80%;
		clip-path: polygon(0 0, 100% 0, 100% 60%, 0 80%);
		pa
	}
	.head_chach {
		top: 15%;
		font-size: 1.2rem;
	}
	.rnv_topinfo_sub {	
		font-size: 1rem;
	}
	.headimage_wrapper {
		background-position: right top 80%;
		background-repeat: no-repeat;
		background-size: 70% auto;
	}
	.bottom_wrapp {
		bottom: 0%;
	}
	
}