@charset "utf-8";
/* CSS Document */

/*sidebar*/
.sidebar .box01 {position: relative;}
.sidebar .box01 .btn01,.sidebar .box01 .btn02 {position: absolute; left: 0; right: 0; margin: auto; bottom: 75px;}
.sidebar .box01 .btn02 {bottom: 25px;}
.sidebar .box02 {background: url(img/side/box02_bg.jpg)top left repeat; box-sizing: border-box; border: 1px solid #000; padding-bottom: 10px;}
.sidebar .box03 {box-sizing: border-box; border: 1px solid #000; padding-bottom: 10px;}
.sidebar .box03 img {box-sizing: border-box; border-bottom: 1px solid #000;}
.sidebar .box04 {background: url(img/side/box04_bg.jpg)top center no-repeat; padding-bottom: 10px; background-size: cover;}
.sidebar .box05 {background: url(img/side/box05_bg.jpg)center center no-repeat; padding: 20px 0 10px;}



/*contactbnr*/
.contact_banner {position: relative; margin-top: 20px;}
.contact_banner .logo,.contact_banner .title,.contact_banner .inner {position: absolute; top: 15px; left: 0; right: 0; margin: auto;}
.contact_banner .title {position: absolute; top: 65px;}
.contact_banner .inner {top: inherit; bottom: 20px; padding: 0 25px;}

/*concept*/
#concept .box01 {position: relative; box-sizing: border-box; border: 2px solid #000;}
#concept .box01 .title {font-size: 25px; margin-bottom: 20px;}
#concept .box01 h2 {font-size: 25px; line-height: 1.5; margin: 20px 0 15px;}
#concept .box01 .bdr {content: ""; background-color: #006428; width: 100px; height: 1px;}
#concept .box01 .inner {text-align: justify; line-height: 1.5;} 
#concept .box01 .inner .img01 {margin-right: 20px;}
#concept .box01 .inner .img02 {margin-left: 20px;}
#concept .box01 .icon01 {position: absolute; bottom: 20px; right: 20px;}
#concept .box01 .icon02 {position: absolute; bottom: 15px; left: 20px;}
#concept .box02 {background: url(img/concept/box02_bg.jpg)top center repeat; border: 2px solid #000; line-height: 1;}
#concept .box02 .big {font-size: 35px;}
#concept .box02 .min {font-size: 20px; margin: 10px auto 20px;}
#concept .box02 ul {width: 550px; margin: 0 auto;}
#concept .box03,#concept .box04 {box-sizing: border-box; border: 2px solid #000; background: url(img/concept/box03_bg.jpg)top center repeat;}
#concept .box03 .title {display: flex; align-items: center;}
#concept .box03 .title:before,#concept .box03 .title:after {content: ""; flex-grow: 1; height: 1px; background: #000; display: block;}
#concept .box03 .title:before {margin-right: .4em;}
#concept .box03 .title:after {margin-left: .4em;}
#concept .box03 .inner {margin: 20px auto;}
#concept .box03 .inner .img01 {margin-right: 20px;}
#concept .box03 .inner .img02 {margin-left: 20px;}
#concept .box03 h2,#concept .box04 .big {font-size: 25px; display: inline; box-sizing: border-box; line-height: 1.6; border-bottom: 1px solid #000;}
#concept .box03 .txt {margin-top: 10px;}
#concept .box04 img {margin-left: 20px;}
#concept .box04 .txt {margin-top: 10px;}

/*flow*/
#flow .box01 {box-sizing: border-box; border: 2px solid #000; position: relative; padding-bottom: 20px;}
#flow .box01 .inner {padding: 20px; text-align: justify;}
#flow .box01 .inner img {margin-left: 20px;}
#flow .box01 .title_area {background-color: #eeeeee;}
#flow .box01 h2 {font-size: 30px; margin-left: 20px;}
#flow .box01 li {width: 250px; box-sizing: border-box; border: 1px solid #2b2b2b; padding: 10px 0; background-color: #fff; position: relative;}
#flow .box01 li:before {
	   position: absolute;
    content: " ";
    z-index: 1;
    width: 61px;
    top: 0;
	bottom: 0;
	margin: auto;
    left: -30px;
    height: 6px;
    background: url(img/index/btn_arrow.png);
    transition: all 0.5s ease;
}
#flow .box01 ul {width: 565px; margin: 0 auto;}
#flow .arrow {margin: 20px auto;}
#flow .box01 .box {box-sizing: border-box; border: 2px solid #ccc; margin: 0 20px;}
#flow .box01 h3 {font-size: 25px; margin-top: 20px;}


/*design*/
#design .box01 {box-sizing: border-box; border: 2px solid #000; background: url(img/design/box01_bg.jpg)top left repeat;}
#design .box01 h2 {font-size: 20px; line-height: 1.5; display: flex; align-items: center; justify-content: center; background-color: #fff; box-shadow: -5px 5px #000; margin-left: -72px; margin-bottom: 15px; width: 400px; height: 75px;}
#design .box01 .inner {margin-top: 20px;}
#design .box01 .inner02 {padding: 20px;}
#design .box01 .inner .img01,#design .box01 .inner02 img {margin-right: 20px;}
#design .box01 .inner .img02 {margin-left: 20px;}
#design .box01 .icon {margin-bottom: 30px;}
#design .box {box-sizing: border-box; border: 2px solid #000; background-color: #fff;}
#design .box .point {margin-top: -50px;}
#design .box .title_area {background: url(img/design/box_title_bg.jpg)top center repeat;}
#design .box01 h3 {font-size: 23px; line-height: 1.5; margin: auto;}
#design .box01 .under {background: url(img/design/box01_under_bg.jpg)top center repeat; padding: 20px; font-size: 18px; margin-top: 30px;}
#design .box01 tr:nth-child(1) td {padding-bottom: 10px;}
#design .box02 .text {margin-top: 20px;}
#design .box02 ul {padding: 20px; font-size: 16px;}
#design .box02 ul p {margin-bottom: 10px; line-height: 1;}
#design .box02 li:nth-child(4),#design .box02 li:nth-child(5),#design .box02 li:nth-child(6) {margin-top: 15px;}
#design .bnr_area {box-sizing: border-box; border: 2px solid #000; line-height: 1; font-size: 20px;}
#design .bnr_area .big {font-size: 30px; margin: 10px 0 15px;}
#design .img03 {margin: 20px -20px -20px; min-width: 711px; width: 711px;}
#design .box01 .inner03 {padding: 20px 20px 0;}
#design .box01 .inner03 .img01 {margin-right: 20px;}
#design .box01 .inner03 .img02 {margin-left: 20px;}
#design .material_title {background-color: #006428; margin: 20px!important; line-height: 1.3; box-sizing: border-box; border-left: 10px solid #000; border-right: 10px solid #000; padding: 5px 0;}
#design .material_inner {background-color: #e5e5e5; text-align: justify; margin: 0 20px 20px; padding-right: 20px;}
#design .material_inner img {margin-right: 20px;}
#design .material_inner .big {font-size: 25px; line-height: 1;}
#design .material_inner .bdr {content: ""; background-color: #000; width: 60px; height: 1px; margin: 10px auto;}
#design .box01 .con_bnr {margin-top: 10px;}

/*thought*/
#thought .box00 {position: relative;}
#thought .box00 ul {position: absolute; bottom: 30px; left: 0; right: 0; margin: auto; padding: 0 20px;}
#thought .box00 li {box-shadow: 4px 4px rgba(255,255,255,0.4);}
#thought .box01 {box-sizing: border-box; border: 2px solid #000; position: relative;}
#thought .box01 .inner .img01 {margin-left: 20px;}
#thought .box01 .inner02 .img01 {margin-right: 20px;}
#thought .box01 .inner .img02 {margin-right: 20px;}
#thought .box01 .inner02 .img02 {margin-left: 20px;}
#thought .box01 .no {font-size: 20px; position: relative; z-index: 1;}
#thought .box01 .bdr {content: ""; background-color: #000; width: 1px; height: 25px; margin: 10px auto; position: relative; z-index: 1;}
#thought .box01 h2 {font-size: 20px; line-height: 1.4; margin-bottom: 15px;}
#thought .box01 .box {box-sizing: border-box; border: 2px solid #006428; position: relative; margin-top: 20px;}
#thought .box02 .box {box-sizing: border-box; border: 2px solid #f9be00;}
#thought .box03 .box {box-sizing: border-box; border: 2px solid #009ea6;}
#thought .box01 h3 {background-color: #006428; font-size: 18px; line-height: 1.4; padding: 5px 0;}
#thought .box02 h3 {background-color: #f9be00;}
#thought .box03 h3 {background-color: #009ea6;}
#thought .box01 .inner02 {padding: 20px;}
#thought .box01 .title_icon {position: absolute; left: 35px; top: 5px;}
#thought .box01 .icon01 {position: absolute; top: 10px; left: 75px;}
#thought .box01 .icon02 {position: absolute; top: 10px; right: 75px;}

/*#company*/
#company table {box-sizing: border-box; border: 2px solid #000; width: 100%;}
#company th,#company td {font-weight: bold; box-sizing: border-box; border-bottom: 1px solid #000; padding: 10px 0;}
#company th {text-align: center; background-color: #eeeeee; width: 100px; vertical-align: middle;}
#company td {padding-left: 20px; padding-right: 20px;}
#company .inner {font-size: 13px; margin-top: 20px;}
#company .inner .big {font-size: 26px; line-height: 1;}
#company .inner .min {font-size: 13px; line-height: 1; margin: 10px 0 15px;}
#company .inner .img01 {margin-right: 15px;}
#company .inner .img02 {margin-left: 15px;}
#company .min02 {font-size: 18px;}
#company .box {box-sizing: border-box; border: 2px solid #000; padding: 0 20px 20px;}
#company .box p {margin-top: 15px;}



/*contact*/
#contact .box01 {background: url(img/index/box01_bg.jpg)top left repeat; padding: 10px 20px; line-height: 1;}
#contact .box01 .inner {margin: 10px 0;}
#contact .box01 .txt {background-color: #fff; box-sizing: border-box; border: 2px solid #333; padding: 5px 0; font-size: 12px;}
#contact .box02 {box-sizing: border-box; border: 2px solid #000; padding: 20px;}
#contact .box02 ul {line-height: 2;}



#contact table {width: 100%; box-sizing: border-box; border: 2px solid #000000; margin-top: 20px; margin-bottom: 20px;}
#contact table th,#contact table td {padding: 10px; box-sizing: border-box; border-bottom: 2px solid #000000; background-color: #fff;}
#contact table th{font-weight: bold; background-color: #eeeeee; vertical-align: middle; width: 220px;}
#contact table input,#contact table textarea {width: 100%; box-sizing: border-box; padding: 3px;}
.mwform-radio-field input,.mwform-checkbox-field input {width: auto!important; padding: inherit!important;}
.mwform-checkbox-field label {font-weight: bold!important;}
.mwform-radio-field-text {font-weight: bold;}
#contact table .tel_area {width: auto;}
/*確認画面へ進むボタン用*/
.mw_wp_form_input .btn input:hover,
.mw_wp_form_confirm .btn input:hover { opacity: 0.7; }
.mw_wp_form_input .btn input{
background: url(img/contact/btn_bg.png)left center no-repeat;
    font-size: 16px!important;
    width: 400px!important;
    padding: 16px 0!important;
    line-height: 1;
	color: #000;
	background-color: #fff;
	font-weight: bold;
	box-shadow: 5px 5px #b5b5b5;
	border: 1px solid #000000;
}
/*送信ボタン用*/
.mw_wp_form_confirm .btn input{
background: url(img/contact/btn_bg.png)left center no-repeat; background-position-x: 95%;
    font-size: 16px!important;
    width: 400px!important;
    padding: 16px 0!important;
    line-height: 1;
	color: #000;
	border: 1px solid #000000;
}
#form table {width: 100%; box-sizing: border-box; border: 2px solid #000000; margin-top: 20px; margin-bottom: 20px;}
#form table th,#form table td {padding: 10px; box-sizing: border-box; border-bottom: 2px solid #000000; background-color: #fff;}
#form table th{font-weight: bold; background-color: #eeeeee; vertical-align: middle; width: 220px;}
#form table input,#form table textarea {width: 100%; box-sizing: border-box; padding: 3px;}
.mwform-radio-field input,.mwform-checkbox-field input {width: auto!important; padding: inherit!important;}
.mwform-checkbox-field label {font-weight: bold!important;}
.mwform-radio-field-text {font-weight: bold;}
#form table .tel_area {width: auto;}
#form .bg {box-sizing: border-box; border: 2px solid #000;}
#form .big {font-size: 30px; line-height: 1.3; margin: 20px auto;}
#form .min {font-size: 20px; margin-left: 40px; margin-bottom: 20px;}
#form .main {margin-left: auto; margin-bottom: -20px;}
#form ul {line-height: 2;}


/*blog*/
#blog .con {padding-bottom: 15px; box-sizing: border-box; border-bottom: 1px solid #ccc; margin-bottom: 15px;}
#blog .con:nth-last-child(1) {margin-bottom: 0; padding-bottom: 0; border-bottom: none;}
#blog_single .box01,#blog .box01 {box-sizing: border-box; border: 2px solid #ccc; padding: 20px; margin-bottom: 20px; text-align: justify;}
#blog_single .box01 .inner {margin-bottom: 10px;}
#blog_single .tag,#blog .tag {background-color: #eb6b06; color: #fff; padding: 2px 0; margin-left: 10px; text-align: center; width: 80px;}
#blog_single .tag02,#blog .tag02 {background-color: #522f0e; color: #fff; padding: 2px 0; margin-left: 10px; text-align: center; width: 80px;}
#blog .txt {margin-top: 5px}

/*voice*/
#case_single .img {box-sizing: border-box; border: 2px solid #ccc; padding: 20px;}
#case_single .img img {width: 100%; height: 388px; object-fit: cover;}
#case_single .gallery_area {box-sizing: border-box; padding: 20px; border: 2px solid #ccc; border-top: none;}
#case_single .gallery_box {display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap;}
#case_single .gallery_box a {margin-right: 20px; margin-top: 20px; width: 210px;}
#case_single .gallery_box a img {height: 155px; width: 100%;}
#case_single .gallery_box a:nth-child(3n) {margin-right: 0;}
#case_single .case_txt_box {box-sizing: border-box; padding: 20px; border: 2px solid #ccc; border-top: none;}
#case_single .page_title {font-size: 21px;}

/*一覧ページ*/
#case .item {position: relative; margin-right: 20px; width: 327px; padding: 10px; box-sizing: border-box; background-color: #f5f5f5;}
#case .item:nth-child(2n) {margin-right: 0;}
#case .item:nth-child(3),#case .item:nth-child(4) {margin-top: 20px;}
#case_arcive_list {padding: 20px; padding-top: 0;}
#case .item img {width: 100%; height: 200px; object-fit: cover;}
#case .txt_area {padding: 10px 10px 0;}
#case .btn {background-color: #006428; color: #fff; line-height: 1; font-size: 16px; padding: 7px 0; width: 60%; margin: 8px auto 0;}

#gallery_arcive_list .item {width: 225px; margin-right: 20px; margin-top: 20px;}
#gallery_arcive_list .item:nth-child(1),#gallery_arcive_list .item:nth-child(2),#gallery_arcive_list .item:nth-child(3) {margin-top: 0;}
#gallery_arcive_list .item:nth-child(3n) {margin-right: 0;} 
#gallery_arcive_list img {height: 150px; width: 100%; object-fit: cover;}
#gallery_arcive_list h3 {margin-top: 10px;}
#gallery_arcive_list .btn {box-sizing: border-box; border: 2px solid #000; margin: 10px auto 0; width: 80%; background-color: #fff;}

/*modelhouse*/
#modelhouse {margin-bottom: 50px;}
#modelhouse .box01 {background: url(img/modelhouse/box01_bg.jpg)top left repeat; box-sizing: border-box; border: 2px solid #000; padding: 20px; position: relative;}
#modelhouse .box01 .icon {position: absolute; left: 140px; top: 30px;}
#modelhouse .box01 h2 {font-size: 30px; text-align: center; line-height: 1.2; margin-bottom: 20px;}
#modelhouse .box01 h2 span {font-size: 40px;}
#modelhouse .box01 .img {margin-top: 20px;}
#modelhouse .box02 {background-color: #e5e5e5; padding: 30px; position: relative; margin-top: 40px;}
#modelhouse .box02 .box {background-color: #fff; position: relative;}
#modelhouse .box02 .big {font-size: 35px; margin-left: 90px; padding: 20px 0 10px;}
#modelhouse .box02 .min {font-size: 20px; margin-left: 90px;}
#modelhouse .box02 .inner {background-color: #f9be00; padding: 10px 120px; margin-top: 20px;}
#modelhouse .box02 .title {position: absolute; left: 0; right: 0; top: -24px; margin: auto;}
#modelhouse .box02 .icon {position: absolute; right: 20px; bottom: 0;}
#modelhouse .box02 .mail {position: relative; z-index: 10;}
#modelhouse .box03 {background: url(img/modelhouse/box03_bg.jpg)top center no-repeat; padding: 40px 100px;}
#modelhouse .box03 h2 {font-size: 20px; margin-bottom: 20px;}
#modelhouse .box03 ul {margin-top: 40px;}
#modelhouse .box03 li {width: 320px; position: relative;}
#modelhouse .box03 .icon {position: absolute; left: -10px; top: -10px;}
#modelhouse .box03 h3 {line-height: 1.3; font-size: 16px; padding: 10px 0; box-sizing: border-box; border-bottom: 1px solid #fff; margin-bottom: 10px;}
#modelhouse .highlight {background: url(img/modelhouse/bg.jpg)top left repeat;}
#modelhouse .box04 {padding: 30px; box-sizing: border-box; border-bottom: 2px dotted #006428;}
#modelhouse .box04 .title_area {line-height: 1; font-size: 20px;}
#modelhouse .box04 .title_area .left_area {box-sizing: content-box; border-left: 10px solid #006428; padding-left: 20px; margin-right: 100px;}
#modelhouse .box04 .title_area .txt {line-height: 1.5;}
#modelhouse .box04 h3 {font-size: 30px; margin-top: 5px;}
#modelhouse .box04 .inner {font-size: 15px; line-height: 2.5; margin: 40px 0;}
#modelhouse .box04 .inner img {margin-right: 40px;}
#modelhouse .box04 .ul01 li {width: calc(100% / 3); height: 75px; font-size: 16px; box-sizing: border-box; border-right: 1px solid #000; border-bottom: 1px solid #000; padding-left: 75px;}
#modelhouse .box04 .ul01 li:nth-child(1) {padding-left: 0; padding-top: 4px;}
#modelhouse .box04 .ul01 li:nth-child(3n) {border-right: none;}
#modelhouse .box04 .ul01 li:nth-child(4),#modelhouse .box04 .ul01 li:nth-child(5),#modelhouse .box04 .ul01 li:nth-child(6) {border-bottom: none;}
#modelhouse .box04 .ul01 li p {margin-left: 20px;}
#modelhouse .box04 .big02 {font-size: 30px; line-height: 1.3; margin-bottom: 30px;}
#modelhouse .box06 {border-bottom: none;}
#modelhouse .box07 {background: url(img/modelhouse/box01_bg.jpg)top left repeat; box-sizing: border-box; border: 2px solid #000; padding: 10px 100px 30px;}
#modelhouse .box07 .title_area {margin-left: 155px;}
#modelhouse .box07 h2 {margin-left: 20px; font-size: 30px; line-height: 1.3;}
#modelhouse .box07 .big {font-size: 30px; line-height: 1; padding: 15px 0; margin: 20px auto;
 background: -moz-linear-gradient(top, #1a743e, #006428);
 background: -webkit-linear-gradient(top, #1a743e, #006428);
 background: linear-gradient(to bottom, #1a743e, #006428); }
#modelhouse .box07 .big02 {font-size: 25px; line-height: 1; margin-bottom: 20px;}
#modelhouse .box07 li {width: 320px;}
#modelhouse .box07 .top {font-size: 18px; line-height: 1;}
#modelhouse .box07 .top img {margin-right: 10px;}
#modelhouse .box07 .top span {font-size: 25px;}
#modelhouse .box07 .btn_area {background: url(img/modelhouse/box07_btn_bg.png)center right 70px no-repeat; background-color: #fff; box-sizing: border-box; border: 2px solid #007830; font-size: 20px; line-height: 1; margin-top: 30px;}
#modelhouse .box07 .btn_area .txt {background-color: #007830; display: flex; align-items: center; justify-content: center; width: 150px; height: 70px}
#modelhouse .bnr {margin: 30px auto;}



#sitemap li {font-size: 18px; padding-left: 15px; box-sizing: border-box; line-height: 2.5;}
#sitemap li span {border-left: 5px solid #006428; padding-left: 10px;}
