@charset "UTF-8";
/* スマホ・タブレット
----------------------------------------------------------------------------

	共通

	リフォーム
	注文住宅

--------------------------------------------------------------------------*/
/*1000px*/
/*768px*/
/*640px*/
/*480px*/
/*--------------------------------------------------------------------------
	共通
--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
	リフォーム
--------------------------------------------------------------------------*/
@media screen and (max-width: 1000px) { #reform_top .case { column-gap: 30px; }
  #reform_top .case > h2 { padding: 10px; color: #fff; background: #524b49; text-align: center; grid-column: 1 / -1; }
  #reform_top .case .item .no { padding: 40px 20px 15px 20px; }
  #reform_top .case .item .point { padding: 0 20px 20px 20px; }
  #reform_top .case .item .point_list { padding: 0 20px 40px 20px; }
  #reform_top .case .item .cap { padding: 20px 20px; } }
/*1000px*/
@media screen and (max-width: 900px) { #reform_top .trouble ul li { width: calc(33.33% - 12px); }
  #reform_top .trouble ul li > img { max-width: 220px; }
  #reform_top .trouble ul li h2 br { display: none; } }
/*900px*/
@media screen and (max-width: 768px) { #reform_top .case { display: block; width: 100%; }
  #reform_top .case .item { margin: 40px auto 0 auto; display: block; }
  #reform_top .case .item:first-of-type, #reform_top .case .item:nth-of-type(2) { margin: 40px auto 0 auto; }
  #reform_top .case .item .no { padding: 25px 20px 10px 20px; }
  #reform_top .case .item .point_list { padding: 0 20px 20px 20px; }
  #reform_top .reform_works a { margin: 70px auto 0 auto; } }
/*768px*/
@media screen and (max-width: 640px) { #reform_top .trouble { margin: 40px auto 0 auto; }
  #reform_top .trouble ul li { padding: 20px 10px; width: calc(33.33% - 12px); }
  #reform_top .trouble ul li > img { max-width: 280px; }
  #reform_top .trouble ul li h2 { margin: 10px 0 0 0; font-size: 14px; }
  #reform_top .ph { margin: 50px auto; height: 200px; background: url("../../reform/img/reform_img_2_sp.jpg") no-repeat center center; background-size: cover; }
  #reform_top .case > h2 { padding: 10px; font-size: 19px; }
  #reform_top .case .item { margin: 30px auto 0 auto; }
  #reform_top .case .item:first-of-type, #reform_top .case .item:nth-of-type(2) { margin: 20px auto 0 auto; }
  #reform_top .case .item .no { padding: 25px 15px 10px 15px; }
  #reform_top .case .item .no span { padding: 0 0 0 15px; line-height: 20px; font-size: 17px; }
  #reform_top .case .item .point { padding: 0 15px 15px 15px; }
  #reform_top .case .item .point_list { padding: 0 15px 20px 15px; }
  #reform_top .case .item .point_list li:first-of-type { padding: 15px 0 0 1em; }
  #reform_top .case .item > h4 { padding: 5px 10px; font-size: 17px; }
  #reform_top .case .item .cap { padding: 20px 15px; }
  #reform_top .reform_works a { margin: 50px auto 0 auto; line-height: 60px; font-size: 18px; max-width: 360px; } }
/*640px*/
@media screen and (max-width: 480px) { #reform_top .trouble { padding: 0 5px; }
  #reform_top .trouble ul { justify-content: flex-start; flex-wrap: wrap; }
  #reform_top .trouble ul li { margin: 10px 5px 0 5px; width: calc(50% - 10px); }
  #reform_top .trouble ul li:first-of-type { margin: 0 5px; width: 100%; }
  #reform_top .trouble ul li > img { max-width: 160px; } }
/*480px*/
/*--------------------------------------------------------------------------
	注文住宅
--------------------------------------------------------------------------*/
@media screen and (max-width: 1000px) { #confidence .theme > section { padding: 180px 25px 0 25px; }
  #confidence .theme > section.t01, #confidence .theme > section.t02, #confidence .theme > section.t03 { background-position: center top; background-repeat: no-repeat; background-size: auto 400px; }
  #confidence .theme > section.t01 .cap, #confidence .theme > section.t02 .cap, #confidence .theme > section.t03 .cap { padding: 25px 30px; }
  #confidence .merit { padding: 95px 15px 100px 15px; background: #fff; }
  #confidence .merit h3 { text-align: center; }
  #confidence .merit h3 span { padding: 0 0 20px 0; border-bottom: 3px solid #3281a9; display: inline-block; line-height: 1.4; font-size: 26px; font-weight: 500; letter-spacing: 0.1em; } }
/*1000px*/
@media screen and (max-width: 768px) { #confidence .theme > section.t01 .cap, #confidence .theme > section.t02 .cap, #confidence .theme > section.t03 .cap { padding: 25px 20px; }
  #confidence .theme > section.t01 .cap h2 br, #confidence .theme > section.t02 .cap h2 br, #confidence .theme > section.t03 .cap h2 br { display: none; } }
/*768px*/
@media screen and (max-width: 640px) { #confidence .theme { margin: 0 0 60px 0; }
  #confidence .theme > section { padding: 180px 0 0 0; min-height: inherit; }
  #confidence .theme > section:nth-of-type(2n) .cap { margin: 0 auto; }
  #confidence .theme > section:nth-of-type(n+2) { margin: 40px 0 0 0; }
  #confidence .theme > section.t01, #confidence .theme > section.t02, #confidence .theme > section.t03 { background-size: auto 240px; }
  #confidence .theme > section.t01 .cap, #confidence .theme > section.t02 .cap, #confidence .theme > section.t03 .cap { padding: 20px 15px; max-width: 100%; }
  #confidence .theme > section.t01 .cap h2, #confidence .theme > section.t02 .cap h2, #confidence .theme > section.t03 .cap h2 { font-size: 21px; }
  #confidence .theme > section.t01 .cap p, #confidence .theme > section.t02 .cap p, #confidence .theme > section.t03 .cap p { margin: 15px 0 0 0; padding: 15px 0 0 0; font-size: 14px; }
  #confidence .merit { padding: 40px 15px; }
  #confidence .merit h3 span { padding: 0 0 15px 0; font-size: 21px; }
  #confidence .merit > section { margin: 40px auto 0 auto; padding: 30px 0 0 0; }
  #confidence .merit > section > img { max-width: 240px; }
  #confidence .merit > section h4 { margin: 15px 0 0 0; font-size: 19px; }
  #confidence .merit > section .cap { margin: 25px 0 0 0; padding: 20px 15px; }
  #confidence .merit > section .cap h5 span { padding: 0 0 0 25px; background: url("../img/icon_brown.png") no-repeat left top 11px; background-size: 16px auto; font-size: 16px; } }
/*640px*/
/*--------------------------------------------------------------------------
	家づくりスケジュール
--------------------------------------------------------------------------*/
@media screen and (max-width: 900px) { #schedule .step section .ph, #schedule .step section .cap { display: block; width: 100%; }
  #schedule .step section .ph { margin: 0 auto; padding: 0 0 50px 0; width: 100%; max-width: 260px; } }
/*900px*/
@media screen and (max-width: 640px) { #schedule .intro_parts_box:has(.msg) > p { margin: 0 0 40px 0; }
  #schedule .navi { margin: 30px 0 0 0; }
  #schedule .navi .page_sub_menu.line04 ul li { width: calc(50% - 4px); font-size: 13px; }
  #schedule .navi .page_sub_menu.line04 ul li:nth-of-type(n+3), #schedule .navi .page_sub_menu.line04 ul li:nth-of-type(n+5) { padding: 8px 0 0 0; }
  #schedule .navi .page_sub_menu.line04 ul li a { padding: 8px 5px; }
  #schedule .navi .page_sub_menu.line04 ul li a img { margin: 0 0 5px 0; max-width: 18px; }
  #schedule .step { margin: 60px 0 0 0; padding: 30px 15px; }
  #schedule .step section { margin: 40px auto 0 auto; padding: 30px 0 0 0; }
  #schedule .step section .ph { padding: 0 0 30px 0; }
  #schedule .step section .cap h2 { margin: 0 0 20px 0; }
  #schedule .step section .cap h2 > span { display: block; width: 100%; text-align: center; }
  #schedule .step section .cap h2 > span.no { margin: 0 auto; line-height: 26px; font-size: 16px; }
  #schedule .step section .cap h2 > span.no img { max-width: 26px; }
  #schedule .step section .cap h2 > span.main { margin: 8px 0 10px 0; line-height: 26px; font-size: 15px; }
  #schedule .step section .cap h2 > span.free { margin: 0 auto; display: block; width: 100%; font-size: 13px; max-width: 67px; }
  #schedule .step section .cap p, #schedule .step section .cap ul { font-size: 13px; }
  #schedule .step section .cap p + h2 { margin: 30px 0 10px 0; }
  #schedule .step section .cap ul { margin: 25px 0 0 0; } }
/*640px*/
/*540px*/
/*--------------------------------------------------------------------------
	安心保証
--------------------------------------------------------------------------*/
@media screen and (max-width: 1000px) { #guarantee .support > section { padding: 20px 20px; width: calc(50% - 15px); } }
/*1000px*/
@media screen and (max-width: 640px) { #guarantee .theme { margin: 0 auto 50px auto; background: url("../../confidence/img/guarantee_img_sp.jpg") no-repeat center top; background-size: auto 500px; }
  #guarantee .theme .frm { margin: 0 auto; padding: 40px 0; }
  #guarantee .theme .frm h2 br.sp, #guarantee .theme .frm p br.sp { display: none; }
  #guarantee .theme .frm h2 { margin: 0 0 15px 0; font-size: 19px; }
  #guarantee .theme .frm p:nth-of-type(n+2) { margin: 10px 0 0 0; }
  #guarantee .support { flex-direction: column; justify-content: flex-start; }
  #guarantee .support > section { padding: 15px 20px; width: 100%; }
  #guarantee .support > section:nth-of-type(n+2) { margin: 20px auto 0 auto; }
  #guarantee .support > section h3 { padding: 0 0 0 26px; background: url("../img/icon_brown.png") no-repeat left top 10px; background-size: 14px auto; font-size: 16px; }
  #guarantee .support > section .list.jio { margin: 0 0 15px 0; }
  #guarantee .support > section .list.jio .ph { width: 55px; }
  #guarantee .support > section .list.jio .cap { padding: 0 10px 0 20px; text-align: left; }
  #guarantee .support > section .list.jio .cap dl { font-size: 13px; }
  #guarantee .support > section .list.jio .cap dl dt a span { padding: 0 25px 0 0; background: url("../img/ic_window01_br.png") no-repeat right top 4px; background-size: 13px auto; font-size: 15px; }
  #guarantee .contact { margin: 40px auto 0 auto; }
  #guarantee .contact .contact_tel_info { margin: 15px auto 0 auto; } }
/*640px*/

/*# sourceMappingURL=sp_02.css.map */
