@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500&family=Noto+Serif+JP:wght@400;600&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap");
@import url("global.css");
.sec_intro {
  margin-bottom: 120px;
  position: relative; }
  .sec_intro .text_area {
    width: 50%;
    padding: 30px 0;
    margin: 0 0 0 auto;
    text-align: start; }
    .sec_intro .text_area .txt p + p {
      margin-top: 1em; }
  .sec_intro .ph {
    width: 44%;
    /*min-height: 560px;*/
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
    .sec_intro .ph img {
      width: 100%;
      height: 100%;
      object-position: 70% center;
      position: absolute;
      top: 0;
      left: 0; }
  .sec_intro .catch {
    margin-bottom: 40px;
    font-size: clamp(21px, 3.6vw, 32px);
    font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif; }

.sec_reform_nav {
  background: #f2f2f2;
  padding: 70px 0; }
  .sec_reform_nav .detail_title {
    text-align: center; }
  .sec_reform_nav ul {
    margin-top: 50px; }
    .sec_reform_nav ul li {
      width: 48%; }
      .sec_reform_nav ul li a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 10px 10px 20px;
        background: #fff;
        box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); }
        .sec_reform_nav ul li a .text_area {
          flex: 1;
          padding-right: 10px; }
          .sec_reform_nav ul li a .text_area h4 {
            color: #36638F;
            font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif;
            font-size: clamp(15px, 2.4vw, 21px); }
          .sec_reform_nav ul li a .text_area p {
            margin-bottom: 1px solid #e1e1e1;
            font-size: clamp(12px, 1.9vw, 15px); }
        .sec_reform_nav ul li a .img_area {
          width: 50%; }
        .sec_reform_nav ul li a:hover {
          transform: scale(1.05); }

.sec_reform {
  margin-top: 140px; }
  .sec_reform + .sec_reform {
    padding-top: 80px;
    margin-top: 80px;
    position: relative; }
    .sec_reform + .sec_reform::before {
      content: "";
      max-width: 1100px;
      width: 100%;
      height: 1px;
      display: block;
      background-color: #e1e1e1;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%); }
  .sec_reform .titlearea {
    margin: 50px auto 60px; }
    .sec_reform .titlearea .title {
      text-align: center; }
      .sec_reform .titlearea .title span {
        display: block;
        line-height: 1; }
      .sec_reform .titlearea .title .en {
        margin-bottom: 10px;
        color: #36638F; }
      .sec_reform .titlearea .title .ja {
        font-size: clamp(21px, 3.6vw, 32px);
        font-weight: 400; }
  .sec_reform .lead {
    margin-bottom: 80px;
    position: relative; }
    .sec_reform .lead .text_area {
      width: 50%;
      padding: 30px 0; }
      .sec_reform .lead .text_area .catch {
        margin-bottom: 40px;
        font-size: clamp(18px, 2.4vw, 27px); }
      .sec_reform .lead .text_area .txt ul {
        margin-bottom: 1em; }
        .sec_reform .lead .text_area .txt ul li {
          padding-left: 1em;
          position: relative; }
          .sec_reform .lead .text_area .txt ul li::before {
            content: "";
            width: 10px;
            height: 10px;
            display: block;
            background-color: #e1e1e1;
            border-radius: 500px;
            position: absolute;
            top: 9px;
            left: 0; }
          .sec_reform .lead .text_area .txt ul li + li {
            margin-top: 0.5em; }
      .sec_reform .lead .text_area .txt p + p {
        margin-top: 1em; }
    .sec_reform .lead .ph {
      width: 44%;
      /*min-height: 520px;*/
      height: 100%;
      position: absolute;
      top: 0;
      right: 0; }
      .sec_reform .lead .ph img {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        object-position: center; }
  .sec_reform .renov_item + .renov_item {
    margin-top: 80px; }
  .sec_reform .renov_item .item_inner {
    min-height: 350px; }
    .sec_reform .renov_item .item_inner .ph {
      min-height: 350px; }
  .sec_reform .renov_item:nth-child(even) .item_inner .text_area {
    margin: 0 0 0 auto; }
  .sec_reform .renov_item:nth-child(even) .item_inner .ph {
    left: 0;
    right: auto; }

#partial_reform .sec_reform_menu .detail_title {
  text-align: center; }
#partial_reform .sec_reform_menu .text {
  text-align: center;
  margin-bottom: 40px; }
#partial_reform .sec_reform_menu ul {
  margin: 0 -15px 40px;
  align-items: stretch;
  justify-content: flex-start; }
  #partial_reform .sec_reform_menu ul li {
    width: calc(100% / 3);
    margin-bottom: 40px; }
    #partial_reform .sec_reform_menu ul li .inner {
      padding: 0 15px; }
      #partial_reform .sec_reform_menu ul li .inner .img_area {
        width: 100%;
        margin-bottom: 10px;
        border-radius: 10px 0 10px 0;
        overflow: hidden; }
      #partial_reform .sec_reform_menu ul li .inner .text_area {
        flex: 1;
        padding-right: 10px; }
        #partial_reform .sec_reform_menu ul li .inner .text_area h4 {
          text-align: center;
          color: #36638F;
          margin-bottom: 10px;
          font-size: clamp(17px, 2.4vw, 19px);
          font-weight: bold; }
        #partial_reform .sec_reform_menu ul li .inner .text_area p {
          margin-bottom: 1px solid #e1e1e1;
          font-size: clamp(12px, 1.9vw, 15px); }

#renovation .zonedannetsu .box_about {
  max-width: 800px;
  padding: 40px;
  margin: 0 auto 60px;
  border: 5px solid rgba(54, 99, 143, 0.5);
  border-radius: 20px 0 20px 0;
  box-sizing: border-box; }
  #renovation .zonedannetsu .box_about dl dt {
    text-align: center;
    margin-bottom: 20px;
    color: #36638F;
    font-size: clamp(18px, 2.4vw, 21px);
    font-weight: bold; }
#renovation .zonedannetsu .block_risk {
  background: #f2f2f2;
  padding: 50px 0;
  margin-bottom: 60px; }
  #renovation .zonedannetsu .block_risk .catch {
    text-align: center;
    margin-bottom: 30px;
    font-size: clamp(21px, 2.9vw, 25px);
    font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif; }
  #renovation .zonedannetsu .block_risk p {
    text-align: center;
    margin-bottom: 30px; }
  #renovation .zonedannetsu .block_risk figure {
    width: 100%;
    max-width: 800px;
    margin: 0 auto; }
#renovation .zonedannetsu .plan .detail_title {
  text-align: center; }
#renovation .zonedannetsu .plan .list_plan {
  margin-top: 70px; }
  #renovation .zonedannetsu .plan .list_plan li {
    width: 48%;
    margin-bottom: 50px;
    border: 1px solid #36638F;
    padding: 20px;
    box-sizing: border-box;
    border-radius: 10px 0 10px 0;
    position: relative; }
    #renovation .zonedannetsu .plan .list_plan li h4 {
      text-align: center;
      color: #36638F;
      margin-bottom: 10px;
      font-size: clamp(18px, 2.3vw, 20px);
      font-weight: bold; }
      #renovation .zonedannetsu .plan .list_plan li h4 span {
        border-bottom: 2px solid rgba(54, 99, 143, 0.3); }
      #renovation .zonedannetsu .plan .list_plan li h4 .num {
        display: block;
        line-height: 1.0;
        color: rgba(54, 99, 143, 0.5);
        font-size: 50px;
        font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif;
        font-style: normal; }
    #renovation .zonedannetsu .plan .list_plan li .list_plan_inner .img_area {
      width: 140px;
      margin: 0 auto; }
    #renovation .zonedannetsu .plan .list_plan li .list_plan_inner .text_area {
      flex: 1;
      padding-left: 30px; }
      #renovation .zonedannetsu .plan .list_plan li .list_plan_inner .text_area .point {
        margin-bottom: 10px;
        background: #36638F;
        color: #fff;
        border-radius: 20px;
        text-align: center;
        line-height: 1.0;
        padding: 6px 0; }
        #renovation .zonedannetsu .plan .list_plan li .list_plan_inner .text_area .point.gr {
          background: #707070; }
#renovation .kominka .kodawari {
  padding: 50px;
  background: #f2f2f2;
  box-sizing: border-box; }
  #renovation .kominka .kodawari .catch {
    text-align: center;
    margin-bottom: 30px;
    font-size: clamp(21px, 2.9vw, 25px);
    font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Helvetica, sans-serif; }
  #renovation .kominka .kodawari .f_inner {
    justify-content: flex-end;
    position: relative; }
    #renovation .kominka .kodawari .f_inner .text_area {
      width: 56%;
      padding: 20px 0; }
      #renovation .kominka .kodawari .f_inner .text_area p + p {
        margin-top: 1em; }
    #renovation .kominka .kodawari .f_inner .img_area {
      width: 40%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0; }
      #renovation .kominka .kodawari .f_inner .img_area img {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        object-position: 80% center; }

.sec_form {
  margin-top: 140px;
  background: #f2f2f2;
  padding: 50px 0;
  box-sizing: border-box; }
  .sec_form .sec_title {
    text-align: center; }
  .sec_form p {
    text-align: center; }
    .sec_form p.atention {
      color: #DD0003; }
      .sec_form p.atention br {
        display: none; }
  .sec_form .tel_box {
    background-color: #fff; }

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

 Responsive-Breakpoint-1 (1200px)
 
------------------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-2 ( 960px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 959px) {
  .sec_intro {
    margin-bottom: 0; }
    .sec_intro .text_area {
      width: 100%;
      padding: 0;
      margin: 0 auto 80px; }
    .sec_intro .ph {
      width: 100%;
      height: 25vh;
      position: relative; }
      .sec_intro .ph img {
        object-position: 70% 20%; }
    .sec_intro .catch {
      margin-bottom: 40px;
      font-size: 24px; }

  .sec_reform_nav ul {
    display: block; }
    .sec_reform_nav ul li {
      width: 100%;
      margin-bottom: 40px; }
      .sec_reform_nav ul li:last-of-type {
        margin-bottom: 0; }

  .sec_reform {
    margin-top: 90px; }
    .sec_reform + .sec_reform {
      padding-top: 50px;
      margin-top: 50px; }
      .sec_reform + .sec_reform::before {
        width: calc(100% - 16vw); }
    .sec_reform .titlearea {
      margin: 40px auto; }
    .sec_reform .lead {
      margin-bottom: 60px; }
      .sec_reform .lead .text_area {
        padding: 20px 0; }
        .sec_reform .lead .text_area .catch {
          margin-bottom: 30px; }
      .sec_reform .lead .ph {
        width: 45%; }
    .sec_reform .renov_item + .renov_item {
      margin-top: 50px; }
    .sec_reform .renov_item .item_inner {
      min-height: 320px; }
      .sec_reform .renov_item .item_inner .ph {
        min-height: 320px; }

  #partial_reform .sec_reform_menu ul li {
    width: calc(100% / 2); }

  #renovation .zonedannetsu .box_about {
    margin: 0 auto 50px; }
  #renovation .zonedannetsu .block_risk {
    padding: 40px 0;
    margin-bottom: 50px; }
    #renovation .zonedannetsu .block_risk p {
      text-align: start; }
  #renovation .zonedannetsu .plan .list_plan {
    margin-top: 50px; }
    #renovation .zonedannetsu .plan .list_plan li {
      margin-bottom: 30px; }
      #renovation .zonedannetsu .plan .list_plan li .list_plan_inner {
        display: block; }
        #renovation .zonedannetsu .plan .list_plan li .list_plan_inner .img_area {
          margin: 0 auto 10px; }
        #renovation .zonedannetsu .plan .list_plan li .list_plan_inner .text_area {
          padding-left: 0; }
  #renovation .kominka .kodawari {
    padding: 40px; }
    #renovation .kominka .kodawari .f_inner {
      display: block; }
      #renovation .kominka .kodawari .f_inner .text_area {
        width: 100%;
        padding: 0; }
      #renovation .kominka .kodawari .f_inner .img_area {
        width: 100%;
        height: 0;
        padding-bottom: 45%;
        margin-top: 30px;
        position: relative; }

  .sec_form {
    margin-top: 90px; } }
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-3 ( 644px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 644px) {
  .sec_intro {
    margin-top: 30px; }
    .sec_intro .text_area {
      margin: 0 auto 50px; }
    .sec_intro .ph {
      height: 25vh; }
    .sec_intro .catch {
      margin-bottom: 30px;
      font-size: 20px; }

  #partial_reform .sec_reform_menu .text {
    text-align: justify;
    margin-bottom: 20px; }
  #partial_reform .sec_reform_menu ul {
    margin: 0; }
    #partial_reform .sec_reform_menu ul li {
      width: 100%; }
      #partial_reform .sec_reform_menu ul li .inner {
        padding: 0; }
        #partial_reform .sec_reform_menu ul li .inner .text_area {
          padding-right: 0; }

  .sec_reform_nav {
    padding: 40px 0; }
    .sec_reform_nav ul {
      margin-top: 0; }
      .sec_reform_nav ul li {
        margin-bottom: 20px; }
        .sec_reform_nav ul li a {
          padding: 10px; }

  .sec_reform {
    margin-top: 60px; }
    .sec_reform + .sec_reform {
      padding-top: 50px;
      margin-top: 50px; }
      .sec_reform + .sec_reform::before {
        width: calc(100% - 12vw); }
    .sec_reform .titlearea {
      margin: 0 auto 40px; }
    .sec_reform .lead {
      margin-bottom: 50px; }
      .sec_reform .lead .text_area {
        width: 100%;
        padding: 0; }
        .sec_reform .lead .text_area .catch {
          margin-bottom: 30px;
          font-size: 17px;
          font-weight: 500;
          text-align: center; }
        .sec_reform .lead .text_area .txt ul li::before {
          width: 8px;
          height: 8px;
          top: 8px; }
      .sec_reform .lead .ph {
        width: 100%;
        height: 0;
        padding-bottom: 25vh;
        margin-top: 40px;
        position: relative; }
    .sec_reform .renov_item + .renov_item {
      margin-top: 50px; }
    .sec_reform .renov_item .item_inner {
      min-height: 0; }
      .sec_reform .renov_item .item_inner .ph {
        min-height: 0; }

  #renovation .zonedannetsu .box_about {
    padding: 30px 6vw;
    margin: 0 auto 40px; }
  #renovation .zonedannetsu .block_risk {
    padding: 30px 0;
    margin-bottom: 40px; }
    #renovation .zonedannetsu .block_risk .catch {
      margin-bottom: 20px;
      font-size: 17px; }
  #renovation .zonedannetsu .plan .list_plan {
    margin-top: 30px; }
    #renovation .zonedannetsu .plan .list_plan li {
      width: 100%;
      margin-bottom: 20px; }
  #renovation .kominka .kodawari {
    padding: 30px 6vw; }
    #renovation .kominka .kodawari .catch {
      margin-bottom: 20px;
      font-size: 17px; }
    #renovation .kominka .kodawari .f_inner .img_area {
      padding-bottom: 45%;
      margin-top: 20px; }

  .sec_form {
    margin-top: 70px;
    padding: 40px 0; }
    .sec_form p.atention br {
      display: block; } }
