/*
Theme Name: replus
Theme URI: https://kip-design.com/replus/
Author: 
Author URI: 
Description: 
Version: 1.0.0
*/
@charset "utf-8";
body, #footer p, .worksdata th, .worksdata td {font-family:  'Gurmukhi MN','EB Garamond',sans-serif,'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','游明朝体+36ポかな','YuMincho +36p Kana', sans-serif !important;font-size:14px;margin:0;}
#wrapper{position:relative; z-index:1;transition: all 0.5s 0s ease;}
#topbanner{position:relative;}
#banner{position:relative; height:500px; overflow:initial;transition: all 0.5s 0s ease;}
#banner:after{content:""; width:100%; height:500px; background:rgba(0,0,0,0.4); z-index:2; position:absolute; top:0; display:block;}
.single_banner:after{background:#fff !important;}
#banner img.bannerimg{width:100%;}
#banner header{position:absolute; top:0; width:100%; z-index:999;}
#main{width:100%; max-width:1024px; margin:0 auto; padding:100px 0; display:flex;}
.entry-list{width:70%; margin-right:80px;}
h2.entry-title{font-size:20px;}
.post-date{display:block; text-align:right; font-size:12px; color:#7e7c7c;}
.entry-content{padding:60px 0 0 0;}
.entry-content-inner img{max-width:100%; height:auto;}
.pagetitle{position: absolute;top: 50%;z-index: 4;color: #fff;text-align: center;display: block;width: 100%;font-size:24px; font-weight: normal;}
.single_banner .pagetitle{color:#363636;}
.pagetitle img{width:308px;}
.pankuzu{position: absolute;bottom:0; left:0;z-index: 4;color: #fff;text-align: left;display: block;width: 100%;font-size: 12px;font-weight: normal; padding:40px 40px 15px 40px;}
.pankuzu a{text-decoration:none; color:#fff;}
.single_banner .pankuzu,.single_banner .pankuzu a{color:#363636;}
body.home .content h2 img.architects{width:178px;}
body.home .content h2 img.renovation{width:189px;}
body.home .content h2 img.consulting{width:186px;}
body.home h2 img.less_is_more{width:230px !important; margin-bottom:60px;}
.right{text-align:right;}
body.home .wrapper.style1 > .inner{width:46rem;}
#footer{text-align:center; font-size:14px; padding: 20px 0; box-shadow:none !important;}
ul.icons li:last-child{padding-right:15px !important;}
.publication-list{width:100%; margin:0 auto;}
h5.sidebar-title{border-width:1px 0; border-color:#b7b7b7; border-style:solid;text-align: center;padding: 20px 0;}
.sidebar{width:30%;}
.rpwwt-widget ul li img{float:right !important; margin:0 0 0 20px !important;}
.contactus a{background: #000;color: #fff;padding: 12px 50px;font-size: 14px;text-decoration: none;display:block;width: 250px;margin: 0 auto;box-sizing:border-box;transition:.3s;border:1px solid #fff;}
.contactus a:hover{background:#fff; color:#000; border:1px solid #000;}
.fixed_sp {position: fixed;bottom: -7px;right: 0%;z-index: 3;}

@media screen and (min-width:741px){
.pcoff {display:none;}
}
@media screen and (max-width:740px){
.spoff {display:none;}
}

/*ボタン*/
.buttonBox{margin: 0;position:relative;max-width: 200px;min-width: 150px;flex: 20%;float: right;}
@media screen and (max-width:740px){
	.buttonBox{float:none; margin:0 auto;}
}
.button{box-shadow:none !important;}
.buttonBox a{width:100%;height:55px;position:relative;background:rgba(255, 255, 255, .27);text-transform:uppercase;font-weight:700;letter-spacing:1px;border:none;font-size:15px;outline:none;font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;cursor: pointer;display:flex;justify-content: center;align-items: center;line-height:55px;border-radius:0;}
.buttonBox a:hover{border:none;color:#000 !important;}
.border{
    position:absolute;
    background:none;
    transition:all .5s ease-in-out;
}
#fourth>.border:nth-of-type(1){
  top:0;
  left:0;
  width:0;
  height:0;
  border-top:1px solid #000;
}

#fourth>.border:nth-of-type(2){
  top:0;
  right:0;
  width:10px;
  height:0;
  border-right:1px solid #000;
}

#fourth>.border:nth-of-type(3){
  bottom:0;
  right:0;
  width:0;
  height:0;
  border-bottom:1px solid #000;
}

#fourth>.border:nth-of-type(4){
  bottom:0;
  left:0;
  width:0;
  height:0;
  border-left:1px solid #000;
}

#fourth:hover .border:nth-of-type(1){
  width:100%;
}

#fourth:hover .border:nth-of-type(2){
  height:55px;
}

#fourth:hover .border:nth-of-type(3){
  width:100%;
}

#fourth:hover .border:nth-of-type(4){
  height:55px;
}
.yazirusi {
        margin-left: 10px;
        width: 40px;
        height: 8px;
        border-bottom: 1px solid #000;
        border-right: 1px solid #000;
        transform: skew(45deg);
}

/*works*/
.works-the-list{width:100%;}
.works-the-inner{display:flex;flex-wrap: wrap; background:none; box-sizing:border-box; padding:1%;}
.works-the-inner .works-item{width:25%; height: 25vw; padding:1%;}
.works-the-inner .works-item img{width:100%; height:100%; object-fit:cover; z-index:1;transition: all 0.3s 0s ease;vertical-align: middle;position:relative;opacity:1;}
ul.termlist{margin:0 auto; padding:0; list-style-type:none; padding:20px 0 0 0; display:flex;flex-wrap: wrap; width:600px;}
ul.termlist li{padding:10px 0px; width:33.333%; text-align:center;}
ul.termlist li:hover{cursor:pointer;}
ul.termlist li span{padding:0 10px 5px 10px;}
ul.termlist li.active span{border-bottom:1px solid #333;}
.works-the-inner .mix{display: none;}
/*.works-the-inner .mix:before{content: '';display: inline-block;padding-top: 60%;}*/
.works-the-inner .mix a{position:relative; width:100%; height:100%; overflow:hidden;display:flex; align-items:center;}
.works-the-inner .mix a:after{content:""; display:block; width:100%; height:100%; background:#525252; position:absolute; top:0; left:0;}
.works-the-inner .mix a:hover img{transform: scale(1.2); opacity:0.3;}
.works-the-inner .mix a .works-item-label{position:absolute;z-index: 2;color: #fff;padding: 0 20px;text-align: center;width: 100%;box-sizing: border-box;font-size: 15px;opacity:0;transition:all .3s;overflow-wrap: break-word;}
.works-the-inner .mix a:hover .works-item-label{opacity:1;}
.works-list .entry-title, .works-template-default .pankuzu {display:none;}
.works-template-default .pagetitle {top:56%;}
@media screen and (max-width:740px){
.works-the-inner .mix a .works-item-label {font-size: 8px !important;}
}
.blank-item{  transform-origin: 50% 50%;animation-name:big;animation-duration:0.5s;}
@keyframes big{
  0%{
    transform: scale(0);
  }
 100%{
    transform: scale(1);
  }
}
.youtube {height:461px;}
@media screen and (max-width:1023px){
.youtube {height:45.2vw;}
}
@media screen and (max-width:640px){
.youtube {height:50.8vw;}
}

/*works detail*/
.works-list{width:80%; margin:0 auto;}
.works-list table tbody tr:nth-child(2n + 1){background:none !Important;}
.works-list table tbody tr{border-width:0 0 1px 0;}
.works-list table tbody th{font-size:inherit; padding:10px 0;}
.works-list .works_description img{width:100%; height:auto;}

/*publication*/
#publication_container{display:flex;flex-wrap: wrap;}
#publication_container .publication_item{width:50%;}
#publication_container .publication_item a{display:flex; padding:0 50px 50px 0; text-decoration:none;}
#publication_container .publication_item a:hover{color:inherit;}
#publication_container .pub_image{width:180px; height:230px; background:#fff; margin-right:30px;}
#publication_container .pub_image img{width:100%;height:100%;object-fit: contain;}
#publication_container .pub_data{width:60%;}
#publication_container .pub_data .title{font-size: 18px;font-weight: 400; margin-bottom:10px;}
#publication_container .pub_data .des1{font-size:12px; font-weight:400; margin-bottom:10px;}
#publication_container .pub_data .des2{font-size:12px; margin-bottom:10px;}
#publication_container .pub_data .link{text-align:right;font-size:12px;}
.pnavi{display:flex;justify-content: center;}
.pnavi span,.pnavi a{display:block; width:30px; height:30px; line-height:30px; text-align:center;}
.pnavi span{background:#191919; color:#fff; border-radius:50%;}
.pnavi a{text-decoration:none;}
@media screen and (max-width:840px){
	.publication-list{width:90%;}
	#publication_container{display:block;}
	#publication_container .publication_item{width:100%;}
	#publication_container .publication_item a{width:100%; padding:0 0 50px 0;}
}

/*blog*/
.blog_list a{display:flex; border-bottom:1px solid #b7b7b7;text-decoration:none; padding-bottom:60px; margin-bottom:60px;}
.blog_list a:hover{color:inherit;}
.blog_list .blog_data{display:flex;flex-direction: row-reverse; margin-right:40px;}
.blog_list .blog_data2 h2{font-size:20px; margin-bottom:10px;}
.blog_list .blog_date{margin-right:40px;color:#898989;}
.blog_list .blog_image{width:170px;height:170px;}
.blog_list .blog_image img{width:100%;height:100%;object-fit:contain;object-position: 0 0;}

/*consulting*/
.consulting-page .pagesh{text-align:center; padding:50px;}
.consulting-page .pagesh h2{font-size:22px; line-height:43px; margin:0; padding:0;}
.consulting-page .style1 .image50{height:40vw !important;}
.para_title_container{width: 50%;position: absolute;top: 10%;left: 10%;}
.consulting-page .para_title{text-align:left;font-weight:400;font-size:20px; color:#fff; display:block; border-bottom:1px solid #a5a5a5; padding-bottom:5px; margin-bottom:5px;}
.consulting-page .para_title2{text-align:left;font-size:12px; color:#fff; display:block; }
.consulting-section{background:#ddd; padding:100px 50px 100px 200px;}
.consulting-section-inner{background:#fff; padding:80px; display:flex;}
.consulting-section-image{position:relative; top:-100px; left:-100px;}
.para_consulting1{background: url(./images/para_consulting1.jpg) no-repeat top center;}
.para_consulting2{background: url(./images/para_consulting2.jpg) no-repeat top center;}
.para_consulting3{background: url(./images/para_consulting3.jpg) no-repeat top center;}

/*renovation*/
.para_renovaion1{background: url(./images/para_renovation1.png) no-repeat top center;}
.para_renovaion2{background: url(./images/para_renovation2.png) no-repeat top center;}

/*flow*/
.flow_container{padding:100px; background:url(./images/flowbg.png) no-repeat top center; background-size:cover;position:relative; overflow:hidden;}
.flow_container h3{text-align:center; margin-bottom:40px; font-size:30px; color:#fff; position:relative; z-index:3; }
.flow_inner{width:65%; margin:0 auto;position:relative;z-index:2;}
.flow_item{display:flex; border:1px solid #fff; padding: 30px 20px 30px 30px; margin-bottom:20px;align-items: center;}
.flow_image{width:100px; height:100px; margin-right:40px;}
.flow_image img{width:100%; height:100%;}
.flow_title{font-size: 26px;color: #fff;font-weight: 400; display:block; margin-bottom:10px;}
.flow_title i{font-style:normal; margin-right:20px;}
.flow_meta{flex:1;}
.flow_meta p{color:#fff; margin:0;}
.flow_arrow{background:url(./images/flowicon.png) no-repeat center center; height:40px; width:100%; background-size:40px auto; margin-bottom:20px;}


/*results*/
.results-section{padding:100px;}
.results-section h3{text-align:center; margin-bottom:40px; font-size:30px;}
.results-section h3 img{width:148px; height:auto;}
.results-section-inner{width:80%; margin:0 auto;}
.results-section-item{display:flex; margin-bottom:40px;}
.results-section-image{width:250px; height:250px; margin-right:40px;}
.results-section-image img{width:100%; height:100%; object-fit:cover;}
.results-section-data{flex:1;}
.results-section-title{font-size: 22px;font-weight: 300;margin-bottom: 10px;display: block;}

/*project*/
.project_inprogress{display:flex; border-bottom:1px solid #333; margin-bottom:40px;}
.project_inprogress h2{margin-right:60px; font-size:24px; width:15%;}
.project_inprogress_inner{flex:1;}
.project_item a{display:flex; text-decoration:none; margin-bottom:40px;}
.project_item a:hover{color:inherit;}
.project_image{width:180px; height:180px; margin-right:40px;position:relative;display:flex; align-items:center;overflow:hidden;}
.project_image:after{content:""; display:block; width:100%; height:100%; background:#525252; position:absolute; top:0; left:0; z-index:1;}
.project_image img{width:100%; height:100%; object-fit:cover;transition:all .3s; z-index:2;position:relative;vertical-align: middle;}
.project_item a:hover .project_image img{opacity:0.3;transform: scale(1.2); }
.project_item .title{font-size:20px; display:block; margin-bottom:20px;word-break: break-all;}
.project_data{flex:1;}

/*faq*/
.faq-container{width:800px; margin:0 auto;border-bottom:1px solid #e7e7e7;}
.faq-container dl,.faq-container dt,.faq-container dd{margin:0; padding:0; font-weight:300; font-size:14px;}
.faq-container dt{border-top:1px solid #e7e7e7;padding:25px 30px; display:flex;justify-content:space-between;align-items:center;}
.faq-container dt:hover{cursor:pointer;}
.faq-container dt:before{content:"Q"; display:block; width:40px;color:#5e5d5d; height:40px; text-align:center; line-height:36px; font-size:18px; border-radius:50%; border:1px solid #8f8d8d; margin-right:20px;}
.faq-container dt:after{content:"＋"; font-size:18px; line-height:100%; color:#aba9a9; margin-left:15px;}
.faq-container dt.up:after{content:"−";} 
.faq-container dt div,.faq-container dd .a div{flex:1;}
.faq-container dd .a{padding:25px 30px; background:#e7e7e7;display:flex;justify-content:space-between;align-items:center;}
.faq-container dd .a:before{content:"A"; display:block; width:40px; height:40px; text-align:center; line-height:36px; font-size:18px; border-radius:50%; background:#333;margin-right:20px; color:#d7d7d7;}
.faq-container dd{display:none;}

/*contact*/
.contact-container{width:600px; margin:0 auto;}
.contact-inner{text-align:center; margin-bottom:80px;}
.m-w-form, .contact-form{margin-bottom:80px;}
.m-w-form .contactitem, .contact-form .contactitem{display:flex; margin-bottom:30px; align-items:center;}
.m-w-form .contactitem span.clabel, .contact-form .contactitem span.clabel{display:block; width:200px;}
.m-w-form .contactitem span.clabel {text-align:left;}
input[type="text"], input[type="password"], input[type="email"], input[type="tel"], input[type="search"], input[type="url"], select, textarea{font-size:14px;}
.contacttd{width:100%;}
.linelink a{display:block; width:250px; text-align:center; background:#00B900; padding:12px 0; color:#fff; font-size:14px; margin:0 auto; text-decoration:none;}
.center{text-align:center;}
.submit{text-align:center;}
.submit input[type="submit"]{border-radius:0; background:#333; color:#fff !important; margin:0 auto; border:none; width:250px; max-width:300px;height:48px; font-size:14px;}
.contact-inner2 table{width:100%;}
.contact-inner2 table tbody tr:nth-child(2n + 1){background:#fff;}
.contact-inner2 table tbody tr{border-top:0;}
.contact-inner2 table tbody th{white-space: nowrap; padding:30px 40px 30px 0; vertical-align:middle; font-size:14px; font-weight:300;}
.contact-inner2 table tbody td{vertical-align:middle;}
.contact-inner2 table tbody tr:last-child{border-bottom:0;}
.googlemaps iframe, .googlemaps object, .googlemaps embed {   -webkit-filter: grayscale(100%);   -moz-filter: grayscale(100%);   -ms-filter: grayscale(100%);   -o-filter: grayscale(100%);   filter: grayscale(100%); }
.googlemaps{margin-bottom:0px;}

/*profile*/
.profile-container{width:100%;}
.profile-inner{padding-bottom:60px; margin-bottom:60px; border-bottom:1px solid #c9c9c9;}
.profile-item{display:flex; align-items:center;}
.profile-image{width:50%; margin-right:60px;}
.profile-image img{width:100%; height:100%; object-fit:cover;}
.profile-item .name{font-size:24px; font-weight:500; display:block; margin-bottom:30px;}
.profile-item .title{font-size:16px;}
.profile-description{padding:60px 0 60px 0;}
.profile-description p{margin-bottom:20px;}
.profile-inner .button1 span{position:relative;width:250px; text-align:center; padding:12px 0;margin:0 auto; display:block; font-size:14px; text-decoration:none; cursor:pointer;}
.profile-inner .button1 span i{font-style:normal; position:absolute; right:15px; top:32%; font-size:14px; color:#000;}
.profile-inner .button1 {position: relative;display: block;border: 1px solid #000;color: #000;text-align: center;text-decoration: none;outline: none;transition: all .3s;margin:0 auto 0 auto;width:250px;}
.profile-inner .button1::before,
.profile-inner .button1::after,
.profile-inner .button1 span::before,
.profile-inner .button1 span::after {position: absolute;z-index: 2;content: '';width: 0;height: 0;border: 2px solid transparent;transition: all .3s;visibility: hidden;box-sizing: content-box;}
.profile-inner .button1::before {top: -2px;left: -2px;border-left-color: #fff;}
.profile-inner .button1::after {bottom: -2px;right: -2px;border-right-color: #fff;}
.profile-inner .button1 span::before {bottom: -2px;left: -2px;border-bottom-color: #fff;}
.profile-inner .button1 span::after {top: -2px;right: -2px;border-top-color: #fff;}
.profile-inner .button1:hover {color: #000;}
.profile-inner .button1:hover::before,
.profile-inner .button1:hover::after {height: 100%;visibility: visible;}
.profile-inner .button1:hover span::before,
.profile-inner .button1:hover span::after {width: 100%;visibility: visible;}

.profile-inner .fs-button span{position:relative;width:250px; text-align:center; padding:12px 0;margin:0 auto; display:block; font-size:14px; text-decoration:none; cursor:pointer;}
.profile-inner .fs-button span i{font-style:normal; position:absolute; right:15px; top:32%; font-size:14px; color:#000;}
.profile-inner .fs-button {position: relative;display: block;border: 1px solid #000;color: #000;text-align: center;text-decoration: none;outline: none;transition: all .3s;margin:0 auto 0 auto;width:250px;}
.profile-inner .fs-button::before,
.profile-inner .fs-button::after,
.profile-inner .fs-button span::before,
.profile-inner .fs-button span::after {position: absolute;z-index: 2;content: '';width: 0;height: 0;border: 2px solid transparent;transition: all .3s;visibility: hidden;box-sizing: content-box;}
.profile-inner .fs-button::before {top: -2px;left: -2px;border-left-color: #fff;}
.profile-inner .fs-button::after {bottom: -2px;right: -2px;border-right-color: #fff;}
.profile-inner .fs-button span::before {bottom: -2px;left: -2px;border-bottom-color: #fff;}
.profile-inner .fs-button span::after {top: -2px;right: -2px;border-top-color: #fff;}
.profile-inner .fs-button:hover {color: #000;}
.profile-inner .fs-button:hover::before,
.profile-inner .fs-button:hover::after {height: 100%;visibility: visible;}
.profile-inner .fs-button:hover span::before,
.profile-inner .fs-button:hover span::after {width: 100%;visibility: visible;}

.fs-button {margin-top:15px;}
.fs-button a {text-decoration:none;}
.fs-button a:hover {color:#000;}
body.massage_on #wrapper,body.massage_on #banner{-ms-filter: blur(6px);filter: blur(6px);}
body.massage_on:after{opacity:0.5;}
body.massage_on{overflow:hidden;padding-right:15px;}
.massage{display:none;width:100%; height:100%; box-sizing:border-box; position:fixed; overflow-x:hidden; overflow-y:scroll; top:50%; left:50%; padding:120vh 0 20vh 0 !important; z-index:99999;transform:translate(-50%,-50%);}
.massage .inner{padding:0 0 0 5vw !important;text-align:left !important;}
.massage .anim_massage img{width:816px;}
.massage .anim_massage img.araki_tomohiro {width: 100px !important;}
.close_massage{width:30px; height:30px; position:fixed; top:40px; right:40px; z-index:99999; cursor:pointer;display:none;}
.close_massage img{width:100%; height:auto;}
@media screen and (max-width:880px){
	.massage .inner{width:100% !important; box-sizing:border-box; padding:0 10vw 0 5vw !important;}
	.massage .anim_massage img{width:100%;}
	.close_massage{top:25px; right:25px;}
	body.massage_on{padding-right:0;}
	.massage{padding:18vh 0 0vh 0 !important;}
	.massage .anim_massage img.araki_tomohiro {width: 70px !important; margin: 0;}
}
@media screen and (max-width:640px){
.profile-inner .button1 span {width:200px; padding: 10px 0;}
.profile-inner .button1 { width: 200px;}

.profile-inner .fs-button span {width:200px; padding: 10px 0;}
.profile-inner .fs-button { width: 200px;}

.contactus a {width:200px;padding: 10px 50px; }
}
@media screen and (min-width:841px){
.profile-container {margin:0 20px;}
}

/*history*/
.history .des1 {display:none;}
.project-list {width:100%;margin:0 20px;}

/*newpostslide*/
.newpostslide{width:100%; display:block; position:absolute; bottom:9.1vw; z-index:9;padding:0; margin:0; list-style-type:none; background:rgba(82, 82, 82,0.8); height:50px;overflow:hidden;}
.newpostslide li{position:absolute; top:100%; left:0; line-height:100%; padding:0 0 0 40px; opacity:0;}
.newpostslide li span{padding-right:40px;}
.newpostslide li a{color:#fff; text-decoration:none; display:block;}
@media screen and (max-width:640px){
	.newpostslide{bottom:18vw;height:40px;}
	.newpostslide li{padding:0 0 0 20px; line-height:100%; display:block; width:100%;}
	.newpostslide li span{padding-right:20px;}
	.newpostslide li a{display: block;width: 100%;text-overflow: ellipsis;white-space: nowrap;overflow: hidden;padding-right: 20px;}
}

/*project*/
#project_architects{background:url(images/project_architects.jpg) no-repeat center center; background-size:cover; height:100%; width:100%;}
#project_renovation{background:url(images/project_renovation.jpg) no-repeat center center; background-size:cover; height:100%; width:100%;position:relative;}
#project_consulting{background:url(images/project_consulting.jpg) no-repeat center center; background-size:cover; height:100%; width:100%;position:relative;}
#project_architects,#project_renovation,#project_consulting,#project_footer{position:relative;}
#project_architects:after,#project_renovation:after,#project_consulting:after{content:""; display:block; width:100%; height:100%; background:rgba(0,0,0,0.2); position:absolute; top:0; left:0; z-index:1;}
.project_inner{text-align:center; width:600px; margin:0 auto; z-index:2; position:absolute; top:40%; left:50%; margin-left:-300px;}
.project_inner img.projecttitle{width:215px; height:auto;}
.showmore{margin-top:40px;}
.showmore span{color:#fff; font-size:14px;}
.showmore span:hover{cursor:pointer;}
.showmore {position: relative;display: block;padding:12px 0;border: none;color: #fff;text-align: center;text-decoration: none;outline: none;transition: all .3s;margin:40px auto 0 auto;width:250px;}
.showmore::before,
.showmore::after,
.showmore span::before,
.showmore span::after {position: absolute;z-index: 2;content: '';width: 0;height: 0;border: 2px solid transparent;transition: all .3s;visibility: hidden;box-sizing: content-box;}
.showmore::before {top: -2px;left: -2px;border-left-color: #fff;}
.showmore::after {bottom: -2px;right: -2px;border-right-color: #fff;}
.showmore span::before {bottom: -2px;left: -2px;border-bottom-color: #fff;}
.showmore span::after {top: -2px;right: -2px;border-top-color: #fff;}
.showmore:hover {color: #00cec9;}
.showmore:hover::before,
.showmore:hover::after {height: 100%;visibility: visible;}
.showmore:hover span::before,
.showmore:hover span::after {width: 100%;visibility: visible;}
.project_detail{width:100%; height:100vh; background:#fff;position:absolute; top:0; left:0; z-index:9999;display:none;}
.project_detail img.projecttitle{width: 215px;height: auto;position: absolute;top: 40%;left: 50%;margin-left: -107.5px;}
.project_detail .project_item_container{display:flex; box-sizing:border-box; padding:1%; flex-wrap: wrap;position:absolute; bottom:0; width:100%;}
.project_detail .project_item{width: 25%;height: 25vw;padding: 1%;}
.project_detail .project_item a{margin:0; width:100%; height:100%; overflow:hidden;display:flex; align-items:center; position:relative;}
.project_detail .project_item a:after{content:""; display:block; width:100%; height:100%; background:#525252; position:absolute; top:0; left:0;z-index:1;}
.project_detail .project_item img{width:100%; height:100%; object-fit:cover; transition:all .3s;vertical-align: middle;position:relative;z-index:2;opacity:1;}
.project_detail .project_item a:hover img{transform: scale(1.2);opacity:0.3;}
.project_detail .project_item a .project_item_label{position:absolute;z-index: 3;color: #fff;padding: 0 20px;text-align: center;width: 100%;box-sizing: border-box;font-size: 15px;opacity:0;transition:all .3s;}
.project_detail .project_item a:hover .project_item_label{opacity:1;}
.project_detail .close{display:block; width:30px; height:30px; position:absolute; right:40px; top:40px;}
.project_detail .close:hover{cursor:pointer;}
.project_detail .close img{width:100%; height:auto;}
.project_footer{padding:120px 0 0 0;}
@media screen and (max-width:768px){
	.project_detail .close{top:25px; right:25px;}
}
@media screen and (max-width:640px){
	.showmore{display:none;}
	#project_architects,#project_renovation,#project_consulting{background:none;}
	#project_architects .project_inner{background:url(images/project_architects.jpg) no-repeat center center; background-size:cover;}
	#project_renovation .project_inner{background:url(images/project_renovation.jpg) no-repeat center center; background-size:cover;}
	#project_consulting .project_inner{background:url(images/project_consulting.jpg) no-repeat center center; background-size:cover;}
	.project_detail .project_item_container{padding:2vw; justify-content:center;height:100%;}
	.project_inner{width:100%; height:calc(100vh - 100vw); top:0; left:0; margin-left:0; display:flex; align-items:center; text-align:center; justify-content:center;} 
	.project_detail{display:block; height:100vw; bottom:0; top:auto;z-index:2;}
	.project_detail img.projecttitle{display:none;}
	.project_detail .close{display:none;}
	.project_detail .project_item{width:50%; height:50%; padding:2vw;}
}

/*ページネーションCSS*/
.pagination {position:fixed;right:20px;top: 50%;transform: translateY(-50%);font-size:1em;z-index: 10;list-style: none;}
.pagination a {display:block;height:20px;margin-bottom:5px;color:#c9c8c8;position:relative;padding:4px;}
.pagination a.active:after {box-shadow:inset 0 0 0 5px;}
/*現在地表示のテキストの設定*/
.pagination a .hover-text {position:absolute;right:15px;top:0;opacity:0;-webkit-transition: opacity 0.5s ease;transition: opacity 0.5s ease;padding-right: 15px;}
.pagination a:hover .hover-text {opacity: 1;}
.pagination a:after {-webkit-transition:box-shadow 0.5s ease;transition:box-shadow 0.5s ease;width:10px;height:10px;display: block;border:1px solid;border-radius:50%;content:"";position: absolute;margin:auto;top:0;right:3px;bottom:0;}
/*768px以下は現在地表示のテキストを非表示*/
@media screen and (max-width:768px) { .pagination a .hover-text{display: none;} }

/* slide */
.slide {position: relative;margin: 0;padding: 0;}
.slide :after{content:""; display:block; width:100%; height:100vh; background:rgba(0,0,0,0.05); z-index:1; position:absolute; top:0;}
body.single .slide :after{background:none;}
.slide .item {position: relative;height: 100%;}
.slide .item::before {display: block;padding-top: 39%;content: "";position: relative;overflow: hidden;}
.slide .item img {position: absolute;top: 0;bottom: 0;right: 0;left: 0;margin: auto;width: 100%;}
.slide > .slick-list,
.slide > .slick-list > .slick-track,
.slide > .slick-list > .slick-track > .slick-slide > div {position: relative;height: 100%;}
@media screen and (max-width:640px){
	.slide .item img{width:100% !important; height:100%; object-fit:cover;}
	/*.slick-active img{transform:scale(1.0); animation: animationslide 5s ease-in-out forwards !important;}*/
}
/* slide-navigation */
.slick-slider{height: calc(100vh - 7.5vw);}
.slide-navigation,.slide-navigation2 {position: relative;padding: 0;margin:0;display: flex;}
.slide-navigation .item,.slide-navigation2 .item {position: relative;cursor: pointer;overflow: hidden;width: calc(100vw / 8);margin:0;padding: 0;}
.slide-navigation .item img,.slide-navigation2 .item img{width:100%; height:auto;}
.slide-navigation,.slide-navigation2{animation :infinity-scroll-left 75s infinite linear 0.5s both;}
.slide-navigation-container {display: flex;list-style: none;overflow:hidden;margin-bottom: -7px;}
@keyframes infinity-scroll-left {
from {transform: translateX(0);}
to {transform: translateX(-100%);}
}
@media screen and (max-width:640px){
	.slide-navigation .item{width: calc(100vw / 4);}
}
@media screen and (max-width:1119px){
	.slick-slider{height:50vh;}
}


.loopSliderWrap {
	top: 0;
	left: 0;
	height: calc(100vw / 11);
	overflow: hidden;
	position: absolute;
}

.loopSliderWrap:after {
	content: "";
	display: block;
	clear: both;
}

.loopSlider {
	margin: 0 auto;
	width: 100%;
	height: calc(100vw / 11);
	text-align: left;
	position: relative;
	overflow: hidden;
	visibility: hidden;
	z-index:1;
}
.loopSlider ul {
	height: 100%;
	overflow: hidden;
	padding:0;
	margin:0;
	list-style-type:none;
	display:flex;
	float:left;
}

.loopSlider ul li {
	height: auto;
	overflow: hidden;
	padding:0;
	margin:0;
	cursor : pointer;
}

.loopSlider ul li img {
	width: 100%;
	height: 100%;
	object-fit:cover;
}

@media only screen and (max-width:1920px) {.loopSlider ul li {width:240px;}}
@media only screen and (max-width:1816px) {.loopSlider ul li {width:227px;}}
@media only screen and (max-width:1720px) {.loopSlider ul li {width:215px;}}
@media only screen and (max-width:1616px) {.loopSlider ul li {width:202px;}}
@media only screen and (max-width:1520px) {.loopSlider ul li {width:190px;}}
@media only screen and (max-width:1416px) {.loopSlider ul li {width:177px;}}
@media only screen and (max-width:1320px) {.loopSlider ul li {width:165px;}}
@media only screen and (max-width:1216px) {.loopSlider ul li {width:152px;}}
@media only screen and (max-width:1120px) {.loopSlider ul li {width:140px;}}
@media only screen and (max-width:1016px) {.loopSlider ul li {width:127px;}}
@media only screen and (max-width:920px) {.loopSlider ul li {width:115px;}}
@media only screen and (max-width:816px) {.loopSlider ul li {width:102px;}}
@media only screen and (max-width:720px) {.loopSlider ul li {width:180px;}}
@media only screen and (max-width:620px) {.loopSlider ul li {width:155px;}}
@media only screen and (max-width:520px) {.loopSlider ul li {width:130px;}}
@media only screen and (max-width:420px) {.loopSlider ul li {width:105px;}}

@media only screen and (max-width: 768px) {
	.loopSliderWrap,
	.loopSlider,
	.loopSlider ul {
		height: 9.2vw;
	}
}
@media screen and (max-width:640px){
	.loopSliderWrap,
	.loopSlider,
	.loopSlider ul {
		height: 18vw;
	}
}

/*ズームアウト*/
.slick-active img{width: 100% !important; transform:scale(1.1); height: auto;animation: animationZoom1 5s ease-in-out forwards;}
@keyframes animationZoom1 {
100% {transform:scale(1.0)} 
}
/*スライド*/
@keyframes animationslide {
0% {transform: translateX(0%)}
100% {transform: translateX(-11%)}
}

/*フェードイン*/
.fadeIn{animation-name:fadeInAnime;animation-duration:4s;animation-fill-mode:forwards;opacity:0;}
@keyframes fadeInAnime{
from{opacity: 0;}
to{opacity: 1;}
}

select:focus{border:1px solid #000;box-shadow:none;}

/*thankspage*/
#thanks{padding:120px 20px; text-align:center;}
#thanks h1{font-size:25px; margin-bottom:20px;}
/*スマホ*/
@media screen and (max-width:840px){
	#main{display:block;}
	.entry-list{width:90%; margin:0 auto;}
	.blog_list .blog_data{display:block;}
	.blog_data2{margin-bottom:20px;}
	.blog_list a{padding-bottom:40px; margin-bottom:40px;}
	.pnavi{margin-bottom:100px;}
	.sidebar{width:90%; margin:0 auto;}
	.consulting-page .style1 .image50{height:60vw !important;}
	.consulting-page .spotlight.style1{flex-direction: column !important;}
	.consulting-page .pagesh{padding:40px 20px;}
	.consulting-page .pagesh h2{font-size:18px; line-height:30px; }
	.consulting-section{padding: 100px 0 100px 5vw;}
	.consulting-section-inner{display:block; padding:60px;}
	.consulting-section-image{left:auto; top:-100px;}
	.results-section{padding:80px 0;}
	.results-section-inner{width:90%;}
	.results-section-image{width: 100px;height: 100px;margin-right: 20px;}
	.flow_container{padding:80px 0;}
	.flow_inner{width:90%;}
	.flow_meta{flex:1;}
	.flow_image{width:80px; height:80px; margin-right:20px;}
	.flow_title{font-size:20px;}
	.flow_meta p{font-size:12px;}
	.project-list{width:90%; margin:0 auto;}
	.project_inprogress{display:block;}
	.project_inprogress h2{text-align:center; margin-bottom:40px; width:100%;}
	.project_image{width:100px; height:100px; margin-right:20px;}
	.slick-slider{z-index:1;}
	.faq-container{width:90%;}
	.faq-container dt,.faq-container dd .a{padding:20px 0;}
	.faq-container dt:before,.faq-container dd .a:before{width:35px; height:35px; line-height:31px; font-size:16px; margin-right:15px;}
	.profile-container{width:90%; margin:0 auto;}
	.profile-item{display:block;}
	.profile-image{width:100%; margin-bottom:40px;}
	.profile-data{text-align:center;}
	.profile-item .name{font-size:5vw; margin-bottom:10px;}
}
@media screen and (max-width:640px){
	#wrapper{position:relative; z-index:1;}
	.pagetitle img{width:154px;}
	#main{padding:40px 0;}
	.pagetitle{font-size:4.6vw;}
	#banner{height:30vh; position:relative;z-index:9998;overflow:initial;}
	#banner:after{height:30vh;}
	.pankuzu{padding:20px 20px 6px 20px;}
	.works-list{width:90%;}
	.contact-container{width:90%; margin:0 auto;}
	.linelink a{width:200px;padding: 10px 0;}
	.m-w-form .contactitem, .contact-form .contactitem{display:block;}
	.contactitem p{display:none;}
	.m-w-form .contactitem span.clabel, .contact-form .contactitem span.clabel{display:block; width:100%; margin-bottom:10px;}
	ul.termlist{width:90%; justify-content:space-between;padding: 1% 0 0 0;}	
	ul.termlist li{padding:10px 2px;}
	.logo a {width: 125.625px;background-size: 100%;height: 40px;z-index: 9999;position: fixed;margin-top: 4px;top:20px;}
	.project_inner img.projecttitle {width: 125px;}
	ul.icons li a img {width: 22px;}
	.project-list h2, .blog_data h2 {font-size:15px !important;}
	.project-list .title, .blog_data span {font-size:14px !important;}
	.profile-container .name {font-size:15px;}
	.profile-container .title {font-size:13px;}
	.submit input[type="submit"] {width: 200px; height: auto; font-size: 13px;}
}
@media screen and (max-width:400px){
	.termlist {font-size:3vw;}
}

/*scroll down*/
#scroll-down-container{padding:20px 0;}
.scroll-down{width: 1px;height: 80px;background: #2e2c29;animation: scrollDown4 2s ease infinite;margin: 0 auto;}
@keyframes scrollDown4{
0%{transform-origin: top;transform: scaleY(0);}
45%{transform-origin: top;transform: scaleY(1);}
55%{transform-origin: bottom;transform: scaleY(1);}
100%{transform-origin: bottom;transform: scaleY(0);}
}

.wpcf7-form span,.wpcf7-form input,.wpcf7-form option,th,td,.profile-description, p, .pub_data .des1, .pub_data .des2, .pub_data .link, .blog_data h2,  .blog_data span, .rpwwt-post-title, .faq-container , .contactitem , .mailpoet_paragraph input[type="email"] , .mailpoet_paragraph input[type="submit"], .mailpoet-heading {font-family: 'Yu Mincho Light', YuMincho,"游明朝", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;}

/*MAIL MAGAZINE*/
.mailpoet_paragraph input[type="submit"] {color:#fff !important;font-weight:bold;}
#mailpoet_form_1 {max-width: 800px;margin: 0 auto;}
.mailpoet_paragraph {max-width: 300px!important;margin:0 auto 20px;}

.caption{position:absolute; bottom:25vh; left:4vh; color:#fff; z-index:9999;}
.caption:after{background:transparent !important; box-shadow:none !important;}
@media screen and (max-width:1120px){
	.caption{position:relative; bottom:25vh; left:4vh; color:#fff;}
}
@media screen and (max-width:640px){
	.caption{position:relative; bottom:-8vh; left:4vh; color:#fff;}
}

/*上に消えるエリア*/
body.appear .splashbg1{
	animation-name:PageAnime;
	animation-duration:1.4s;
	animation-timing-function:ease-in-out;
	animation-fill-mode:forwards;
    content: "";
    position:fixed;
	z-index: 99999;
    width: 100%;
    height: 100vh;
    bottom:50%;
	left:0;
    transform: scaleY(1);
    background-color: #fff;/*伸びる背景色の設定*/
}

@keyframes PageAnime{
	0% {
		transform-origin:top;
		transform:scaleY(1);
	}

	100% {
		transform-origin:top;
		transform:scaleY(0);
	}
}

/*下に消えるエリア*/
body.appear .splashbg2{
    animation-name:PageAnime2;
	animation-duration:1.4s;
	animation-timing-function:ease-in-out;
	animation-fill-mode:forwards;
    content: "";
    position:fixed;
	z-index: 99999;
    width: 100%;
    height: 100vh;
    top: 50%;
	left:0;
    transform: scaleY(1);
    background-color: #fff;/*伸びる背景色の設定*/
}

@keyframes PageAnime2{
	0% {
		transform-origin:bottom;
		transform:scaleY(1);
	}
	100% {
		transform-origin:bottom;
		transform:scaleY(0);
	}
}
#cf .contact_inner {
	padding: 0 20px 100px 20px !important;
}