@charset "utf-8";


/*--------------------------------------------------------------

business

--------------------------------------------------------------*/



/* common
--------------------------------------------------------------*/

.field-list { display: grid; gap: 1rem;}
.field-list li { padding: 1.5rem; background-color: var(--cl-bggr);}
.field-list li:last-of-type { grid-column: 1 / 3; padding: 1.5rem; background-color: transparent; text-align: center;}

.index-lead .u-title-ja + p,
.index-lead .u-title-lead   { max-width: 72rem; }

@media print, screen and (min-width: 640px) {
.field-list { display: grid; grid-template-columns: repeat(2,2fr); gap: 1rem;}
.field-list li { padding: 1.5rem 2rem; }

}



/* index
--------------------------------------------------------------*/

.page-business .hu590.c-secwrap { padding-top: 0;}
.page-business .hu590 .c-bgWrap { background-image: url(/assets/images/home/hu590_bg.jpg);}


/* consulting
--------------------------------------------------------------*/
.page-consulting .c-content { margin-bottom: 0; }


/* hu590
--------------------------------------------------------------*/

.page-hu590 .about-point {}
.page-hu590 .about-point li { font-weight: 600; display: flex; gap: 0.5rem;}
.page-hu590 .about-point li + li { margin-top: 0.5rem;}
.page-hu590 .about-point li::before { content: ""; display: block; width: 0.6rem; height: 2px; background-color: var(--cl-key); transform: translate(0, 1rem);}

@media print, screen and (min-width: 640px) {
.page-hu590 .about-point li { gap: 1rem; font-size: 1.8rem;}
.page-hu590 .about-point li + li { margin-top: 1.5rem;}
.page-hu590 .about-point li::before { height: 3px; transform: translate(0, 1.5rem); }

}




/* material
--------------------------------------------------------------*/

/* common */
.page-material {  }
.page-material .bottom-menu { padding: 2rem 0 2rem 2rem; overflow: scroll; background-color: var(--cl-bggr);  }
.page-material .bottom-menu ul { width: 50rem; display: flex; gap: 2rem; align-items: center; }
.page-material .bottom-menu ul li { }
.page-material .bottom-menu ul li.is-active a { color: var(--cl-key); }
.page-material .bottom-menu ul li a { display: inline-flex; gap: 0.5rem; align-items: center; }
.page-material .bottom-menu ul li a::before { content: ""; display: block; width: 0.8em; height: 0.8em; background: url(/assets/images/common/ar_btn_key.svg) no-repeat center / contain; }

.certificate-list { margin-top: 3rem; display: grid; gap: 0.5rem; grid-template-columns: repeat(3,1fr); align-items: flex-end;}
.certificate-list figure { margin: 1rem 0;}
.certificate-list figcaption { font-size: 1rem; line-height: 1.4; letter-spacing: -0.001em;}

@media print, screen and (min-width: 640px) {
.page-material .bottom-menu { overflow: hidden; }
.page-material .bottom-menu ul { width: auto; max-width: 119rem; margin: 0 auto; padding-inline: 4rem; gap: 4rem;  }
.page-material .bottom-menu ul::before { content: "杭工事提案"; font-size: 1.4rem; font-weight: 600; padding-right: 4rem; border-right: #ccc 1px solid; }
.page-material .bottom-menu ul li a { font-size: 1.4rem; }

.certificate-list { margin-top: 5rem; gap: 3rem;}
.certificate-list figure { margin: 1rem 0;}
.certificate-list figcaption { font-size: 1.2rem; letter-spacing: 0; }

}



/* detail01 */
.page-material.detail01 { }
.page-material.detail01 .c-pageLead { margin-top: 0; }
.page-material.detail01 .point-list { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 3rem; }
.page-material.detail01 .point-list li { padding: 0.5rem 1rem; border: var(--cl-txt) 1px solid; }
.page-material.detail01 .c-pageLead-pic > * { position: relative; }
.page-material.detail01 .pic-txt { padding: 1rem 2rem 0 0; }

@media print, screen and (min-width: 640px) {

.page-material.detail01 .c-pageLead { grid-template-columns: 1fr 1.2fr; }
.page-material.detail01 .pic-txt { position: absolute; bottom: 3rem; left: 3rem; color: var(--cl-wh); }
.page-material.detail01 .point-list { margin-bottom: 5rem; }
.page-material.detail01 .point-list li { padding: 0.5rem 1.5rem; font-size: 1.4rem; }
.page-material.detail01 .u-title-en span { display: block;}

}

/* detail01 - omega */
.page-material.i-omega { }



.u-title-md { font-size: 1.6rem; line-height: 1.5; font-weight: 600; }
@media print, screen and (min-width: 640px) {
.u-title-md { font-size: 2.4rem; }
}

.overview-title { margin-bottom: 4rem; font-size: 3.4rem;}
.overview-detail-txt { margin-top: 2rem; font-size: 1.6rem; line-height: 1.8;}
.overview-detail-pic { margin: 3rem auto 0; max-width: 49rem;}

@media print, screen and (min-width: 640px) {
.overview-title {  margin-bottom: 8rem; position: sticky; top: calc(var(--header-height) + 2rem); left: 0; font-size: 4.4rem; line-height: 1.6;}
.overview-detail-txt { margin-top: 4rem; font-size: 1.8rem; }
.overview-detail-pic { margin-top: 6rem ;}

}



.lineup .u-title-md { margin-top: 2rem;}
.lineup .u-title-md span { display: block; font-weight: var(--ff-base-normal); font-size: 1.4rem; text-align: right;}
.lineup .u-fs-ex { margin-top: 2rem; font-size: 1.2rem;}

.lineup-tablewrap { min-width: 0; overflow-x: auto; width: 100%; -webkit-overflow-scrolling: touch;}
.lineup-table  { width: auto; min-width: 60rem; border-collapse: collapse; border: #A6A7A7 1px solid;  }
.lineup-table-item  { }
.lineup-table-item > * { padding: 1.5rem; text-align: center; border-right: #A6A7A7 1px solid; border-bottom: #A6A7A7 1px solid; line-height: 1.4;  }
.lineup-table-item > *._bg { background-color: #EBEBEB; }
.lineup-table-item > *._bg-thin { background-color: #fff; }
.lineup-table-item > *._bg01 { background-color: #CDE7DE; }
.lineup-table-item > *._bg02 { background-color: #D7E9CE; }
.lineup-table-item > *._new { position: relative; }
.lineup-table-item > *._new::before { position: absolute; top: -0.5rem; left: -0.5rem; width: max-content; height: max-content; padding: 0.3rem 1rem; content: "NEW"; font-size: 1.3rem; background-color: #946D34; font-weight: var(--ff-base-normal); }
.lineup-table-item > *._row2{ grid-row: 1/3; }

thead .lineup-table-item:nth-child(1) > *:nth-child(1) { width: 15.82%; }
thead .lineup-table-item:nth-child(1)  > *:nth-child(2) { width: 13.43%; }
thead .lineup-table-item > *._bg { background-color: #E0E0E0; }
thead .lineup-table-item > *._bg-thin { background-color: #110605; color: #fff; }
thead .lineup-table-item > *._bg01 { background-color: #004A30; color: #fff; }
thead .lineup-table-item > *._bg02 { background-color: #30702B; color: #fff; }

@media print, screen and (min-width: 640px) {
.lineup .u-title-md { margin-top: 5rem;}
.lineup-tablewrap { overflow: initial;}
.lineup-table  { width: auto;  }
.lineup .u-fs-ex { margin-top: 2rem; font-size: 1.4rem;}

}


.c-grtb { border: #A6A7A7 1px solid; }
.c-grtb-item { display: grid; }
.c-grtb-item > * { padding: 1.5rem; border-bottom: #A6A7A7 1px solid; }
.c-grtb-item:last-child > *:last-child { border-bottom: none; }
.c-grtb-item > *:nth-child(1) { background-color: #E0E0E0; }

@media print, screen and (min-width: 640px) {
.c-grtb-item { grid-template-columns: 22rem 1fr; }
.c-grtb-item > *:nth-child(1) { display: grid; align-items: center; justify-content: center; }
.c-grtb-item:last-child > * { border-bottom: none; }

}


.spec .u-btn + .spec-pic { margin-top: 3rem;}
@media print, screen and (min-width: 640px) {
.spec .u-btn + .spec-pic { margin-top: 6rem;}
}

.site { padding-bottom: 6rem !important; width: 100vw; margin: 0 calc(50% - 50vw); background: url(/assets/images/common/bg.jpg) no-repeat center / cover;}
.site .site-inner { max-width: 110rem; margin: 0 auto; padding: 0 2rem; text-align: center;}
.site .site-btn { display: block; max-width: 49rem; margin: 0 auto 3rem; font-weight: 600;}
.site .site-btn img { margin-bottom: 0.5rem;}
.site .site-btn p { display: flex; align-items: center; justify-content: center; gap: 0.5em; }
.site .site-btn p::after { content: ""; display: block; width: 1em; height: 1em; mask: url(/assets/images/common/ico_bloank_bk.svg) no-repeat center center / contain; background-color: #333; }
@media print, screen and (min-width: 640px) {
.site { padding-bottom: 12rem !important; }
.site .site-inner { padding: 0 4rem; }
.site .site-btn { margin: 0 auto 6rem; }
.site .site-btn img { margin-bottom: 1rem;}
.site .site-btn + p { font-weight: 600; }

}




/* detail02 */
.page-material.detail02 { }
.page-material.detail02 .c-content { margin-bottom: 0; }
.page-material.detail02 .c-pageLead { margin-top: 0; }
.page-material.detail02 .point-list { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 3rem; }
.page-material.detail02 .point-list li { padding: 0.5rem 1rem; border: var(--cl-txt) 1px solid; }
.page-material.detail02 .c-pageLead-pic > * { position: relative; }
.page-material.detail02 .pic-txt { padding: 1rem 2rem 0 0; }

@media print, screen and (min-width: 640px) {

.page-material.detail02 .c-pageLead { grid-template-columns: 1fr 1.2fr; }
.page-material.detail02 .pic-txt { position: absolute; bottom: 3rem; left: 3rem; color: var(--cl-wh); }
.page-material.detail02 .point-list { margin-bottom: 5rem; }
.page-material.detail02 .point-list li { padding: 0.5rem 1.5rem; font-size: 1.4rem; }

}

/* detail03 */
.page-material.detail03 { }
.page-material.detail03 .c-content { margin-bottom: 0; }



/* detail04 */
.page-material.detail04 { }
.page-material.detail04 .c-content { margin-bottom: 0; }




/* removal
--------------------------------------------------------------*/

.page-removal .c-content { margin-bottom: 0; }






/* sheathing
--------------------------------------------------------------*/

.page-sheathing .c-content { margin-bottom: 0; }






/* procurement
--------------------------------------------------------------*/

.page-procurement {}
.page-procurement .material-nameWrap { display: grid; grid-template-columns: repeat(2,1fr);}
.page-procurement .material-name { font-weight: 600;}
.page-procurement .material-name span { display: block; font-size: 2rem;}
.page-procurement .material-txt { margin-top: 1.5rem;}

@media print, screen and (min-width: 640px) {
.page-procurement .material-nameWrap { display: block;}
.page-procurement .material-name { }
.page-procurement .material-name + .material-name { margin-top: 2rem; }
.page-procurement .material-name span { font-size: 2.4rem;}

}



/* quality
--------------------------------------------------------------*/

.page-quality {}
.page-quality dl { display: grid; grid-template-columns: 6rem 1fr;}
.page-quality dl + dl { margin-top: 3rem; padding-top: 3rem; border-top: var(--cl-gr) 1px solid;}
.page-quality dl dt {}
.page-quality dl dd {}
.page-quality dl dd span { display: block; margin-bottom: 0.5rem; font-size: 1.8rem; font-weight: 600;}




