
/* =========================================================
   リフォームページ共通CSS
   対応ページ：
   ・1Dayリフォーム（#oneday-reform）
   ・フルリフォーム（#full-reform-page）

   今後ページを増やす場合も、このファイルへ追記できます。
   ========================================================= */


/* =========================================================
   1. 共通設定
   ========================================================= */

#oneday-reform,
#oneday-reform *,
#full-reform-page,
#full-reform-page *{
  box-sizing:border-box !important;
}

#oneday-reform,
#full-reform-page{
  display:block !important;
  width:100% !important;
  max-width:700px !important;
  margin:0 auto !important;
  background:#ffffff !important;
  color:#333333 !important;
  font-family:
    "Yu Gothic",
    "YuGothic",
    "Hiragino Kaku Gothic ProN",
    "Meiryo",
    sans-serif !important;
  overflow:visible !important;
}

#oneday-reform img,
#full-reform-page img{
  display:block !important;
  max-width:100% !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}


/* =========================================================
   2. 共通メインタイトル
   ========================================================= */

#oneday-reform .od-main-title,
#full-reform-page .fr-main-title{
  display:block !important;
  width:calc(100% - 4px) !important;
  margin:0 2px 18px !important;
  padding:6px 42px 7px !important;
  border:1px solid #cccccc !important;
  border-radius:0 !important;
  background:
    linear-gradient(
      to bottom,
      #ffffff 0%,
      #ffffff 45%,
      #eeeeee 100%
    ) !important;
  box-shadow:0 3px 4px rgba(0,0,0,.4) !important;
  color:#555555 !important;
  font-size:27px !important;
  font-weight:400 !important;
  line-height:1.25 !important;
  text-align:left !important;
}


/* =========================================================
   3. 共通の点線区切り
   ========================================================= */

#oneday-reform .od-divider,
#full-reform-page .fr-divider{
  display:block !important;
  height:10px !important;
  padding:0 !important;
  border:0 !important;
  background-image:
    radial-gradient(circle, #e5c69e 3px, transparent 4px) !important;
  background-size:10px 10px !important;
  background-repeat:repeat-x !important;
  background-position:left center !important;
}


/* =========================================================
   4. 1Dayリフォーム
   ========================================================= */

#oneday-reform{
  padding:8px 0 40px !important;
  line-height:1.6 !important;
}


/* 上部説明 */

#oneday-reform .od-intro{
  display:grid !important;
  grid-template-columns:150px minmax(0,1fr) !important;
  column-gap:18px !important;
  align-items:start !important;
  width:calc(100% - 42px) !important;
  margin:0 auto 18px !important;
  padding:0 !important;
}

#oneday-reform .od-family-image{
  width:145px !important;
  margin:0 auto !important;
}

#oneday-reform .od-intro-content{
  display:block !important;
  position:relative !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:5px 0 0 !important;
}

#oneday-reform .od-intro-heading{
  display:block !important;
  width:calc(100% - 90px) !important;
  margin:0 0 7px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#56a000 !important;
  font-size:24px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  text-align:left !important;
  white-space:normal !important;
}

#oneday-reform .od-logo{
  position:absolute !important;
  top:0 !important;
  right:5px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:72px !important;
  height:72px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:50% !important;
  background:#69ad00 !important;
  box-shadow:inset 0 0 0 4px #ffffff !important;
  outline:3px dotted #ffd800 !important;
  color:#ffffff !important;
  font-family:Arial, sans-serif !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.05 !important;
  text-align:center !important;
}

#oneday-reform .od-intro-text{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:#333333 !important;
  font-size:14px !important;
  line-height:1.55 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}


/* 4列カード */

#oneday-reform .od-grid{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  column-gap:28px !important;
  row-gap:28px !important;
  align-items:start !important;
  width:100% !important;
  margin:0 !important;
  padding:0 2px !important;
}

#oneday-reform .od-card{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
}

#oneday-reform .od-card-title{
  display:block !important;
  position:relative !important;
  width:100% !important;
  min-height:24px !important;
  margin:0 0 6px !important;
  padding:0 0 0 15px !important;
  border:0 !important;
  background:transparent !important;
  color:#222222 !important;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  text-align:left !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

#oneday-reform .od-card-title::before{
  content:"" !important;
  position:absolute !important;
  top:3px !important;
  left:1px !important;
  width:11px !important;
  height:14px !important;
  background:#5da000 !important;
}

#oneday-reform .od-card-image-wrap{
  display:block !important;
  width:100% !important;
  height:110px !important;
  margin:0 0 7px !important;
  padding:0 !important;
  border:2px solid #e6c69b !important;
  background:#f5f5f5 !important;
  overflow:hidden !important;
}

#oneday-reform .od-card-image{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center center !important;
}

#oneday-reform .od-card-text{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:#333333 !important;
  font-size:12px !important;
  line-height:1.5 !important;
  text-align:left !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}

#oneday-reform .od-divider{
  width:100% !important;
  margin:12px 0 14px !important;
}


/* 最後の家族イラスト */

#oneday-reform .od-senior-wrap{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  grid-column:span 2 !important;
  width:100% !important;
  min-width:0 !important;
  min-height:190px !important;
  margin:0 !important;
  padding:0 !important;
}

#oneday-reform .od-senior-image{
  width:145px !important;
  margin:0 auto !important;
}


/* =========================================================
   5. フルリフォーム
   ========================================================= */

#full-reform-page{
  padding:8px 0 45px !important;
  line-height:1.65 !important;
}


/* フルリフォームのポイント */

#full-reform-page .fr-intro{
  display:grid !important;
  grid-template-columns:200px minmax(0,1fr) !important;
  column-gap:14px !important;
  align-items:start !important;
  width:100% !important;
  margin:0 0 25px !important;
  padding:0 25px !important;
}

#full-reform-page .fr-family-image{
  width:195px !important;
  margin:0 auto !important;
}

#full-reform-page .fr-intro-content{
  min-width:0 !important;
  padding-top:4px !important;
}

#full-reform-page .fr-green-title{
  margin:0 0 8px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#56a000 !important;
  font-size:30px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  text-align:left !important;
}

#full-reform-page .fr-text{
  margin:0 !important;
  padding:0 !important;
  color:#333333 !important;
  font-size:14px !important;
  line-height:1.6 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}


/* 間取り説明 */

#full-reform-page .fr-orange-section{
  width:100% !important;
  margin:0 0 20px !important;
  padding:0 45px !important;
}

#full-reform-page .fr-orange-title{
  margin:0 0 7px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#f28a00 !important;
  font-size:25px !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  text-align:left !important;
}

#full-reform-page .fr-flow-image{
  width:700px !important;
  max-width:100% !important;
  margin:0 auto 24px !important;
}


/* 内装イメージ */

#full-reform-page .fr-interior-section{
  width:100% !important;
  margin:0 !important;
  padding:0 45px !important;
}

#full-reform-page .fr-interior-title{
  margin:0 0 4px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#f28a00 !important;
  font-size:25px !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  text-align:left !important;
}

#full-reform-page .fr-interior-lead{
  margin:0 0 12px !important;
  padding:0 !important;
  color:#333333 !important;
  font-size:14px !important;
  line-height:1.55 !important;
}

#full-reform-page .fr-interior-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  column-gap:30px !important;
  row-gap:16px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#full-reform-page .fr-interior-card{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
}

#full-reform-page .fr-interior-image{
  width:100% !important;
  height:208px !important;
  max-width:none !important;
  margin:0 0 5px !important;
  object-fit:cover !important;
  object-position:center center !important;
}

#full-reform-page .fr-interior-name{
  position:relative !important;
  margin:0 !important;
  padding:0 0 0 15px !important;
  color:#222222 !important;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1.4 !important;
}

#full-reform-page .fr-interior-name::before{
  content:"" !important;
  position:absolute !important;
  top:3px !important;
  left:1px !important;
  width:12px !important;
  height:14px !important;
  background:#59a000 !important;
}

#full-reform-page .fr-link-message{
  margin:22px 0 0 !important;
  padding:0 !important;
  color:#f28a00 !important;
  font-size:20px !important;
  font-weight:700 !important;
  line-height:1.4 !important;
}

#full-reform-page .fr-divider{
  width:calc(100% - 90px) !important;
  margin:25px auto 17px !important;
}


/* DIY */

#full-reform-page .fr-diy-section{
  width:100% !important;
  margin:0 !important;
  padding:0 45px !important;
}

#full-reform-page .fr-diy-title{
  position:relative !important;
  margin:0 0 10px !important;
  padding:0 0 0 22px !important;
  border:0 !important;
  background:transparent !important;
  color:#111111 !important;
  font-size:24px !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  text-align:left !important;
}

#full-reform-page .fr-diy-title::before{
  content:"" !important;
  position:absolute !important;
  top:4px !important;
  left:0 !important;
  width:19px !important;
  height:19px !important;
  background:#c70018 !important;
}

#full-reform-page .fr-diy-content{
  display:grid !important;
  grid-template-columns:198px minmax(0,1fr) !important;
  column-gap:18px !important;
  align-items:start !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#full-reform-page .fr-diy-image{
  width:198px !important;
}

#full-reform-page .fr-diy-text{
  margin:0 !important;
  padding:0 !important;
  color:#333333 !important;
  font-size:14px !important;
  line-height:1.65 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}


/* =========================================================
   6. タブレット・スマートフォン
   640px以下
   ========================================================= */

@media screen and (max-width:640px){

  #oneday-reform,
  #full-reform-page{
    width:100% !important;
    max-width:100% !important;
    padding:8px 14px 35px !important;
  }

  #oneday-reform .od-main-title,
  #full-reform-page .fr-main-title{
    width:100% !important;
    margin:0 0 18px !important;
    padding:7px 14px !important;
    font-size:23px !important;
  }


  /* 1Day */

  #oneday-reform .od-intro{
    grid-template-columns:1fr !important;
    row-gap:10px !important;
    width:100% !important;
    margin:0 0 18px !important;
  }

  #oneday-reform .od-family-image{
    width:140px !important;
  }

  #oneday-reform .od-intro-content{
    width:100% !important;
  }

  #oneday-reform .od-intro-heading{
    width:100% !important;
    font-size:21px !important;
    text-align:center !important;
  }

  #oneday-reform .od-logo{
    position:static !important;
    width:68px !important;
    height:68px !important;
    margin:12px auto !important;
  }

  #oneday-reform .od-intro-text{
    width:100% !important;
    font-size:14px !important;
  }

  #oneday-reform .od-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    column-gap:16px !important;
    row-gap:24px !important;
    width:100% !important;
    padding:0 !important;
  }

  #oneday-reform .od-card-title{
    font-size:14px !important;
  }

  #oneday-reform .od-card-image-wrap{
    height:auto !important;
    aspect-ratio:4 / 3 !important;
  }

  #oneday-reform .od-card-text{
    font-size:13px !important;
  }

  #oneday-reform .od-senior-wrap{
    grid-column:span 2 !important;
    min-height:0 !important;
  }


  /* フルリフォーム */

  #full-reform-page .fr-intro{
    grid-template-columns:1fr !important;
    row-gap:12px !important;
    padding:0 !important;
  }

  #full-reform-page .fr-family-image{
    width:190px !important;
  }

  #full-reform-page .fr-green-title{
    font-size:24px !important;
    text-align:center !important;
  }

  #full-reform-page .fr-orange-section,
  #full-reform-page .fr-interior-section,
  #full-reform-page .fr-diy-section{
    padding:0 !important;
  }

  #full-reform-page .fr-orange-title,
  #full-reform-page .fr-interior-title{
    font-size:21px !important;
  }

  #full-reform-page .fr-interior-grid{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }

  #full-reform-page .fr-interior-image{
    height:auto !important;
    aspect-ratio:293 / 209 !important;
  }

  #full-reform-page .fr-link-message{
    font-size:17px !important;
  }

  #full-reform-page .fr-divider{
    width:100% !important;
  }

  #full-reform-page .fr-diy-title{
    font-size:21px !important;
  }

  #full-reform-page .fr-diy-content{
    grid-template-columns:1fr !important;
    row-gap:12px !important;
  }

  #full-reform-page .fr-diy-image{
    width:198px !important;
    margin:0 auto !important;
  }
  /* =========================================================
   フルリフォーム 各部位へのリンク
   ========================================================= */

#full-reform-page .fr-point-links{
    display:grid !important;
    grid-template-columns:repeat(2,1fr) !important;
    column-gap:10px !important;
    row-gap:2px !important;      /* ←8px→2px */

    width:100% !important;
    margin:10px 0 15px !important;   /* ←上下も少し詰める */
    padding:0 45px !important;
}

#full-reform-page .fr-point-links a{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    line-height:0 !important;    /* ←画像下の隙間を消す */
}

#full-reform-page .fr-point-links img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
}
}


/* =========================================================
   7. スマートフォン
   420px以下
   ========================================================= */

@media screen and (max-width:420px){

  #oneday-reform .od-grid{
    grid-template-columns:1fr !important;
  }

  #oneday-reform .od-senior-wrap{
    grid-column:span 1 !important;
  }
}
