@charset "UTF-8";
/*---------------------------------------------------------------------------

	共通

	リフォーム
	注文住宅

--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
	共通
--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
	リフォーム
--------------------------------------------------------------------------*/
#reform_top .intro_parts_box { padding: 0 10px; }
#reform_top .trouble { margin: 60px auto 0 auto; padding: 0 10px; max-width: 1120px; }
#reform_top .trouble ul { display: flex; width: 100%; text-align: center; justify-content: space-between; }
#reform_top .trouble ul li { padding: 25px 10px; width: calc(33.33% - 27px); background: #fff; border-radius: 10px; }
#reform_top .trouble ul li > img { max-width: 280px; }
#reform_top .trouble ul li h2 { margin: 15px 0 0 0; line-height: 1.8; font-size: 15px; font-weight: 500; }
#reform_top .ph { margin: 70px auto; height: 267px; background: url("../../reform/img/reform_img_2.jpg") no-repeat center center; background-size: cover; max-width: 2000px; }
#reform_top .case { margin: 0 auto; padding: 0 10px; display: grid; width: 100%; max-width: 1120px; grid-template-columns: 1fr 1fr; grid-template-rows: repeat(6, auto); column-gap: 60px; row-gap: 0; /* 親grid(.case)の高さを子grid(.card)のsubgridが継承するため0に */ align-items: start; }
#reform_top .case > h2 { padding: 10px; color: #fff; background: #524b49; font-size: 22px; font-weight: 500; text-align: center; grid-column: 1 / -1; }
#reform_top .case .item { margin: 60px auto 0 auto; display: grid; grid-template-rows: subgrid; grid-auto-columns: 100%; grid-row: span 6; /* 6行分を親から継承 */ }
#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, #reform_top .case .item .point, #reform_top .case .item .point_list { width: 100%; background: #fff; }
#reform_top .case .item .no { padding: 40px 40px 15px 40px; }
#reform_top .case .item .no span { padding: 0 0 0 18px; border-left: 4px solid #9b8f74; display: inline-block; line-height: 24px; font-size: 19px; font-weight: 400; }
#reform_top .case .item .point { padding: 0 40px 20px 40px; line-height: 1.6; grid-row: 2; }
#reform_top .case .item .point_list { padding: 0 40px 40px 40px; grid-row: 3; }
#reform_top .case .item .point_list li { padding: 0 0 0 1em; text-indent: -1em; }
#reform_top .case .item .point_list li:first-of-type { padding: 20px 0 0 1em; border-top: 1px solid #c3bcac; }
#reform_top .case .item > img { display: block; grid-row: 4; }
#reform_top .case .item > h4 { padding: 5px 15px; color: #fff; background: #524b49; font-size: 20px; font-weight: 500; text-align: center; grid-row: 5; }
#reform_top .case .item .cap { padding: 20px 30px; background: #e1ddd5; grid-row: 6; }
#reform_top .reform_works a { margin: 100px auto 0 auto; display: block; width: 100%; line-height: 80px; color: #fff; font-size: 20px; text-align: center; max-width: 400px; }
#reform_top .reform_works a:link, #reform_top .reform_works a:link { background: #524b49; }
#reform_top .reform_works a:active, #reform_top .reform_works a:hover { background: #c1272d; }

/*--------------------------------------------------------------------------
	注文住宅
--------------------------------------------------------------------------*/
#confidence .theme { margin: 0 0 100px 0; }
#confidence .theme > section { padding: 200px 50px 0 50px; min-height: 525px; }
#confidence .theme > section:nth-of-type(2n) .cap { margin: 0 0 0 auto; }
#confidence .theme > section:nth-of-type(n+2) { margin: 120px 0 0 0; }
#confidence .theme > section.t01, #confidence .theme > section.t02, #confidence .theme > section.t03 { background-position: center top; background-repeat: no-repeat; background-size: auto 430px; }
#confidence .theme > section.t01 .cap, #confidence .theme > section.t02 .cap, #confidence .theme > section.t03 .cap { padding: 35px 40px; background: #fff; max-width: 600px; }
#confidence .theme > section.t01 .cap h2, #confidence .theme > section.t02 .cap h2, #confidence .theme > section.t03 .cap h2 { font-size: 26px; font-weight: 500; }
#confidence .theme > section.t01 .cap p, #confidence .theme > section.t02 .cap p, #confidence .theme > section.t03 .cap p { margin: 15px 0 0 0; padding: 20px 0 0 0; border-top: 2px solid #cdc7b9; font-size: 16px; }
#confidence .theme > section.t01 { background-image: url("../../confidence/img/confu_img_1-1.jpg"); }
#confidence .theme > section.t02 { background-image: url("../../confidence/img/confu_img_1-2.jpg"); }
#confidence .theme > section.t03 { background-image: url("../../confidence/img/confu_img_1-3.jpg"); }
#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; }
#confidence .merit > section { margin: 55px auto 0 auto; padding: 55px 0 0 0; border-top: 1px solid #c3bcac; text-align: center; max-width: 900px; }
#confidence .merit > section:first-of-type { padding: 0; border-top: none; }
#confidence .merit > section > img { display: inline-block; max-width: 260px; }
#confidence .merit > section h4 { margin: 20px 0 0 0; font-size: 22px; font-weight: 500; }
#confidence .merit > section .cap { margin: 35px 0 0 0; padding: 25px 30px; background: #e1ddd5; text-align: left; border-radius: 10px; }
#confidence .merit > section .cap h5 { margin: 0 0 5px 0; }
#confidence .merit > section .cap h5 span { padding: 0 0 0 30px; display: inline-block; background: url("../img/icon_brown.png") no-repeat left top 11px; background-size: 16px auto; font-size: 18px; font-weight: 500; }

/*--------------------------------------------------------------------------
	家づくりスケジュール
--------------------------------------------------------------------------*/
#schedule .intro_parts_box:has(.msg) > p { margin: 0 0 70px 0; }
#schedule .intro_parts_box .msg { max-width: 1100px; }
#schedule .navi { margin: 65px 0 0 0; }
#schedule .navi .page_sub_menu ul { justify-content: space-between; }
#schedule .navi .page_sub_menu ul li { padding: 0; }
#schedule .navi .page_sub_menu ul li:nth-of-type(n+5) { padding: 10px 0 0 0; }
#schedule .navi .page_sub_menu ul li a { justify-content: flex-start; }
#schedule .navi .page_sub_menu.line04 ul { justify-content: space-between; }
#schedule .navi .page_sub_menu.line04 ul li { width: calc(25% - 7px); font-size: 15px; text-align: center; }
#schedule .navi .page_sub_menu.line04 ul li a { padding: 17px 10px 15px 10px; }
#schedule .navi .page_sub_menu.line04 ul li a img { margin: 0 0 10px 0; display: inline-block; max-width: 30px; }
#schedule .step { margin: 100px 0 0 0; padding: 95px 15px 100px 15px; background: #fff; }
#schedule .step section { margin: 80px auto 0 auto; padding: 80px 0 0 0; border-top: 1px solid #c3bcac; display: table; width: 100%; max-width: 900px; table-layout: fixed; }
#schedule .step section:first-of-type { margin: 0 auto; padding: 0; border-top: none; }
#schedule .step section .ph, #schedule .step section .cap { display: table-cell; vertical-align: top; }
#schedule .step section .ph { padding: 0 50px 0 0; width: 340px; }
#schedule .step section .cap h2 { margin: 0 0 10px 0; line-height: 0; font-size: 0; font-weight: 500; }
#schedule .step section .cap h2 > span { display: inline-block; vertical-align: top; }
#schedule .step section .cap h2 > span.no { margin: 0 10px 0 0; line-height: 32px; font-size: 18px; }
#schedule .step section .cap h2 > span.no img { max-width: 32px; }
#schedule .step section .cap h2 > span.main { margin: 0 30px 0 0; line-height: 32px; font-size: 18px; }
#schedule .step section .cap h2 > span.free { margin: 3px 0 0 0; display: inline-block; width: 67px; line-height: 23px; color: #fff; background: #c1272d; font-size: 14px; text-align: center; }
#schedule .step section .cap p, #schedule .step section .cap ul { font-size: 15px; }
#schedule .step section .cap p + h2 { margin: 50px 0 10px 0; }
#schedule .step section .cap ul { margin: 35px 0 0 0; }

/*--------------------------------------------------------------------------
	安心保証
--------------------------------------------------------------------------*/
#guarantee .theme { margin: 0 auto 100px auto; padding: 0 10px; background: url("../../confidence/img/guarantee_img.jpg") no-repeat center top; background-size: auto 450px; max-width: 2000px; }
#guarantee .theme .frm { margin: 0 auto; padding: 75px 0; max-width: 1100px; }
#guarantee .theme .frm h2, #guarantee .theme .frm p { max-width: 600px; }
#guarantee .theme .frm h2 { margin: 0 0 25px 0; line-height: 1.6; font-size: 23px; font-weight: 500; }
#guarantee .theme .frm p:nth-of-type(n+2) { margin: 20px 0 0 0; }
#guarantee .support { margin: 0 auto; padding: 0 10px; display: flex; justify-content: space-between; max-width: 1120px; }
#guarantee .support > section { padding: 27px 30px; width: calc(50% - 30px); background: #fff; }
#guarantee .support > section h3 { margin: 0 0 10px 0; padding: 0 0 0 30px; background: url("../img/icon_brown.png") no-repeat left top 11px; background-size: 16px auto; font-size: 18px; font-weight: 500; }
#guarantee .support > section .list { display: table; width: 100%; table-layout: fixed; }
#guarantee .support > section .list .ph, #guarantee .support > section .list .cap { display: table-cell; vertical-align: top; }
#guarantee .support > section .list.jio { margin: 0 0 15px 0; }
#guarantee .support > section .list.jio .ph { width: 70px; }
#guarantee .support > section .list.jio .cap { padding: 0 15px; vertical-align: middle; text-align: center; }
#guarantee .support > section .list.jio .cap dl { font-size: 15px; }
#guarantee .support > section .list.jio .cap dl dt a { display: block; }
#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: 15px auto; font-size: 16px; }
#guarantee .support > section .list.jio .cap dl dt a:link, #guarantee .support > section .list.jio .cap dl dt a:visited { color: #004792; }
#guarantee .support > section .list.jio .cap dl dt a:active, #guarantee .support > section .list.jio .cap dl dt a:hover { color: #004792; text-decoration: underline; }
#guarantee .contact { margin: 70px auto 0 auto; padding: 0 10px; max-width: 620px; }
#guarantee .contact .contact_tel_info { margin: 24px auto 0 auto; }

/*# sourceMappingURL=sub_02.css.map */
