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

.hc .mb{ padding-bottom: 0;}

.section_billboard{ margin: 0; padding: 0; width: 100%; height: 750px; background: url("../img/billboard01.jpg") no-repeat center center / cover;}
.section_billboard img{ display: block; width: 100px; max-height: 100%; margin: 0 0 0 auto;}
@media screen and ( max-width: 480px ) {
  .section_billboard{ display: none;}
  .section_billboard_sp{ margin: 0; padding: 0;}
  .section_billboard_sp img{ display: block;}
}

.section_cp img{ max-width: 728px; margin: 0 auto; display: block;}
.section_cp .mb{ margin-bottom: 25px; padding: 2.0rem 0;}

.section_project{ margin: 0; padding: 0; background: #ebebe9; position: relative;}
.section_project .mb{ padding-top: 0; position: relative; top: -25px;}
.section_project .section_title{ margin: 0; position: relative; ;}
.section_project .flbox11{ display: flex; gap: 0 4.0em; flex-direction:row-reverse;}
.section_project .flbox11 > *{ margin-top: 0;}
.section_project .flbox11 .image{ flex: 0 0 360px;}
.section_project .flbox11 h3 img{ width: 630px;}
.section_project .flbox12{ display: flex; gap: 0 2.0em; }
.section_project .flbox12 article{ display: block; background: rgba(255,255,255,0.7); flex: 1; margin: 2.0em 0 0 0; padding: 0 0 2rem 0; position: relative;}
.section_project .flbox12 .sub{ margin: -13px 0 0 0; padding: 0;}
.section_project .flbox12 .sub img{ display: block; margin: 0 auto; height: 26px; width: auto;}
.section_project .flbox12 .ttl{ text-align: center; font-size: 138%; border-bottom: solid 1px #000;}
.section_project .flbox12 h3{ text-align: center; padding: 0 1.0rem; font-size: 156%; font-weight: bold; font-family: "Noto Sans JP", "sans-serif";}
.section_project .flbox12 .body{ padding: 0 1.0rem; text-align: center;}
.section_architect{ margin: 0; padding: 0; background: #ebebe9;}
.section_architect .mb_wide{ padding-top: 0; }
@media screen and ( max-width: 480px ) {
  .section_cp .mb{ margin-bottom: 18px; padding: 3.0rem 0;}
  .section_project .mb{ padding-top: 0; position: relative; top: -18px;}
  .section_project .flbox11{ display: block;}
  .section_project .flbox12{ display: block;}
  .section_project .flbox11 .image{ width: 80%; margin: 3.0rem auto 0 auto;}
  .section_project .flbox12 article{ margin-top: 3.0rem;}
  .section_project .flbox12 .sub{ margin: 0 0 0 0; padding: 0; position: relative;}
  .section_project .flbox12 .sub img{ height: 21px; position: relative; top: -10px; }
  .section_project .flbox12 .body{ font-size: 86%; line-height: 1.8;}
}

.section_architect{}
.section_architect .flbox11{ display: flex; gap: 0 4.0em; flex-direction:row-reverse;}
.section_architect .flbox11 .image{ flex: 0 0 182px;}
.section_architect .flbox11 h3{ font-family:"Noto Sans JP", "sans-serif"; font-size: 156%; font-weight: bold;}
.section_architect .flbox11 .body{ line-height: 1.8;}
.section_architect .person{ margin: 3.0rem 0 0 0;}
.section_architect .person h4{ font-size: 123%;}
.section_architect .person .body{ margin: 0; font-size: 77%; line-height: 1.5;}
@media screen and ( max-width: 480px ) {
  .section_architect .flbox11{ display: block;}
  .section_architect .flbox11 .image{ width: 50%; margin: 2.0rem auto 0 auto;}
  .section_architect .flbox11 h3{ text-align: center;}
}

.section_model{}
.section_model h3{ width:538px;}
.section_model .figure11{ margin: 3.0em auto 0 auto; width: 800px; }
.section_model .figure11 img{ width: 100%;}
.section_model .title11{ margin: 3.0rem auto 0 auto; width: 830px;}
.section_model .flbox11{ display: flex; gap: 0 2.0em;}
.section_model .flbox11 .content{ flex: 0 0 340px; line-height: 1.5;}
@media screen and ( max-width: 480px ) {
  .section_model{}
  .section_model .mb{ padding: 3.0rem 0;}
  .section_model h3{ width: auto;}
  .section_model .figure11{ width: auto;}
  .section_model .title11{ width: auto;}
  .section_model .flbox11{ display: block;}
  .section_model .flbox11 .content figure{ display: block; width: 70%; margin-left: auto; margin-right: auto;}
}

/*

.section_concept{ margin: 0; padding: 0; background: url("../img/index/concept_bg.webp") no-repeat center top; text-align: center;}
.section_concept h2{ font-size:180%;  font-family: "Zen Old Mincho","Noto Serif JP", "serif"; display: flex; flex-direction: column; align-items: flex-end; margin: 0 auto; width: fit-content; line-height: 1.5;}
.section_concept h2 sup{ font-size: 50%;}
.section_concept h2 .caption{ font-size: 50%;}
.section_concept h1{ width: 450px; margin: 6.0rem auto 0 auto;}
.section_concept .copy{ font-size: 180%; font-family: "Zen Old Mincho","Noto Serif JP", "serif"; line-height: 1.5;}
.section_concept .body{ font-size: 93%; line-height: 1.7; }
@media screen and ( max-width: 480px ) {
  .section_concept{ background-size: cover;}
  .section_concept h1{ width: 70%; margin-top: 3.0rem;}
  .section_concept .body{ font-size: 86%; text-align: left;}
}

.section_works{ margin: 0; padding: 0;}
.section_works header{ margin: 0; padding: 0; background: url("../img/index/access_bg.webp") repeat-y top center;}
.section_works header h2{ margin: 0 auto; padding: 0; width: 200px;}
.section_works header h2 img{ display: block;}
.section_works .mb{ display: flex; flex-wrap: wrap; margin-top: 0; padding: 0; width: 100%; max-width: none;}
.section_works article{ margin: 0; flex: 0 0 50%;}
.section_works a{ color: #000; text-decoration: none;}
.section_works article figure{ margin: 0; position: relative;}
.section_works article img{ display: block;}
.section_works article figcaption{ margin: 0; padding: 1.0em; position: absolute; top: 0; left: 0; font-family: "Zen Old Mincho","Noto Serif JP", "serif";}
.section_works .white{ color: #FFF;}
@media screen and ( max-width: 480px ) {
  .section_works header h2{ width: 40%;}
  .section_works .mb{ display: block; padding: 0; margin: 0;}
}

.section_access{ margin: 0; padding: 0; background: url("../img/index/access_bg.webp") repeat-y top center;}
.section_access .mb{ display: flex; align-items: center;}
.section_access figure{ margin: 0; flex: 0 0 60%;}
.section_access .content{ margin: 0; flex: 0 0 40%; text-align: center;}
.section_access h2{ margin: 0 auto; width: 380px;}
@media screen and ( max-width: 480px ) {
  .section_access .mb{ display: block;}
  .section_access h2{ margin: 2.0rem auto 0 auto; width: 70%;}
}

.section_parse{ margin: 0; padding: 0;}
.section_parse img{ display: block; margin: 0; padding: 0; width: 100%;}

.section_kukaku{ margin: 0; padding: 0; background: #FFF;}
.section_kukaku h2{ font-size: 196%; font-family: "Zen Old Mincho","Noto Serif JP", "serif";}
.section_kukaku .kukaku_flbox{ display: flex; align-items: center;}
.section_kukaku .kukaku_flbox *{ margin-top: 0;}
.section_kukaku .content{ flex: 0 0 25%;}
.section_kukaku .body{ font-size: 93%; line-height: 1.5;}
.section_kukaku .model{ width: 90%; margin-top: 1.0em;}
.section_kukaku .figure{ flex: 0 0 70%;}
@media screen and ( max-width: 480px ) {
  .section_kukaku h2{ text-align: center;}
  .section_kukaku .kukaku_flbox{ display: block;}
  .section_kukaku .body{ text-align: center;}
  .section_kukaku .model{ display: none;}
  .section_kukaku .figure{ margin-top: 1.0rem;}
  .section_kukaku .model_sp{ width: 60%; margin-left: auto; margin-right: auto;}
}

.section_info{ margin: 0; padding: 0; }
.section_info .mb{ border-top: solid 1px #000;}
.section_info h2{ font-size: 148%; text-align: center; font-family: "Zen Old Mincho","Noto Serif JP", "serif";}
.section_info article{ margin: 1.0em 0 0 0; text-align: center;}
.section_info article h3{ font-size: 148%; font-weight: bold; margin: 0;}
.section_info article .body{ font-size: 93%;}
@media screen and ( max-width: 480px ) {
  .section_info article h3{ line-height: 1.5;}
  .section_info article .body{ text-align: left;}
}
*/

.section_contact{ margin: 0; padding: 0; background: #ededee;}
.section_contact h2{ font-size: 148%; text-align: center; font-family: "Zen Old Mincho","Noto Serif JP", "serif";}
.section_contact .note{ font-size: 93%; text-align: center;}

.table_form{ font-size: 93%; border-top: solid 1px #666;}
.table_form th{ margin: 0; font-weight: normal; padding: 0.7em 1.0em 0.7em 0; vertical-align: middle; border-bottom: solid 1px #666; white-space: nowrap;}
.table_form td{ margin: 0; font-weight: normal; padding: 0.7em 0 0.7em 0; vertical-align: middle; border-bottom: solid 1px #666;}
.table_form .note{ text-align: left; font-size: 86%; line-height: 1.5; color: #333;}
.table_form p{ margin-top: 0;}
.section_contact .submit_area{ text-align: center; margin-top: 3.0em;}
.section_contact .btn{ margin-left: auto; margin-right: auto; background: #717071; padding: 0.7em 3.0em; border-radius: 0.3em;}
@media screen and ( max-width: 480px ) {
  .section_contact .note{ text-align: left;}
  .table_form,
  .table_form tbody,
  .table_form th,
  .table_form td{ display: block;}
  .table_form th{ border-bottom: none; padding-bottom: 0;}
  .table_form td{ padding-top: 0;}
  .section_contact .submit_area{ margin-top: 1.0em;}
}

.section_review{ font-family: "Zen Old Mincho","Noto Serif JP", "serif"; line-height: 1.5;}
.section_review h2{ font-size: 148%; padding: 0.7em 0; text-align: center; font-family: "Zen Old Mincho","Noto Serif JP", "serif"; border-bottom: solid 1px #000;}
.section_review h3{ font-size: 116%; font-weight: bold; text-align: center; padding: 0.5em 0; font-family: 'Noto Sans JP', "sans-serif";}
.section_review .content01{ display: flex; margin: 0;}
.section_review .content01 .body{ flex: 0 0 48%; }
.section_review .content01 .body >*:first-child{ margin-top: 0;}
.section_review .content01 .figure{ flex: 0 0 48%; margin-left: auto;  background: url("../img/index/review11.jpg") no-repeat center bottom / cover;}

.section_review .content02{}
.section_review .content02 .figure{ width: 65%; margin-left: auto; margin-right: auto;}

.section_review .faq{}
.section_review dt{ display: flex; margin: 1.5em 0 0 0; align-items: center;font-family: 'Noto Sans JP', "sans-serif"; font-weight: bold;}
.section_review dt::before{ display: block; content: ''; flex: 0 0 3.0em; width: 3.0em; height: 3.0em; background: url("../img/index/review_q.svg") no-repeat center center / contain; margin-right: 1.0em; }
.section_review dd{ display: flex; margin: 1.5em 0 0 0; }
.section_review dd::before{ display: block; content: ''; flex: 0 0 3.0em; width: 3.0em; height: 3.0em; background: url("../img/index/review_a.svg") no-repeat center center / contain; margin-right: 1.0em; }
.section_review dd div{ margin: 0;}

.section_review .note{ background: #e5e5e6; padding: 1.0em 2.0em; text-align: center; margin-top: 3.0em;}

@media screen and ( max-width: 480px ) {
  .section_review .content01{ display: block;}
  .section_review .content01 .figure{ padding: 125% 0 0 0;}
  .section_review .content02 .figure{ width: 100%;}
  
  .section_review dt::before,
  .section_review dd::before{ flex: 0 0 2.0em; width: 2.0em; height: 2.0em;}
  .section_review dd div >*:first-child{ margin-top: 0;}
  .section_review .note{ text-align: left; padding: 1.0em;}
}


