@charset "UTF-8";

/* ++++++++++++++++++++ BASE ++++++++++++++++++++ */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
html,
body {
	line-height: 1.6;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
	font-size: 16px;
	min-width: 1200px;
	-webkit-text-size-adjust: 100%;
	margin:0 auto;
	padding:0;
}
a {
	color: #0081cc;
	text-decoration: none;
}
a:hover {
	color: #0097d6;
}
a:active,
a:focus {
	outline: 0;
}
img {
	vertical-align: bottom;
}
tr,
th,
td {
	font-weight: normal;
}
[id="NowLoading"] * {
	-webkit-transition: none !important;
	-o-transition: none !important;
	transition: none !important;
}
/* clearfix */
.clearfix::before,
.clearfix::after
{
	display: block;
	clear: both;
	content: "";
}
.pc_none {
	display:none!important;
}
.sp_none {
}

/* ++++++++++++++++++++ 共通 ++++++++++++++++++++ */
.pcbr {
}
.spbr {
	display:none;
}
.pagecenter {
	display: block;
	width:1080px;
	margin:0 auto;
	padding:0;
}
.top_center {
	display: block;
	width:1180px;
	margin:0 auto;
	padding:0;
}

/* ++++++++++++++++++++ HEADER ++++++++++++++++++++ */
#header {
	display: block;
	width:100%;
	margin:10px auto 0 auto;
	padding:0;
}
#header ul.hd_title {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:0;
	padding:0;
	list-style:none;
}
#header ul.hd_title li.left {
	display: block;
	width:680px;
	margin:0;
	padding:0;
	text-align:left;
}
#header ul.hd_title li.right {
	display: block;
	width:380px;
	margin:0;
	padding:0;
	text-align:right;
}
#header h1.hd_logo {
	display: block;
	width:332px;
	margin:4px 0 0 0;
	padding:0;
}
#header h1.hd_logo img {
	width:100%;
	height:auto;
}
#header h2 {
	display: block;
	margin:0 auto;
	padding:0;
	font-size:14px;
	font-weight:bold;
	color:#21445b;
}
#header h2 span {
	color:#c60028;
}
#header .hd_title {
	display: block;
	width:1180px;
	margin:0 auto;
	padding:0;
}
#header ul.hd_title li.right ul.hd_time {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:15px 0 0 0;
	padding:0;
	text-align:right;
	list-style:none;
}
#header ul.hd_title li.right ul.hd_time li {
	display: block;
	width:265px;
	text-align:center;
	font-size:14px;
	color:#21445b;
	line-height:1.1em;
}
#header ul.hd_title li.right ul.hd_time li.left {
	width:110px;
}
#header ul.hd_title li.right ul.hd_time li.right {
	width:265px;
}
#header ul.hd_title li.right ul.hd_time li img {
	width:100%;
	height:auto;
}
#header ul.hd_title li.right a.hd_contact,
.flow_contact a.hd_contact,
.in_page a.hd_contact {
	display: inline-block;
	margin: 5px 0 0;
	padding:10px 60px 10px 45px;
	font-size:16px;
	color:#fff;
	font-weight:bold;
	line-height:1.1em;
	background-color:#c60028;
	border-radius:20px;
	position: relative;
}
#header ul.hd_title li.right a.hd_contact::after,
.flow_contact a.hd_contact::after,
.in_page a.hd_contact::after{
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: solid 2px #fff;   /* 好みで色を変えてください */  
	border-right: solid 2px #fff;   /* 好みで色を変えてください */  
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
}
#header ul.hd_title li.right a.hd_contact:hover,
.flow_contact a.hd_contact:hover,
.in_page a.hd_contact:hover {
	opacity:0.7;
	color:#ffff66;
}
.flow_contact a.hd_contact {
	padding:15px 60px 15px 45px;
	margin-top:20px;
	margin-bottom:10px;
}
.contact .hd_contact {
	margin:20px auto;
	border:none!important;
}
.contact .hd_contact {
	width:200px;
	display: inline-block;
	margin: 30px auto;
	padding:15px 60px 15px 45px;
	font-size:16px;
	color:#fff;
	font-weight:bold;
	line-height:1.1em;
	background-color:#c60028;
	border-radius:20px;
	position: relative;
	border:none!important;
	cursor: pointer;
}
.hd_contact_btn{
	color: #fff;
	position: relative;
	line-height: 2.8em;
	width: 200px;
	margin:0 auto;
}
.hd_contact_btn::after{
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.contact .hd_contact:hover {
	opacity:0.7;
	color:#ffff66;
}

/* ++++++++++++++++++++ MENU ++++++++++++++++++++ */
#header .hd_menu {
	display: block;
	margin:8px auto 0 auto;
	padding:0;
	text-align:center;
	font-size:16px;
	font-weight:bold;
	color:#fff;
	line-height:1.1em;
	background-color:#21445b;
}
#header .hd_menu ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:1180px;
	margin:0 auto;
	padding:0;
	list-style:none;
}
#header .hd_menu ul li {
	display:block;
	width:180px;
	margin:0;
	padding:0;
	text-align:center;
	border-left:solid 1px #fff;
}
#header .hd_menu ul li:first-child {
	width:180px;
}
#header .hd_menu ul li:nth-child(1), #header .hd_menu ul li:nth-child(2) {
	width:180px;
}
#header .hd_menu ul li:nth-child(5) {
	width:220px;
}
#header .hd_menu ul li:last-child {
	width:240px;
	border-right:solid 1px #fff;
}
#header .hd_menu ul li a {
	display:block;
	padding:12px 0;
	color:#fff;
}
#header .hd_menu ul li a:hover {
	opacity:0.7;
	background-color:#40657a;
	color:#ffff66;
}
#header #spmenu {
	display:none;
}
#nav-drawer {
	display:none;
}
/* ++++++++++++++++++++ footer ++++++++++++++++++++ */
#footer .ft_sitelink {
	display: block;
	margin:0px auto 0 auto;
	padding:0;
	text-align:center;
	font-size:14px;
	font-weight:bold;
	color:#fff;
	line-height:1.1em;
	background-color:#21445b;
}
#footer .ft_sitelink ul {
	display:flex;
	justify-content: center;
	flex-wrap: nowrap;
	width:1180px;
	margin:0 auto;
	padding:0;
	list-style:none;
}
#footer .ft_sitelink ul li {
	display:block;
	margin:0;
	padding:0;
	text-align:center;
	border-left:solid 1px #fff;
}
#footer .ft_sitelink ul li:nth-child(1) {
	width:170px;
}
#footer .ft_sitelink ul li:nth-child(2) {
	width:120px;
}
#footer .ft_sitelink ul li:nth-child(3) {
	width:160px;
}
#footer .ft_sitelink ul li:nth-child(4) {
	width:120px;
}
#footer .ft_sitelink ul li:nth-child(5) {
	width:170px;
}
#footer .ft_sitelink ul li:nth-child(6) {
	width:180px;
}
#footer .ft_sitelink ul li:nth-child(7) {
	width:140px;
}
#footer .ft_sitelink ul li:nth-child(8) {
	width:140px;
	border-right:solid 1px #fff;
}
#footer .ft_sitelink ul li a {
	display:block;
	text-align:center;
	padding:8px 0;
	color:#fff;
}
#footer .ft_sitelink ul li a:hover {
	opacity:0.7;
	background-color:#40657a;
	color:#ffff66;
}
#footer .ft_inner {
	display:block;
	width:1180px;
	margin:0 auto;
	padding:0;
}
#footer .ft_inner ul {
	display:flex;
	justify-content: center;
	flex-wrap: nowrap;
	width:1180px;
	margin:0 auto;
	padding:0;
	list-style:none;
}
#footer .ft_inner ul li {
	display:block;
	margin:0;
	padding:0;
	text-align:left;
}
#footer .ft_inner ul li:nth-child(1) {
	margin:0;
	padding:0;
	width:145px;
}
#footer .ft_inner ul li:nth-child(2) {
	margin:0;
	padding:0;
	width:500px;
}
#footer .ft_inner ul li:nth-child(3) {
	width:500px;
}
#footer .footercorp {
	display:block;
	margin: 30px 0px 0px 0px;
}
#footer .footercorp .rogo {
	float:left;
	margin: 0px 0px 0px 0px;
}
#footer .footercorp .rogo img {
	width:320px;
	height:auto;
}
#footer .footercorp .name {
	float:left;
	margin: 40px 0px 0px 30px;
	font-size:19px;
	font-weight:bold;
}
#footer .footercorp .name h3 {
	display:block!important;
	color:black!important;
	font-size:19px!important;
	font-weight:bold!important;
	border-bottom:none!important;
	padding: 0px 0px 0px 0px!important;
	margin: 0!important;
}
#footer .footercorp .name p {
	font-size:15px;
	font-weight:normal;
}

.copyright {
	float:right;
	margin: 60px 0px 0px 0px;
}
.copyright p{
	text-align:right;
	font-size:13px;
}

#footer .ft_inner .corp {
	display:block;
	margin:24px 0 0;
	padding:0;
	font-size:18px;
	font-weight:bold;
}
#footer .ft_inner .address {
	display:block;
	margin:0px 0 0;
	padding:0;
	font-size:14px;
}
#footer .ft_inner .ft_logo img {
	width:132px;
	height:50px;
	margin:20px 0 0;
	padding:0;
}
#footer .ft_inner .copy {
	display:block;
	margin:50px 0 0;
	padding:0;
	font-size:11px;
	text-align:right;
}
#pageTop {
	width:50px;
	background-color:#fff;
	position: fixed;
	bottom: 119px;
	right: 50px;
}
#pageTop a {
	display: block;
}
#pageTop a:hover {
	opacity: 0.8;
}

/* ----------------------------------------------------------------
    共通素材
----------------------------------------------------------------- */
.linkbtn_right {
	float:right;
	display: inline-block;
	margin: 5px 0 0;
	padding:10px 60px 10px 45px;
	font-size:16px;
	color:#fff;
	font-weight:bold;
	line-height:1.1em;
	background-color:#21445b;
	border-radius:20px;
	position: relative;
}
.linkbtn_right:after{
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
}
.linkbtn_right:hover {
	opacity:0.7;
	color:#ffff66;
}
.linkbtn_center {
	display: inline-block;
	margin: 5px auto 0;
	padding:10px 60px 10px 45px;
	font-size:16px;
	color:#fff;
	font-weight:bold;
	line-height:1.1em;
	background-color:#21445b;
	border-radius:20px;
	position: relative;
}
.linkbtn_center:after{
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
}
.linkbtn_center:hover {
	opacity:0.7;
	color:#ffff66;
}


/* ----------------------------------------------------------------
    トップスライド
----------------------------------------------------------------- */
div.slider {
	display:block;
	margin:0px auto 0px auto;
	position: relative;
}
.slider div img {
	max-width:100%;
	width:auto;
	height:auto;
	margin:0 auto;
}
.slider div img:hover {
	opacity: .7;
}
.slider .slick-slide {
	opacity: 0.5;
	transition: 0.5s;
}
.slider .slick-current {
	opacity: 1;
	position: relative;
}

.slider .slide-arrow{
	width:826px;
	position: absolute;
	top: 50%;
	width: 58px;
	height: 58px;
	margin-top: 0px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	cursor: pointer;
	z-index: 10;
}
.slider .prev-arrow1{
	left: 50%;
	right: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	margin-left: -453px;
}
.slider .next-arrow1{
	left: 50%;
	right: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	margin-left: 453px;
}
.slider .slick-dots{
	position: absolute;
	bottom: -25px;
}
.slider .slick-dots li button:before {
	font-size: 10px;
}
.slider .slick-dots li button:before{
	opacity: .7;
	color: #ddd;
}
.slider .slick-dots li.slick-active button:before{
	opacity: .7;
	color: #004989;
}
.slider .slick-slider .slick-track, .slick-slider .slick-list{
	background: #ddd;
}

/* ----------------------------------------------------------------
    トップインフォメーション
----------------------------------------------------------------- */
.top_info {
	display:block;
	margin:0px auto 30px auto;
}
.in_info {
	display:block;
	margin:50px auto 80px auto!important;
}
.top_info h3, .in_info h3 {
	display:block;
	margin:0px auto 30px auto;
	padding:0px 0px 0px 10px;
	font-size:22px;
	font-weight:bold;
	color:#21445b;
	border-left:solid 4px #21445b;
}
.top_info ul, .in_info ul {
	display:block;
	margin:0px auto 0px auto;
	padding:0px 0px 0px 0px;
	list-style:none;
}
.top_info ul li, .in_info ul li {
	display:block;
	margin:0px auto 10px auto;
	padding:0px 0px 0px 0px;
	border-bottom:dashed 1px #ccc;
}
.top_info ul li .date, .in_info ul li .date {
	display:none;
	padding:0px 10px 0px 0px;
}
.top_info ul li .date, .in_info ul li .date {
	display:none;
	padding:0px 10px 0px 0px;
}
.top_info ul li a, .in_info ul li a {
	display:inline-block;
	vertical-align: top;
	width:calc(100% - 110px);
	padding:0px 0px 0px 10px;
}
.top_info ul li .icon, .in_info ul li .icon, .det_info .det_sec .det_icon .icon {
	display:inline-block;
	width:100px;
	margin:0px 10px 10px 0px;
	padding:0px 0px 0px 0px;
	font-size:14px;
	font-weight:normal;
	color:#fff;
	text-align:center;
}
.top_info ul li .icon01, .in_info ul li .icon01, .det_info .det_sec .det_icon .icon01 {
	background-color:#c60028;
}
.top_info ul li .icon02, .in_info ul li .icon02, .det_info .det_sec .det_icon .icon02 {
	background-color:#00c646;
}
.top_info ul li .icon03, .in_info ul li .icon03, .det_info .det_sec .det_icon .icon03 {
	background-color:#006bc6;
}
.top_info ul li .icon04, .in_info ul li .icon04, .det_info .det_sec .det_icon .icon04 {
	background-color:#00c69e;
}
.top_info ul li .icon05, .in_info ul li .icon05, .det_info .det_sec .det_icon .icon05 {
	background-color:#c6a300;
}
.top_info ul li .icon06, .in_info ul li .icon06, .det_info .det_sec .det_icon .icon06 {
	background-color:#aaa;
}
.top_info ul li .icon07, .in_info ul li .icon07, .det_info .det_sec .det_icon .icon07 {
	background-color:#c64600;
}
/* ----------------------------------------------------------------
    トップバナー
----------------------------------------------------------------- */
.top_bunner ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:1180px;
	margin:30px auto;
	padding:0;
	list-style:none;
}
.top_bunner ul li {
	display:block;
	width:381px;
	margin:0 0 15px 0;
	padding:0;
	text-align:center;
}
.top_bunner ul li img {
	width:100%;
	height:auto;
}
.top_bunner ul li img:hover {
	opacity:0.7;
}
/* ----------------------------------------------------------------
    トップリフォーム事例
----------------------------------------------------------------- */
.top_jiei {
	display:block;
	margin:30px auto;
	padding:40px 0;
	background-color:#eef2f9;
	text-align:center;
}
.top_jiei h3 {
	display:inline-block;
	margin:0px auto;
	padding:0px 70px;
	font-size:30px;
	font-weight:bold;
	color:#21445b;
	border-bottom:solid 6px #acc1e4;
}

.top_jiei ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:1180px;
	margin:30px auto;
	padding:0;
	list-style:none;
}
.top_jiei ul li {
	display:block;
	width:282px;
	margin:0;
	padding:0;
	text-align:center;
}
.top_jiei ul li a {
	display:block;
	margin:0;
	padding:0;
	text-align:left;
}
.top_jiei ul li a:hover {
	opacity:0.7;
}
.top_jiei ul li a .image {
	display:block;
	height:212px;
	background-color:#fff;
	position: relative;
	margin: 0;
	padding:0;
	overflow:hidden;
	border:solid 1px #ccc;
}
.top_jiei ul li a .image:before {
	content: "";
	display: block;
	margin: 0;
	padding: 0;
	padding-top: 75%; /* 4:3 */
}
.top_jiei ul li a .image img {
	position: absolute;
	top: 0; 
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.top_jiei ul li a .junrebox {
	display:block;
	margin:8px 0 8px;
	padding:0;
}
.top_jiei ul li a .junrebox span {
	display:inline-block;
	margin:0px 4px 0px 0px;
	padding:1px 3px;
	font-size:12px;
	color:#21445b;
	border:solid 1px #21445b;
	background-color:#fff;
	white-space: nowrap
}
.top_jiei ul li a .jireititle {
	display:block;
	height:40px;
	margin:8px 0px 5px 0px;
	padding:0;
	font-size:16px;
	font-weight:bold;
	line-height:1.3em;
	color:#3e4347;
	overflow: hidden;
}
.top_jiei ul li a .jireititle span {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.top_jiei ul li a .jireicopy {
	display:block;
	margin:0px 0px 0px 0px;
	padding:0;
	font-size:14px;
	line-height:1.3em;
	color:#3e4347;
	overflow: hidden;
}
.top_jiei ul li a .jireicopy span {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

/* ----------------------------------------------------------------
    トップ無料出張見積
----------------------------------------------------------------- */
.top_leftright ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:0 0 80px 0;
	padding:0;
	list-style:none;
	text-align:left;
}
.top_leftright ul .left {
	display:block;
	width:536px;
}
.top_leftright ul .left img {
	width:100%;
	height:auto;
}
.top_leftright ul .right {
	display:block;
	width:590px;
}
.top_leftright ul .right .right_title {
	display:block;
	margin:0 0 20px;
	padding:0;
	font-size:40px;
	font-weight:bold;
	line-height:1.2em;
	color:#c60028;
}
.top_leftright ul .right .right_copy {
	display:block;
	margin:0 0 20px;
	padding:0;
	font-size:16px;
	line-height:1.2em;
}
.top_leftright ul .right .right_sub {
	display:block;
	margin:0 0 8px;
	padding:0;
	font-size:16px;
	font-weight:bold;
	line-height:1.2em;
}
.top_leftright ul .right .right_box {
	display:block;
	margin:0 0 0px;
	padding:20px;
	font-size:16px;
	line-height:1.2em;
	border:solid 1px #bfbfbf;
}
.top_leftright ul .right .right_box table {
	display:table;
	border-collapse: collapse;
	margin:0;
	padding:0;
}
.top_leftright ul .right .right_box table th {
	width:60px;
	vertical-align: top;
	padding:0 0 10px;
}
.top_leftright ul .right .right_box table td {
	width:490px;
	vertical-align: top;
	padding:0 0 10px;
}
.top_leftright ul .right .right_box table td span {
	color:#c60028;
	font-weight:bold;
}
/* ----------------------------------------------------------------
    中ページ共通
----------------------------------------------------------------- */
.in_page {
	display:block;
	width:1080px;
	margin:0 auto;
}
.pankuzu {
	display:block;
	width:1080px;
	margin:15px auto 0 auto;
	padding:0;
	font-size:12px;
}
.in_page2 h2 {
	display:block;
	margin:10px 0 30px 0;
	padding:0px 0 20px;
	font-size:30px;
	font-weight:bold;
	color:#21445b;
	text-align:center;
	background: -moz-linear-gradient(top, #fff, #dcdddd);
	background: -webkit-linear-gradient(top, #fff, #dcdddd);
	background: linear-gradient(#fff, #dcdddd);
	border-bottom:solid 1px #bfbfbf;
}
/* ----------------------------------------------------------------
    リフォームの流れ
----------------------------------------------------------------- */
.flow {
}
.flow .step {
	display:block;
	margin:0 0 30px 0;
	padding:0;
}
.flow .step ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:0;
	padding:0;
	list-style:none;
}
.flow .step ul li {
	margin:0;
	padding:0;
	width:128px;
	height:124px;
	border:solid 2px #21445b;
}
.flow .step ul li div.no{
	margin:0;
	padding:0 0 4px 0;
	background-color:#21445b;
	text-align:center;
	font-size:16px;
	font-weight:bold;
	color:#fff;
}
.flow .step ul li div.com{
	display: table-cell;
	vertical-align: middle;
	width:124px;
	height:91px;
	margin:0;
	padding:0 0 0 0;
	font-size:16px;
	font-weight:bold;
	line-height:1.2em;
	text-align:center;
	color:#21445b;
}
.flow .step ul li.sankaku {
	display:block;
	padding:58px 0 0 0;
	width: 30px;
	height: 0;
	border:none;
	text-align:center;
}
.flow .stepcontents ul.stepcontents2 {
	display:block;
	margin:0 0 50px 0!important;
	padding:0!important;
	list-style:none;
}
.flow .stepcontents ul.stepcontents2 li {
	display:block;
	margin:0!important;
	padding:0!important;
	border:solid 1px #bfbfbf;
}
.flow .stepcontents ul.stepcontents2 li.sankaku {
	height:50px;
	padding-top:10px!important;
	border:none;
	text-align:center;
}
.flow .stepcontents ul.stepcontents2 li .title {
	display:block;
	margin:0!important;
	padding:1px!important;
	background-color:#e5e5e5;
	border-bottom:solid 1px #bfbfbf;
}
.flow .stepcontents ul.stepcontents2 li .title .no {
	display:inline-block;
	width:126px;
	margin:0!important;
	padding:6px 0!important;
	background-color:#21445b;
	font-size:20px;
	font-weight:bold;
	line-height:1.2em;
	text-align:center;
	color:#fff;
}
.flow .stepcontents ul.stepcontents2 li .title .com {
	display:inline-block;
	margin:0!important;
	padding:6px 0 6px 10px !important;
	text-align:left;
	font-size:20px;
	font-weight:bold;
	line-height:1.2em;
	color:#21445b;
}
.flow .stepcontents ul.stepcontents2 li .contents {
	display:block;
	padding:20px;
}
.flow .stepcontents ul.stepcontents2 li .contents .subtitle {
	display:block;
	margin:0 0 6px 0!important;
	padding:0!important;
	font-size:18px;
	font-weight:bold;
	line-height:1.2em;
	color:#ee7800;
}
.flow .stepcontents ul.stepcontents2 li .contents .text {
	display:block;
	margin:0 0 16px 0!important;
	padding:0!important;
	font-size:16px;
}
.flow .stepcontents ul.stepcontents2 li .contents span.textred {
	font-weight:bold;
	color:#c60028;
}
.flow .stepcontents ul.stepcontents2 li .contents ul.harf {
	display:flex;
	width:100%;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:0;
	padding:0;
	list-style:none;
	border:none;
}
.flow .stepcontents ul.stepcontents2 li .contents ul.harf li {
	width:48%;
	border:none;
}

.flow .stepcontents ul.stepcontents2 li .contents ul.harf li .freedial {
	width:415px;
	height:47px;
	padding:8px 0;
}
.flow_contact {
	display:block;
	margin:30px auto 0 auto;
	padding:40px 0;
	background-color:#f9eadc;
	text-align:center;
}
.flow_contact_title {
	display:block;
	margin:0px auto 0 auto;
	padding:10px 0;
	background-color:#21445b;
	text-align:center;
	font-size:20px;
	font-weight:bold;
	line-height:1.2em;
	color:#fff;
}
.flow_contact_box {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:0;
	padding:20px 40px;
	list-style:none;
	border:solid 2px #21445b;
	background-color:#fff;
	font-size:18px;
	font-weight:bold;
	line-height:1.2em;
	color:#21445b;
}
.flow_contact_box li {
	display:block;
	width:48%;
	text-align:center;
}
.flow_contact_box li .freedial{
	width:415px;
	height:auto;
	padding:10px 0;
}
.flow_contact_box li span {
	font-size:20px;
}

/* ----------------------------------------------------------------
    リフォームローン
----------------------------------------------------------------- */
.loan .head_copy {
	display:block;
	margin:0 0 30px 0;
	padding:0;
	text-align:center;
}
.loan .subtitle {
	display:block;
	margin:0 0 30px 0;
	padding:0 0 0 10px;
	text-align:left;
	font-size:22px;
	font-weight:bold;
	line-height:1.2em;
	color:#21445b;
	border-left:solid 6px #21445b;
}
.loan .loan_leftright {
	display:block;
}
.loan .loan_leftright ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:0;
	padding:0;
	list-style:none;
}
.loan .loan_leftright ul li {
	width:680px;
}
.loan .loan_leftright ul li:nth-child(2) {
	width:400px;
	text-align:right;
}
.loan .loan_leftright ul li table {
	display:table;
	width:100%;
	border-collapse: collapse;
	margin:0;
	padding:0;
	border:solid 1px #bfbfbf;
}
.loan .loan_leftright ul li table th {
	border:solid 1px #bfbfbf;
	background-color:#e5e5e5;
	width:135px;
	vertical-align: top;
	padding:8px;
}
.loan .loan_leftright ul li table td {
	border:solid 1px #bfbfbf;
	vertical-align: top;
	padding:8px;
}
.loan .loan_leftright ul li table td span {
	font-size:22px;
	color:#c60028;
	font-weight:bold;
}
/* ----------------------------------------------------------------
    お問い合わせフォーム
----------------------------------------------------------------- */
.contact {
	display:block;
}
.contact .contact_head{
	display:block;
	margin:0 0 30px 0;
	padding:0 0 0 0px;
	text-align:center;
	font-size:16px;
}
.contact .contact_table{
	display:block;
	width:1080px;
	margin:0 auto 30px auto;
	padding:0 0 0 0px;
	text-align:left;
	font-size:16px;
}
.contact .contact_table table {
	display:table;
	width:1080px;
	border-collapse: collapse;
	margin:0 auto;
	padding:0;
	border:solid 1px #bfbfbf;
	table-layout: fixed;
}
.contact .contact_table table th {
	border:solid 1px #bfbfbf;
	background-color:#e5e5e5;
	width:180px;
	vertical-align: top;
	padding:8px;
}
.contact .contact_table table td {
	border:solid 1px #bfbfbf;
	vertical-align: top;
	padding:8px;
}
.contact .contact_table table td ul.koumoku{
	display:flex;
	justify-content: stretch;
	flex-wrap: wrap;
	margin:0;
	padding:0;
	list-style:none;
}
.contact .contact_table table td ul.koumoku li {
	width:33%;
}
.contact .contact_table table td ul.koumoku2 {
	display:flex;
	justify-content: left;
	flex-wrap: wrap;
	margin:0;
	padding:0;
	list-style:none;
}
.contact .contact_table table td ul.koumoku2 li {
	padding-right:20px;
}
.contact .contact_table table td span {
	font-size:14px;
}
.contact .contact_table p.doui {
	display:block;
	margin:10px 0 0;
	font-weight:bold;
}
.contact .contact_table span.doui {
	display:block;
	margin:0px 0 0;
}
.contact .contact_table span.douibtn {
	display:block;
	margin:0px 0 0;
	text-align:center;
}
.btn_center {
	display: flex;
	justify-content: space-evenly;
	margin: 30px auto 50px;
}
.contact .contact_btn{
	width:200px;
	display: inline-block;
	margin: 0 auto 0;
	padding:15px 60px 15px 45px;
	font-size:16px;
	color:#fff;
	font-weight:bold;
	line-height:1.1em;
	background-color:#c60028;
	border-radius:20px;
	position: relative;
	border:none!important;
	cursor: pointer;
}
.contact_btnA{
	color: #fff;
	position: relative;
	line-height: 2.8em;
	width: 200px;
	margin:0 auto;
}
.contact .contact_btnA::after{
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.contact .contact_btn:hover {
	opacity:0.7;
	color:#ffff66;
}
.contact .contact_btn2 {
	width:200px;
	display: inline-block;
	margin: 0 auto 0;
	padding:15px 45px 15px 60px;
	font-size:16px;
	color:#fff;
	font-weight:bold;
	line-height:1.1em;
	background-color:#21445b;
	border-radius:20px;
	position: relative;
	border:none!important;
	cursor: pointer;
}
.contact_btnB{
	color: #fff;
	position: relative;
	line-height: 2.8em;
	width: 200px;
	margin:0 auto;
}
.contact .contact_btnB::after {
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: solid 2px #fff;
	border-left: solid 2px #fff;
	transform: rotate(-45deg);
	position: absolute;
	top: 50%;
	left: 20px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.contact .contact_btn2:hover {
	opacity:0.7;
	color:#ffff66;
}


/* ----------------------------------------------------------------
    リフォーム事例 分類一覧
----------------------------------------------------------------- */
.case_list {
	display:block;
}
.case_list ul{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:0;
	padding:0;
	list-style:none;
}
.case_list ul li {
	margin:0 0px 15px 0;
	padding:0;
	width:30%;
}
.case_list ul li:nth-child(3n) {
	margin:0 0px 15px 0;
}
.case_list ul li a {
	display:block;
}
.case_list ul li a img {
	width:100%;
	height:auto;
}
.case_list ul li a span {
	display:block;
	text-align:center;
	color:#21445b;
}
.case_list ul li a:hover {
	opacity:0.7;
}
/* ----------------------------------------------------------------
    リフォーム事例 一覧表示
----------------------------------------------------------------- */
.case_search {
	display:block;
	background-color:#f9eadc;
	border-radius:20px;
	padding:20px;
	margin:0 0px 30px 0;
}
.case_search ul{
	display:flex;
	justify-content: stretch;
	flex-wrap: wrap;
	padding:0;
	list-style:none;
}
.case_search ul li {
	margin:0 0px 4px 0;
	padding:0;
	width:25%;
}
.case_search ul li a {
	display:block;
}
.case_search ul li img {
	width:22px;
	height:22px;
	margin-right:5px;
}
.case_search ul li a span {
	text-align:left;
	color:#21445b;
}
.case_search ul li a:hover {
	opacity:0.7;
}
.case2 h3 {
	display:inline-block;
	margin:0px auto;
	padding:0px 70px;
	font-size:30px;
	font-weight:bold;
	color:#21445b;
	border-bottom:solid 6px #acc1e4;
}
.case_list2 ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:1080px;
	margin:30px auto;
	padding:0;
	list-style:none;
}
.case_list2 ul li {
	display:flex;
	flex-wrap: wrap;
	flex-direction: column;
	width:30%;
	margin:0 0 40px;
	padding:0;
	text-align:left;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-direction: normal;
	-webkit-box-orient: vertical;
	-ms-flex-direction: column;
	flex-direction: column;
}
.case_list2 ul li .image {
	display:block;
	margin:0;
	padding:0;
	width:324px;
	height:243px;
	border:solid 1px #ccc;
	overflow:hidden;
	position: relative;
}
.case_list2 ul li .image:before {
	content: "";
	display: block;
	padding-top: 75%; /* 4:3 */
}

.case_list2 ul li .image img {
	position: absolute;
	top: 0; 
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.case_list2 ul li .jireititle {
	display:block;
	height:50px;
	margin:10px 0px 10px 0px;
	padding:0;
	font-size:20px;
	font-weight:bold;
	line-height:1.3em;
	color:#ee7800!important;
	overflow: hidden;
}
.case_list2 ul li .jireititle span {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.case_list2 ul li table {
	display:table;
	width:100%;
	border-collapse: collapse;
	margin:0 auto 30px;
	padding:0;
	border-top:solid 2px #bfbfbf;
	font-size:14px;
}
.case_list2 ul li table th {
	border-bottom:solid 2px #bfbfbf;
	width:110px;
	font-weight:bold;
	vertical-align: top;
	padding:4px 10px 4px 0;
}
.case_list2 ul li table td {
	border-bottom:solid 2px #bfbfbf;
	vertical-align: top;
	padding:4px 0;
}
.case_list2 ul li .text_center {
	margin-top: auto;
}

.case_list2 ul li .text_center a.cl_contact {
	width:200px;
	margin: 15px auto 0!important;
	padding:15px 60px 15px 45px;
	font-size:16px;
	color:#fff;
	font-weight:bold;
	line-height:1.1em;
	background-color:#21445b;
	border-radius:20px;
	position: relative;
	border:none!important;
	cursor: pointer;
}
.case_list2 ul li a.cl_contact:hover {
	opacity:0.7;
	color:#ffff66;
}
.case_list2 ul li a.cl_contact::after{
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* ----------------------------------------------------------------
    リフォーム事例 詳細表示
----------------------------------------------------------------- */
.case3 h3 {
	display:block;
	margin:0px 0px 40px 0px;
	padding:15px 0px 0px 0px;
	font-size:26px;
	color:#ee7800;
	font-weight:bold;
	line-height:1.1em;
}
.case3 h3.title {
	display:block;
	margin:0px auto 30px auto;
	padding:0px 0px 0px 10px;
	font-size:22px;
	font-weight:bold;
	color:#21445b;
	border-left:solid 4px #21445b;
	text-align:left;
}
.case3 .line {
	display:block;
	margin:0px auto 40px auto;
	padding:0px 0px 0px 0px;
	border-bottom:solid 1px #bfbfbf;
}
.case3 .gaiyoLR ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:1080px;
	margin:30px auto 20px;
	padding:0;
	list-style:none;
}
.case3 .gaiyoLR ul li {
	display:block;
	margin:0 0 30px;
	padding:0;
	text-align:left;
}
.case3 .gaiyoLR ul li.left {
	width:640px;
}
.case3 .gaiyoLR ul li.right {
	width:400px;
}
.case3 .gaiyoLR ul li.right table {
	display:table;
	width:100%;
	border-collapse: collapse;
	margin:0 auto;
	padding:0;
	border-top:solid 1px #bfbfbf;
	font-size:14px;
}
.case3 .gaiyoLR ul li.right table th {
	border-bottom:solid 1px #bfbfbf;
	width:120px;
	font-weight:bold;
	vertical-align: top;
	padding:4px 10px 4px 10px;
}
.case3 .gaiyoLR ul li.right table td {
	border-bottom:solid 1px #bfbfbf;
	vertical-align: top;
	padding:4px 0;
}
.case3 .brforeafter ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:1080px;
	margin:0px auto 0px;
	padding:0;
	list-style:none;
}
.case3 .single ul {
	display:block;
	width:480px!important;
	margin:0px auto 30px!important;
	padding:0;
	list-style:none;
}
.case3 .brforeafter ul li {
	display:block;
	width:482px;
	margin:0 0 30px;
	padding:0;
	text-align:left;
}
.case3 .brforeafter ul li.aida {
	width:100px;
	text-align:center;
	padding-top:200px;
}
.case3 .brforeafter ul li .photo {
	width:480px;
	height:360px;
	border:solid 1px #EDEDED;
	background-color:#fff;
	overflow:hidden;
	position: relative;
	margin: 0;
}
.case3 .brforeafter ul li .photo p:before {
	content: "";
	display: block;
	padding-top: 75%; /* 4:3 */
}
.case3 .brforeafter ul li .photo img {
	position: absolute;
	top: 0; 
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.case3 .brforeafter ul li .title {
	display:block;
	margin:0 0 15px;
	padding:2px 10px;
	text-align:center;
	border:solid 2px #21445b;
	border-radius:30px;
	font-size:22px;
	font-weight:bold;
	color:#21445b;
}
.case3 .brforeafter ul li.after .title {
	border:solid 2px #c60028;
	color:#c60028;
}
.case3 .brforeafter ul li .copy {
	display:block;
	margin:0 0 15px;
	padding:0px;
	text-align:left;
}
.case3 .view {
	display:block;
	width:940px;
	height:470px;
	margin:0px auto 30px;
	padding:230px 0 0 0;
	text-align:center;
	background-color:#eee;
}
.case3 .gallery_360 {
	display:block;
	height:470px;
	margin:0px auto 50px;
	text-align:center;
}
.case3 .freebox ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:1080px;
	margin:0px auto 0px;
	padding:0;
	list-style:none;
}
.case3 .freebox ul li {
	display:block;
	width:510px;
	margin:0 0 30px;
	padding:0;
	text-align:left;
}
.case3 .freebox ul li .free {
	display:block;
	text-align:left;
}
.case3 .freebox ul li .free img {
	max-width:100%!important;
	width:auto!important;
	height:auto!important;
	padding:10px 0;
}
.case3 .backbtn, .det_info .backbtn {
	display:block;
	margin:30px auto 50px;
	text-align:center;
}
.case3 .backbtn .backbtn2, .det_info .backbtn .backbtn2 {
	display: inline-block;
	margin: 15px auto 0;
	padding:15px 45px 15px 60px;
	font-size:16px;
	color:#fff;
	font-weight:bold;
	line-height:1.1em;
	background-color:#21445b;
	border-radius:20px;
	position: relative;
	border:none!important;
	cursor: pointer;
}
.case3 .backbtn .backbtn2::after, .det_info .backbtn .backbtn2::after {
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: solid 2px #fff;
	border-left: solid 2px #fff;
	transform: rotate(-45deg);
	position: absolute;
	top: 50%;
	left: 20px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.case3 .backbtn .backbtn2:hover, .det_info .backbtn .backbtn2:hover {
	opacity:0.7;
	color:#ffff66;
}


.case3 .backbtn, .det_info .backbtn, .in_page .backbtn {
	display:block;
	margin:30px auto 50px;
	text-align:center;
}


/* 実例紹介例詳細　スライド */
div.g-inner {
	display:block;
	margin:0px 0px 40px 0px;
	position:relative;
}
#view {
	display:block;
	float:left;
	width:750px;
	height:562px;
	overflow:hidden;
}
#view p {
	width:750px;
	height:562px;
	background-color:#EDEDED;
	overflow:hidden;
	position: relative;
	margin: 0;
}
#view p:before {
	content: "";
	display: block;
	padding-top: 75%; /* 4:3 */
}
#view p img {
	position: absolute;
	top: 0; 
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#caption {
	position:absolute;
	width: 284px;
	height: 230px;
	bottom:0px;
	right:0px;
	text-align:left;
}
#caption li {
	word-wrap: break-word;
}
#caption li span {
	display:block;
	font-size:18px;
	font-weight:bold;
}
#thumbBtn {
	display:flex;
	float:right;
	justify-content: space-between;
	flex-wrap: wrap;
	width:284px;
	margin:0px auto 20px;
	padding:0;
	list-style:none;
}
#thumbBtn li {
	width:48%;
	background-color:#fff;
	border:solid 1px #EDEDED;
	overflow:hidden;
	position: relative;
	margin: 0 0 10px 0;
	padding: 0;
	text-align:right;
	 cursor:pointer;
}
#thumbBtn li:before {
	content: "";
	display: block;
	margin: 0;
	padding: 0;
	padding-top: 75%; /* 4:3 */
}
#thumbBtn li img {
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0; 
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#thumbBtn li.active {
	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";
}

/* リフォームディオからのお知らせ */
.det_info h3 {
	display:block;
	color:#004A7C;
	font-weight:bold;
	font-size:24px;
	border-bottom:solid 2px #004A7C;
	padding: 0px 0px 10px 0px;
	margin: 40px auto 20px auto;
}
.det_info h3.det_title {
	display:block;
	color:#004A7C;
	font-weight:bold;
	font-size:24px;
	border-bottom:solid 2px #004A7C;
	border-left:solid 20px #004A7C;
	padding: 10px 0px 10px 20px;
	margin: 40px auto 10px auto;
}
.det_info .det_sec {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:100%;
	margin:0px auto 20px;
	padding:0;
	list-style:none;
}
.det_info .det_date {
	display:none;
}
.det_info .endmessage {
	display:block;
	text-align:center;
	margin: 30px 0px 50px 0px;
}
.det_info .det_sec2 {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:100%;
	margin:0px auto 20px;
	padding:0;
	list-style:none;
}
.det_info .det_sec2 .det_cont {
	display:block;
	width:100%;
	text-align:left;
	margin: 0px 0px 20px 0px;
	word-break: break-all;
}
.det_info .det_sec2 .det_photo {
	display:block;
	text-align:center;
	margin: 0px 0px 20px 0px;
}
.det_info .det_sec2 .det_photo img {
	width:100%!important;
	height:auto!important;
}
/* ----------------------------------------------------------------
    サイトマップ
----------------------------------------------------------------- */
.sitemap {
	display:block;
}
.sitemap ul {
	display:block;
}
.sitemap ul li {
	display:block;
	text-align:left;
	margin: 0px 0px 10px 0px;
}
.sitemap ul li a {
	display:block;
	text-align:left;
	margin: 0px;
	padding:8px;
	background-color:#eef2fa;
}
.sitemap ul li a img {
	margin:0 0 6px 4px;
}
.sitemap ul li a:hover {
	opacity:0.7;
}

/* ----------------------------------------------------------------
    たすかるサービス
----------------------------------------------------------------- */
.tasukaru .subtitle {
	display:block;
	margin:0 0 20px 0;
	padding:0 0 0 10px;
	text-align:left;
	font-size:22px;
	font-weight:bold;
	line-height:1.2em;
	color:#21445b;
	border-left:solid 6px #21445b;
}
.tasukaru .subtitle1 {
	display:block;
	margin:0 0 30px 0;
	padding:4px 10px;
	text-align:left;
	font-size:18px;
	font-weight:bold;
	line-height:1.2em;
	color:#21445b;
	background-color:#b0bfe3;
}
.tasukaru .text_image {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:100%;
	margin:0px auto 30px;
	padding:0;
	list-style:none;
}
.tasukaru .text_image li {
	display:block;
}
.tasukaru .text_image li .titles {
	display:block;
	margin:30px auto 10px;
	font-size:22px;
	font-weight:bold;
	line-height:1.2em;
	color:#c00;
}
.tasukaru .text_image li .texts {
	display:block;
	margin:0px auto 10px;
	font-size:18px;
}
.tasukaru .text_image li .danraku1 {
	display:block;
	text:0px auto 10px;
	font-size:18px;
}

.tasukaru .tasukarubox {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:100%;
	margin:0px auto 20px;
	padding:0;
	list-style:none;
	align-items: top;
}
.tasukaru .tasukarubox::after{
	content:"";
	display: block;
	width:24%;
}
.tasukaru .tasukarubox li {
	display:block;
	width:24%;
	margin:0px 1% 20px 0;
	padding:0px 20px 10px;
	background-color:#fff;
	border:solid 1px orange;
	border-radius:10px;
}
.tasukaru .tasukarubox li.noborder {
	border:none;
}
.tasukaru .tasukarubox li:nth-child(4) {
	margin:0px 0 20px 0;
}
.tasukaru .tasukarubox li img {
	width:100%;
	height:auto;
	margin:0;
}
.tasukaru .tasukarubox li .praice {
	display: block !important;
	text-align:right;
}
.tasukaru .tasukarubox .newprice .raw{
	font-size: 1.4em;
}
.tasukaru .tasukarubox .newprice,
.tasukaru .tasukarubox li .praice span {
	color:#cc0000;
}

.tasukaru .tasukaruprice {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:100%;
	margin:0px auto 30px;
	padding:0;
	list-style:none;
	align-items: top;
}
.tasukaru .tasukaruprice li {
	display:block;
	width:48%;
	margin:0px 0 10px;
	padding:2px;
	border-bottom:dashed 1px #ccc;
}
.tasukaru .tasukaruprice li p {
	display:none;
	float:right;
	padding:0;
	margin:0;
}

.tasukaru .tasukarubox .newprice,
.tasukaru .tasukaruprice .newprice{
	display: block;
	text-align: right;
	font-weight: bold;
	padding:0;
	margin:0;
}
.tasukaru .tasukaruprice .newprice .raw{
	font-size: 1.4em;
}
.tasukaru .tasukaruprice li .praice {
	display: block;
}
.tasukaru .tasukaruprice li p span,
.tasukaru .tasukaruprice .newprice{
	color:#cc0000;
}


.footor_rogo {
	display:block;
	width:1180px;
	margin: 50px auto 30px auto;
}
.footor_rogo ul {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin:0px;
	padding:0;
}
.footor_rogo ul li {
	width:calc(16.6666% - 10px);
	margin:0;
	padding:0;
}
.footor_rogo:nth-child(7n) {
	margin: 0px 0px 0px 0px;
}
.footor_rogo ul li a:hover {
	opacity:0.7;
}
.footor_rogo ul li a img{
	width:100%;
	height:auto;
}
