
#noise-canvas {position: absolute;top: 0;left: 0;width: 100%;height: 100%; opacity: 0.25; pointer-events: none;z-index: 2;}

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

   .block_home_mv

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

.block_home_mv { position: relative; z-index:0;overflow: hidden; background: #19453e; clip-path: inset(0 0 0 0);}
.block_home_mv .img { position: fixed; top: 0; right: 0; left: 0; bottom: 0;z-index:-1;background:url("../images/home2025/img_main_4.jpg") bottom 20% center no-repeat;background-size: cover;transition: opacity 0.1s ease-out, transform 0.1s ease-out; will-change: opacity, transform;will-change: transform, opacity;}
.block_home_mv .cover {position: absolute; top: 0; right: 0; bottom: 0; left: 0;background: linear-gradient(202deg, rgba(17,17,17,0.25) 0%, rgba(17,17,17,0.5) 100%);z-index: 0; opacity: .3;}

/* .inner */
.block_home_mv .inner { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }

/* .copy_area_top */
.block_home_mv .copy_area_top { position: absolute; left: 3.5%; bottom: 3.5vw; color: #0ddeb2; z-index:2;}
.block_home_mv .copy_area_top .t_copy { color: #f8f7f4; font-size:8.5vw;font-size:8.125vw;font-family: 'Satoshi-Variable'; text-transform: uppercase;font-weight: 600; line-height: 1.05; letter-spacing: 0;}
.block_home_mv .copy_area_top .t_copy_2 { color: #f8f7f4;color: #02C098; /*color: #b5f2dd;*/font-size: 3.425vw;font-family: 'Satoshi-Variable'; font-weight: 800; line-height: 1.1; letter-spacing: 0;text-transform: uppercase;}
.block_home_mv .copy_area_top .t_copy_2 br {display: none;}
.block_home_mv .copy_area_top .t_copy_small { margin: 3.5vw 0 0 .1em;margin: 2.5vw 0 0 .1em;color: #13DCB3;color: #b5f2dd; color: #02C098; /*color: #b5f2dd; */font-size: 15px;font-family: 'Satoshi-Variable';font-weight: 800;line-height: 1;letter-spacing: .015em;}
.block_home_mv .copy_area_top .t_base { margin: .75vw 0 0 .1vw;color: #13DCB3;color: #b5f2dd; color: #02C098;/*color: #b5f2dd; */ font-size: 15px; font-weight: 400;letter-spacing: .015em; line-height: 1; text-transform: uppercase;}

@media only screen and (max-width: 960px) {
.block_home_mv .copy_area_top { left: 5%; bottom: 5.5vw; }
.block_home_mv .copy_area_top .t_copy { font-size: 9.4vw; line-height: 1.05; }
.block_home_mv .copy_area_top .t_copy_2 {font-size: 4vw; line-height: 1.1;}
.block_home_mv .copy_area_top .t_copy_small { margin: 5vw 0 0 .1em;}
.block_home_mv .copy_area_top .t_base { margin: 1vw 0 0 .1em; font-size: 15px; }
}
@media only screen and (max-width: 640px) {
.block_home_mv {min-height: 100%; }
.block_home_mv .img {position: fixed;}
.block_home_mv .img { background:url("../images/home2025/img_main_4_sp.jpg") center center no-repeat;background-size: cover;z-index: 0;}
.block_home_mv .cover {opacity: .5;}
.block_home_mv .copy_area_top { left: 5%; right: 0; bottom: 8.5vw; }
.block_home_mv .copy_area_top .t_copy { font-size: 11.75vw; line-height: 1.1;text-indent:0;}
.block_home_mv .copy_area_top .t_copy_2 {margin: .0775em 0 0; font-size: 7vw; font-weight: 800;  line-height: 1.225;}
.block_home_mv .copy_area_top .t_copy_2 br {display: block;}
.block_home_mv .copy_area_top .t_copy_2 .space {display: inline-block;}
.block_home_mv .copy_area_top .t_copy_small { margin: 9vw 0 0 .1em;}
.block_home_mv .copy_area_top .t_base { margin: 2vw 0 0 .1em;}
}






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

   .block_home_about

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

.block_home_about { padding: 120px 7.5%; position: relative; z-index:0;}

@media only screen and (max-width: 960px) {
.block_home_about {padding:100px 5%; }
}
@media only screen and (max-width: 738px) {
.block_home_about {padding:80px 5%; }
}
@media only screen and (max-width: 640px) {
.block_home_about {padding:70px 5%; }
}

/* .about_area */
.block_home_about .about_area { position: relative; z-index: 0;display: flex; flex-wrap: wrap;justify-content: space-between;align-items:center;}
.block_home_about .img_area { width: 40%;}
.block_home_about .txt_area { width: 47.5%;}
.block_home_about .t_copy { font-size: clamp(1.875rem, -0.638rem + 4.18vw, 2.5rem);
    font-size: clamp( 33px, calc( 12.170686456400741px + 1.855287569573284vw ), 40px );
    font-weight: 600;letter-spacing: .1em; font-feature-settings: "palt"; line-height: 1.55;}
.block_home_about .description_area { margin: 35px 0 0; padding: 0; max-width: 520px;}
.block_home_about .description_area p+p {margin: 1em 0 0;}
.block_home_about .link_area { margin: 40px 0 0; }

@media only screen and (max-width: 960px) {
.block_home_about .about_area { align-items:flex-start;}
.block_home_about .about_area .img_area { width: 30%;}
.block_home_about .about_area .txt_area { width: 62.5%;}
.block_home_about .about_area .txt_area .t_copy {  font-size:clamp(1.875rem, 0.836rem + 2.25vw, 2.188rem); line-height: 1.6;}
.block_home_about .about_area .txt_area .description_area { margin: 30px 0 0; }
.block_home_about .about_area .txt_area .description_area p+p {margin: 2em 0 0;}
.block_home_about .link_area { margin: 30px 0 0; }
}
@media only screen and (max-width: 738px) {
.block_home_about .about_area { flex-direction: column;}
.block_home_about .about_area .img_area { margin: 0 auto; width: 70%;}
.block_home_about .about_area .txt_area { padding:0; margin: 45px 0 0; width: 100%; display: flex; flex-direction: column; justify-content: center;}
.block_home_about .about_area .headline {text-align: center;}
.block_home_about .about_area .txt_area .t_copy {  font-size:clamp(1.25rem, 0.915rem + 1.67vw, 1.688rem); line-height: 1.65; text-align: center;}
.block_home_about .about_area .txt_area .description_area { margin: 25px auto 0; width: 90%; }
.block_home_about .about_area .txt_area .description_area p+p {margin: 1.5em 0 0;}
}
@media only screen and (max-width: 640px) {
.block_home_about .about_area .img_area { width: 80%;}
.block_home_about .about_area .txt_area { margin: 35px 0 0;}
.block_home_about .about_area .txt_area .description_area { margin: 20px auto 0; width: 95%; }   
}








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

   .block_home_project

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

.block_home_project{ padding: 0 0 120px; position: relative; z-index: 0; }

@media only screen and (max-width: 960px) {
.block_home_project{ padding: 0 0 100px; }
}
@media only screen and (max-width: 738px) {
.block_home_project{ padding: 0 0 80px; }
}
@media only screen and (max-width: 640px) {
.block_home_project{ padding: 0 0 70px;}
}

/* ______ .project_area ______ */
.block_home_project .project_area {padding: 0 7.5%; position: relative; z-index: 0;}
.block_home_project .project_area:after {position: absolute; top: 0; right: 2.5%; left: 2.5%; bottom: 0; content: ""; background: #d9e7e1; z-index: -2;-webkit-border-radius: 10px; border-radius: 10px;}
.block_home_project .project_area:before { position: absolute; top: 0; bottom: 0; right: 2.5%; left: 2.5%; content: ""; background:url("../images/home2025/noise.png") repeat; background-size: 80px 80px;  z-index: -1; opacity: 0.7;-webkit-border-radius: 10px; border-radius: 10px;}

/* .project_item */
.block_home_project .project_area .project_item {display: flex; flex-wrap: wrap;justify-content: space-between;align-items:center; padding: 75px 0;position: relative; z-index: 0; }
.block_home_project .project_area .project_item+.project_item:before { position: absolute; top: 0; right:0; left: 0; height: 0; content: ""; border-top: #b2c4b9 1px solid; z-index: 0;}
/* .img_area */
.block_home_project .project_area .img_area {  width: 55%; display: flex; flex-wrap: wrap;justify-content: flex-start; order: 2; }
/* .txt_area */
.block_home_project .project_area .txt_area { width: 40%; margin-left: 0%; order: 1; position: relative; z-index: 0;}
.block_home_project .project_area .txt_area .t_cat {font-size: 16px;font-family: 'Satoshi-Variable'; text-transform: uppercase; font-weight: 700;letter-spacing: .015em; line-height: 1.05; text-indent: .25em; }
.block_home_project .project_area .txt_area .t_name_en { font-size:33px; font-weight: 600; line-height: 1; letter-spacing: .01em;}
.block_home_project .project_area .txt_area .t_name_jp { margin: 20px 0 0; font-size:28px;font-weight: 700; line-height: 1.45;letter-spacing: .05em; font-feature-settings: "palt";  }
.block_home_project .project_area .txt_area .description_area { margin: 20px 0 0 0.5%; padding: 0 7.5% 0 0; }
.block_home_project .project_area .txt_area .description_area p { line-height: 1.9;}
/* .link_area */
.block_home_project .project_area .link_area { margin: 25px 0 0 0.5%; text-align: left;}
.block_home_project .project_area .btn+.btn { display: inline-block;margin: 0 0 0 10px;}

/* .list_info */
.list_info { margin: 25px 0 0; font-size: 15px; line-height: 1.7;}
.list_info div+div {margin-top: 25px;}
.list_info dt {font-size: 13px;font-family: 'Satoshi-Variable';font-weight: 600;letter-spacing: 0.025em; text-transform: uppercase;}
.list_info dd {margin-top: 5px;letter-spacing: 0.05em;}
.list_info dl div{display: flex; align-items: center; gap:0 10px;}
.list_info dl div {margin-top: 10px;}
.list_info dl div+div {margin-top: 5px;}
.list_info dl dt { width: 90px;background:#c0cfc9;font-size:14px; font-family:  "Inter","Noto Sans JP";font-weight: 400; line-height: 26px; height: 26px; text-align: center;letter-spacing: 0.025em; /*border-radius: 2px;*/}
.list_info dl dd {margin: 0; line-height: 26px;letter-spacing: 0.025em; }
.list_info .btn_googlemap {margin-top: 15px;}
.list_info .btn_googlemap {padding: 0 20px 0 36px; }
.btn_googlemap:after { left: 10px;font-size: 1.2em;font-family: themify;content: "\e693"; border: none;}


@media only screen and (max-width: 960px) {
.block_home_project .project_area {padding: 0 5%; }
.block_home_project .project_area:after { right: 5%; left: 5%; /*-webkit-border-radius: 10px; border-radius: 10px;*/}
.block_home_project .project_area .project_item { flex-direction: column; padding: 70px 7.5%; }
.block_home_project .project_area .project_item+.project_item:before { right:7.5%; left: 7.5%;}
.block_home_project .project_area .img_area {  width: 100%;order: 1; }
.block_home_project .project_area .txt_area { width: 90%; margin-top: 45px; display: flex; flex-direction: column; justify-content: center; order: 2; text-align: center;}
.block_home_project .project_area .txt_area .t_cat {font-size: 16px;font-weight: 700; text-indent: 0; }
.block_home_project .project_area .txt_area .t_name_en { font-size:30px; font-weight: 700;}
.block_home_project .project_area .txt_area .t_name_jp { margin: 20px 0 0; font-size:25px; }
.block_home_project .project_area .txt_area .description_area { margin: 25px 0 0; padding: 0; text-align: left;}
.block_home_project .project_area .txt_area .description_area p { line-height: 1.9;}
.block_home_project .project_area .link_area { margin: 30px 0 0; text-align: center;}

/* .list_info */
.list_info { margin: 30px 0 0; font-size: 15px; line-height: 1.9;}
.list_info div+div {margin-top: 25px;}
.list_info dl div{display: flex; align-items: center; justify-content: center;gap:0 10px;}
.list_info dl div+div {margin-top: 5px;}
.list_info dl dt { width: 90px;font-size:14px;text-align: center;letter-spacing: 0.025em;}
.list_info dl dd {margin: 0; line-height: 26px;letter-spacing: 0.025em; }
.list_info .btn_googlemap {margin-top: 15px;}
.list_info .btn_googlemap {padding: 0 20px 0 36px; }
.btn_googlemap:after { left: 10px;font-size: 1.2em;font-family: themify;content: "\e693"; border: none;}
}
@media only screen and (max-width: 738px) {
.block_home_project .project_area {padding: 0 2.5%; }
.block_home_project .project_area:after { right: 3%; left: 3%;}
.block_home_project .project_area:after,
.block_home_project .project_area:before {-webkit-border-radius: 5px; border-radius: 5px;}
.block_home_project .project_area .project_item { flex-direction: column; padding: 60px 6.5%; }
.block_home_project .project_area .project_item+.project_item:before { right:6.5%; left: 6.5%;}
.block_home_project .project_area .img_area {  width: 100%;order: 1; }
.block_home_project .project_area .txt_area { width: 95%; margin-top: 30px; }
.block_home_project .project_area .txt_area .t_cat {font-size: 15px;}
.block_home_project .project_area .txt_area .t_name_en { font-size:20px; font-weight: 600;}
.block_home_project .project_area .txt_area .t_name_jp { margin: 12px 0 0; font-size:18px; font-weight: 600;}
.block_home_project .project_area .txt_area .description_area { margin: 18px 0 0; padding: 0; text-align: left;}
.block_home_project .project_area .txt_area .description_area p { line-height: 1.8;}
.block_home_project .project_area .link_area { margin: 30px 0 0; text-align: center;}
.list_info { margin: 20px 0 0; font-size: 15px; line-height: 1.75;}
.list_info div+div {margin-top: 25px;}
.list_info dl div{ gap:0 10px;}
.list_info dl div+div {margin-top: 5px;}
.list_info dt {font-size: 14px;}
.list_info dl dt { width: 85px; height: 24px; line-height: 24px; font-size:14px;text-align: center;letter-spacing: 0.025em;}
.list_info dl dd {margin: 0; height: 24px;letter-spacing: 0.025em; }
.list_info .btn_googlemap {margin-top: 15px;}
}





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

   .block_home_connect

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

.block_home_connect { padding: 120px 7.5%;position: relative; z-index: 0; }
.block_home_connect:after { position: absolute; top: 0; left: 0; bottom: 0; right: 0; content: ""; background: url("../images/home2025/dotnoise-light-grey.png") repeat; z-index: -1;}

@media only screen and (max-width:960px) {
.block_home_connect { padding: 100px 5%; }
}
@media only screen and (max-width:738px) {
.block_home_connect { padding: 80px 5%; }
}
@media only screen and (max-width:640px) {
.block_home_connect { padding: 70px 5%; }
}

.block_home_connect .section_wrapper {display: flex; flex-wrap: wrap; justify-content: space-between;}
.block_home_connect .headline { width: 30%;}
.block_home_connect .section_content { width: 67.5%;}
.block_home_connect .connect_item {display: flex; flex-wrap: wrap; justify-content:space-between;align-items: center; padding: 30px 0; border-bottom: #d9d5cd 1px solid;}
.block_home_connect .connect_item:first-child{ border-top: #d9d5cd 1px solid;}
.block_home_connect .connect_item .img_area {width: 50%;display: flex; flex-wrap: wrap; justify-content: space-between; }
.block_home_connect .connect_item .img_item { width: 48.5%;}
.block_home_connect .connect_item .txt_area {width: 50%; display: flex; flex-wrap: wrap; flex-direction: column; justify-content: flex-start; align-items: center;}
.block_home_connect .connect_item .t_ttl_connect {font-size: 18px;font-family: 'Satoshi-Variable';font-weight: 600; letter-spacing: .015em; }
.block_home_connect .connect_item .btn_line { margin-top: 10px; font-size: 15px;}
.block_home_connect .connect_item .btn_line .at { display: inline-block;width: 15px; margin-right:1px; font-weight: 300;}
.block_home_connect .connect_item .btn_line:after {left: 16px;}

@media only screen and (max-width:960px) {
.block_home_connect .headline { width: 30%;}
.block_home_connect .section_content { width: 70%;}
}
@media only screen and (max-width:738px) {
.block_home_connect .section_wrapper {display:block;}
.block_home_connect .headline { width: 100%; text-align: center;}
.block_home_connect .section_content { width: 100%; margin: 50px 0 0;}
.block_home_connect .connect_item {padding: 25px 0;}
.block_home_connect .connect_item .t_ttl_connect {font-size: 17px;}
.block_home_connect .connect_item .btn_line { margin-top: 5px;}
}
@media only screen and (max-width:640px) {
.block_home_connect .section_wrapper {display:block;}
.block_home_connect .headline { width: 100%; text-align: center;}
.block_home_connect .section_content { width: 100%; margin: 50px 0 0;}
.block_home_connect .connect_item {padding: 30px 0;}
.block_home_connect .connect_item:first-child{ border-top: #d9d5cd 1px solid;}
.block_home_connect .connect_item .img_area {width: 100%;display: flex; flex-wrap: wrap; justify-content: space-between; }
.block_home_connect .connect_item .img_item { width: 48.5%;}
.block_home_connect .connect_item .txt_area {width: 100%; margin-top: 15px; }
.block_home_connect .connect_item .t_ttl_connect {font-size: 16px;}
.block_home_connect .connect_item .btn_line { margin-top: 3px; font-size: 14px;}
.block_home_connect .connect_item .btn_line .at {width: 14px;}
.block_home_connect .connect_item .btn_line:after {left: 15px;}
}


