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

/*------------------------------
　共通
------------------------------*/
body{display:flex;flex-direction:column;    justify-content: space-between;}
.sp{display: none !important;}
.-sankaku,.have-child{display: none !important;}
.w1100{width: 1100px;margin: 0 auto;}
right{        display: flex; justify-content: flex-end;}

.m-b30{margin-bottom: 30px;}
.m-b50{margin-bottom: 50px;}

h1{font-size: 12px;font-weight: 400;letter-spacing: .1rem;color:#888;}
h2{font-size: 26px;font-weight: 600;letter-spacing: .05rem;line-height:1.6;}

.txt-arrow:after{content:"";background: url(../../../image/common/txt-arrow.svg) no-repeat center right / contain;width: 10px; height: 14px;}
.en{font-family: "Outfit", sans-serif;font-weight: 600;font-style: normal;font-size:130%;line-height:1;letter-spacing:1px;}

.gre{background-color:#f0f0f0;}
.pink{background-color:#ffecf5;}
.d-gre{background-color:#838383;}


.bt-mail{font-weight: 600; font-size: 21px; background-color:#e65b9e;color:#FFF;border-radius: 60px; line-height: 1; padding: 25px 60px; display: inline-flex; justify-content: center;gap:15px;margin-bottom:30px;transition:.3s;
box-shadow: rgba(0, 0, 0, 0.16) 2px 8px 0px}
.bt-mail:hover{background-color:#ec59a1;color:#FFF;transform: scale(1.05);box-shadow: rgba(0, 0, 0, 0.15) 0px 15px 15px, rgba(0, 0, 0, 0.05) 0px 5px 8px;}
.bt-mail:before{content:"";display:inline-block;background: url(../../../image/common/icon-mail_w.svg) no-repeat center center / contain;width: 34px; height:24px;transform: scale(1);transition:.3s;}
.bt-mail:hover::before{background: url(../../../image/common/icon-mail_w.svg) no-repeat center center / contain;transform: scale(1.05);
}


.more-bt.-blue{font-weight: 600; font-size: 18px; border-radius: 30px; line-height: 1; padding: 18px 56px 18px 34px; display: inline-flex; justify-content: center;gap:6px;margin-top:30px;transition:.3s;color:#FFF;letter-spacing:.1rem;}
.more-bt.-blue{background:#111 url(../../../image/common/more-bt-blue.svg) no-repeat center right / 100px;}
.more-bt.-blue:hover{background:#0091d2 url(../../../image/common/more-bt-kuro.svg) no-repeat center right / 100px; color:#FFF;}

.more-bt.-pink{font-weight: 600; font-size: 18px; border-radius: 25px; line-height: 1; padding: 14px 40px 14px 20px; display: inline-flex; justify-content: center;gap:6px;margin-top:20px;transition:.3s;color:#FFF;letter-spacing:.1rem;}
.more-bt.-pink{background:#111 url(../../../image/common/more-bt-pink.svg) no-repeat center right / 83px;}
.service-box:hover .more-bt.-pink{background:#de619e url(../../../image/common/more-bt-kuro.svg) no-repeat center right / 83px; color:#FFF;}


.more-bt{font-weight: 600; font-size: 16px; border-radius: 18px; line-height: 1; padding: 10px 30px 10px 20px; display: inline-flex; justify-content: center;gap:6px;margin-top:20px;transition:.3s;color:#FFF;letter-spacing:.1rem;}
.more-bt{background:#111 url(../../../image/common/more-bt-arrow_w.svg) no-repeat center right / 40px;}
.more-bt:hover{background:#de619e url(../../../image/common/more-bt-arrow_w.svg) no-repeat center right / 40px; color:#FFF;}

.pic img{width:100%;height:auto;}

section{padding-bottom:50px;}

.soudan-waku{max-width:940px;margin:0 auto;position:relative;}
.soudan-chara{position:absolute;right:0;}
/*------------------------------
　ヘッダー
------------------------------*/
header{width:100%;position:fixed;top:0;z-index:999;}
.header-inner{position:relative;box-shadow: rgb(0 0 0 / 30%) 0px 18px 15px -20px;height:100px;}
.h-head-set{background-color:#f0f0f0;padding:5px 230px 5px 330px;display:flex;justify-content:space-between;line-height:1;font-size:14px; align-items: center;}
.h-head-set .tel-set{display:flex;justify-content:flex-end;gap:10px; align-items: center;}
.h-head-set .tel-set a{display: flex;justify-content:flex-start;gap:6px;}
.h-head-set .tel-set p{background-color:#0091d2;color:#FFF;font-size:12px;border-radius:15px;padding:5px 10px; font-weight: 500;letter-spacing: .05rem;border-radius: 20px;margin-left:6px;}
.h-head-set .en{font-size:30px !important;}

.h-logo{position:absolute;top:0;left:0;width:min(344px,28vw);}
.h-logo img{width:100%;height:auto;}
.h-bt-set{display: flex;justify-content: flex-end;}
.bt-tel{display: flex;justify-content: center;align-items: center;padding: 0 20px;}
.bt-aly,.bt-clg{display: flex;justify-content: space-between;gap:10px; align-items: center;color: #FFF;font-size: 14px;padding: 0 10px 0 20px;line-height: 1.2;letter-spacing: .02rem;width: 150px;}
.bt-aly{background-color: #1db7ce;}
.bt-clg{background-color: #72441f;}
.h-bt-arrow{width: 10px !important;height: auto !important;}

.hamburger-set{display: none;}
.nav-set{background-color:#FFF;display: flex;justify-content: space-between;padding:0 300px;height:60px;}
.nav-set-wrapper{display:flex;justify-content:center;flex:1;z-index:5;}
.nav-list{display: flex;justify-content: center;align-items:center;gap:min(4vw,100px);font-size: min(16px,1.1vw);position:relative;}

.head-apply-bt{position:absolute;right:0;bottom:0;}
.head-apply-bt img{height:100px;width:auto;}

@media (max-width: 1200px){
	.h-head-set{flex-direction:column;align-items:flex-end;}
	.h-head-set h1{padding-bottom:5px;}

	.nav-set-wrapper{justify-content:flex-end;}
	.nav-set{padding-left:unset;}
	.nav-list{font-size:14px;gap:3vw;}
}
/*------------------------------
　TOPコンテンツ
------------------------------*/

.slider-waku{aspect-ratio: 3 / 1;position:relative;margin-top:100px;}
.slider{background: url(../../../image/slider/slider-pic2.webp) no-repeat bottom center / cover;height: 100%;width:100%;}
.slider-txt {display:block;position: absolute;top: 0;left: 0;height: 100%;}
.slider-txt img{height: 100%;width: 100%; object-fit: cover;}

.bana-set{margin: 30px 8vw;max-width: calc(100% - 16vw);min-width: 960px;}
.bana-set{}
.bana-set img{width: 100%;height: auto;padding:5px 20px;}
.slick-prev, .slick-next{width:30px !important;height:30px !important;}
.slick-prev:before, .slick-next:before{font-size: 30px !important;color:#333 !important;}
.slick-dots li button:before{font-size:10px !important;}
.slick-dots{padding-bottom:15px;}
.slick-dotted.slick-slider{margin-bottom:40px !important;}

.apply-bana-set {
  display: flex;
  position: relative;
  width: 100%;
  height: 360px;
  margin: 0 auto;
}

.apply-bana-set a {
  flex: 1;
  height: 360px;
  background-size: cover;
  display: flex;justify-content: center;align-items:center;transition:.3s;
}
.apply-bana-set a:hover{filter: brightness(1.3);}
.apply-bana-set a.-apply {
  background-image: url(../../../image/common/bana-bg-apply.webp);
	background-position: right;
  clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
  -webkit-clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
  z-index: 1;
}

.apply-bana-set a.-akiya {
  background-image: url(../../../image/common/bana-bg-akiya.webp);
	background-position: left;
  clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%);
  -webkit-clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%);
  margin-left: -8%;
  z-index: 2;
}
.apply-bana-set img{max-width:100%;height:auto;}
@media (max-width: 1200px){
.bana-set{margin: 30px 7vw;max-width: calc(100% - 8vw);min-width: 800px;}
}

.section-title-flex{display:flex;justify-content:flex-start;gap:min(40px,3vw);}
.section-title{}
.section-title-txt{padding-top: 20px;display: flex;flex-direction: column;align-items: flex-start;justify-content: center;padding-right:4vw;}
.section-title-txt h2{font-size:44px;line-height:1.2;letter-spacing:normal;}
.section-title-txt p{font-size:21px;line-height:1.4;padding-top:12px;}

/* 選ばれる理由 */
.reason .section-title-txt h2 span{color:#0091d2;}
.reason-flex{max-width: calc(100% - 16vw);min-width: 920px;margin:15px auto;display:flex;justify-content:center;gap:min(50px,4vw);}
.reason-box{width:33%;background-color:#FFF;box-shadow: rgba(0, 0, 0, 0.15) 8px 8px 1px;position:relative;}
.reason-box img{width:100%;height:auto;}
.reason-box .no{position:absolute;width: 45%;max-width: 220px; top:-20px;left:-20px;}
.reason-box .no img{width:100%;height:auto;}
.reason-box h2{}
.reason-box h2 span{color:#e65b9e;}
.reason-box .txt{padding:20px;}
.reason-box .txt p{padding-top:20px;line-height:1.6;}

/* サービス内容 */
.service-icon-flex{display:flex;justify-content:flex-start;align-items:center;gap:20px;flex-wrap:wrap;padding-top:65px;padding-bottom:50px;padding-right:130px;}
.service-icon-flex a{width:max(130px,6vw);}
@media (max-width: 1200px){
.service-icon-flex{max-width:900px;padding:0;margin:0px auto 30px;}
}
.service-icon-flex a img{width:100%;height:auto;}

.service-icon-flex a {
    position: relative;
    background-color: #999;
    background-image: linear-gradient(135deg, #e65b9e 50%, transparent 50%);
    background-position: 100%;
    background-size: 300%;
    transition: background 500ms ease-in-out;
}
.service-icon-flex a:hover { background-position: 0;}

.icon-arrow{width:max(80px,3.5vw);height:auto;}
.service-flex{max-width: 1200px;margin:15px auto;display:flex;justify-content:center;flex-direction:column;gap:50px;padding:0 40px;}
.service-box{display:flex;position:relative;background-color:#FFF;align-items: stretch;justify-content: space-between;box-shadow: rgba(0, 0, 0, 0.15) 8px 8px 1px;}
.service-box h2 span{color:#0091d2;}
.service-box .service-menu{position:absolute;top:-10px;left:-20px;font-size:30px;font-weight:500;color:#FFF;background-color:#111;padding: 15px 20px; letter-spacing: .15rem;}
.service-box .service-menu:after{content:"";position:absolute;background: url(../../../image/service/service-menu-ori.svg) no-repeat top left / cover;height: 20px;width: 20px;bottom: -20px;left: 0;}

.service-box .txt {padding:70px 30px 20px;flex:1.4;}
.service-box .txt p{font-size:16px;padding-top:20px;line-height: 1.6;padding-bottom:15px;}
.service-box .txt p b{padding:0 5px;border-bottom:2px dotted #0091d2;}

.service-box .pic{width:100%;flex:1;overflow:hidden;display:flex;justify-content:center;align-items:center;}
.service-box .pic img{width:100%;height:100%;object-fit:cover;transition:.3s;}
.service-box:hover .pic img{width:110%;height:110%;object-position:center;transition:.3s;}

/* 料金プラン */
section.price{background-image: url(../../../image/common/price-bgimg.webp);
background-repeat: no-repeat;
background-size: cover; 
background-attachment:fixed; 
background-position:top right;} 
.price .section-title-txt h2 span{color:#e65b9e;}
.top-price-waku{max-width: 1200px;margin:-30px auto 30px;}
.top-price-waku h2{font-size:50px;text-align:center;font-weight:600;margin-bottom:50px;}
.top-price-waku h2 span{color:#e65b9e;}
@media (max-width: 1200px){.top-price-waku{max-width: 1000px;margin:0px auto 30px;}}
.top-price-waku .hoso{text-align:center;}

.top-price-hyo{border:1px solid #f0f0f0;padding-bottom:20px;background-color:#FFF;        box-shadow: rgba(0, 0, 0, 0.25) 8px 8px 0px;}
.top-price-hyo h3{font-size:26px;color:#FFF;background-color:#111;padding:20px 0;text-align:center;letter-spacing:.1rem;font-weight:600;}
.top-price-info-box{background-color:#f0f0f0;}
.top-price-info.-flex{display:flex;justify-content:space-between;gap:20px;padding:20px 20px 10px;}
.top-price-info.-flex .top-price-info-box{width:calc(33% - 15px);}
.top-price-info-box .title{font-size:18px;font-weight:600;letter-spacing:.1rem;padding:10px 5px;text-align:center;color:#FFF;}
.top-price-info-box .title.-mokuzo{background-color:#00a3d2;}
.top-price-info-box .title.-tekotu{background-color:#0080d2;}
.top-price-info-box .title.-rc{background-color:#005dd2;}
.top-price-info-box .tubo{background-color:#4d4d4d;color:#FFF;font-size:18px;text-align:center;line-height:1.2;padding:8px;letter-spacing:.1rem;}
.top-price-info-box .price{font-size:16px;font-weight:600;text-align:center;padding:8px 0;border-bottom:1px dotted #ccc;}
.top-price-info-box .price b,.top-price-info-box .price span{color:#D2003C;font-size:18px;}
.top-price-info-box .price b{font-size:240%;}
.top-price-info-box .tax{text-align:center;font-size:16px;padding:8px 0 12px;}

.top-price-flex{display:flex;justify-content:space-between;gap:25px;margin-top:50px;flex-wrap:wrap;}
.top-price-hyo.-other{width:calc(25% - 20px);display: flex;flex-direction: column;justify-content: space-between;}
.-other h3{font-size:19px;}
.-other .info-set{flex:1; display: flex;flex-direction: column;justify-content: space-between;}
.-other .price{font-size:18px;font-weight:600;text-align:center;padding:8px 0;}
.-other .price b{font-size:160%;color:#D2003C;}
.top-price-hyo p{font-size:18px;font-weight:500;text-align:center;padding:8px 15px;line-height:1.4;flex:1;}

/* 施工事例 */
.works-flex{max-width: calc(100% - 16vw);margin:15px auto;display:flex;justify-content:center;gap:min(40px,3vw);flex-wrap:wrap;}
.works-box{width:calc(25% - 30px);background-color:#FFF;box-shadow: rgba(0, 0, 0, 0.15) 8px 8px 1px;position:relative;}
.works-box .pic{aspect-ratio: 1.4 / 1;overflow:hidden;display:flex;justify-content:center;align-items:center;}
.works-box .pic img{width:100%;height:100%;object-fit:cover;object-position:center;transition:.3s;}
.works-box:hover .pic img{width:110%;height:110%;opacity:.8;object-position:center;transition:.3s;}
.works-box .txt{padding:15px 50px 15px 15px;}
.works-box h2{font-size:18px;line-height:1.4;letter-spacing: normal;}
.works-cat{display:inline-block;font-size:14px;color:#FFF;background-color:#222;text-align:center;padding:8px;margin-bottom:10px;}
.works-box .works-bt{position:absolute;bottom:0;right:0;width:95px;height:90px;background:url(../../../image/common/works-bt_1.svg) no-repeat bottom right;transition:.3s;}
.works-box:hover .works-bt{position:absolute;bottom:0;right:0;width:95px;height:90px;background:url(../../../image/common/works-bt_2.svg) no-repeat bottom right;transition:.3s;}
@media (max-width: 1200px){
	.works-flex{max-width: 94%;}
	.works-box .txt{padding:10px 10px 50px 10px;}
}

/* タイセイについて */
section.about{padding-bottom:0;background: url(../../../image/common/about-more-bk.webp) no-repeat top left;background-size: 60vw auto;padding-bottom:30px;}
.about-waku{display:flex;}
.about-waku .pic{flex:1.1;}
.about-txt{padding:50px;flex:.9;}
.about-txt h2{padding:15px 0;font-size:42px;}
.about-txt p{font-size:18px;line-height:1.8;}

.about-more-waku{text-align:center;max-width:1000px;margin:0px auto;}
.about-more-title{border-top: 2px solid #222; border-bottom: 2px solid #222;padding: 10px;font-size: 26px;font-weight: 600;margin-top:30px;}
.about-more-title span{color:#e65b9e;}
.about-more-txt{padding:20px;}
.about-more-txt p{line-height:1.8;font-size:18px;font-weight:500;}

/* 4つボタンセット */
.four-bt-flex{display:flex;justify-content:space-between;align-items:center;border-top:2px solid #FFF;}
.four-bt-flex a{padding:40px 0 30px;flex:1;display:flex;justify-content:center;align-items:center;transition:.3s;}
.four-bt-flex a + a{border-left:1px solid #FFF;}
.four-bt-flex a.-service{background: url(../../../image/common/four-bg-service.webp) no-repeat center center / cover;}
.four-bt-flex a.-company{background: url(../../../image/common/four-bg-company.webp) no-repeat center center / cover;}
.four-bt-flex a.-recruit{background: url(../../../image/common/four-bg-recruit.webp) no-repeat center center / cover;}
.four-bt-flex a.-area{background: url(../../../image/common/four-bg-area.webp) no-repeat center center / cover;}
.four-bt-flex a img{max-width:100%:width:100%;height:auto;}
.four-bt-flex a:hover{filter: brightness(1.2);}

/* コラム・ブログ */
article.blog{padding-bottom:50px;}
.blog-waku{max-width:1100px;margin:-100px auto 30px;}

.blog-list{display:flex;justify-content:space-between;align-items:center;gap:min(15px,1vw);padding:10px;border-bottom:1px dashed #ccc;}
.blog-list .blog-cat{font-size:14px;padding:6px;color:#FFF;width:7rem;text-align:center;}
.blog-list .blog-cat.-column{background-color:#0091d2;}
.blog-list .blog-cat.-blog{background-color:#e65b9e;}
.blog-list .title{flex:1;font-size:16px;}
.blog-list .date{font-size:14px;color:#ccc;}


@media screen and (max-width: 1800px) {
.blog-waku{max-width:1100px;margin:0px auto 30px;}
}

/* よくあるご質問 */

section.faq{width:100%;text-align: right;padding-top:30px;}
section.faq section{padding-bottom:unset;}
.accordion-area{
	text-align:left;
    list-style: none;
    width: 100%;
    max-width: 1100px;
    margin:15px auto;
}

.accordion-area li{ margin: 10px 0;}
.accordion-area section {
  border: 1px solid #ccc;
  background-color: #FFF;
  position: relative;
}

.accordion-area .title {
    position: relative;
    cursor: pointer;
    font-weight: 500;
	font-size: 1.3rem;
    padding: 2% 50px 2% calc(2% + 30px);
    transition: all .5s ease;
}
.accordion-area section:before{content: "Q";padding-top: 1%;padding-left: 1rem; position: absolute;color: #e65b9e;font-size: 2rem;font-weight: 700;}

/*アイコンの＋と×*/
.accordion-area .title::before,
.accordion-area .title::after{
    position: absolute;
    content:'';
    width: 20px;
    height: 2px;
    background-color: #51362b;
    
}
.accordion-area .title::before{
    top:48%;
    right: 15px;
    transform: rotate(0deg);
    
}
.accordion-area .title::after{    
    top:48%;
    right: 15px;
    transform: rotate(90deg);

}
.accordion-area .title.close::before{transform: rotate(45deg);}
.accordion-area .title.close::after{transform: rotate(-45deg);}

.accordion-area .box {
    display: none;
    background: #f6f6f6;
  margin:0 2% 2% 2%;
    padding: 2%;
}
.accordion-area .box p{
	font-size: 1rem;
	line-height:2;
    padding: 0;
}
.accordion-area .box a{font-weight: 700;padding: 0 .5rem;border-bottom: 2px dotted #0091d2;transition: .2s;}
.accordion-area .box a:hover{color: #0091d2;}

/*対応エリア*/
section.area{padding-bottom:unset;
background:#0091d2 url(../../../image/common/area-pic.svg) no-repeat center bottom;}
.area-flex{display:flex;justify-content:center;align-items:center;padding-bottom:0;}
.area-txt{color:#FFF;padding:140px 30px 55px;width:1100px;}
.area-txt h2{font-size:40px;padding-bottom:15px;}
.area-txt p{line-height:2;font-size:18px;}
.area-pic{text-align:right;}
/*------------------------------
　フッター
------------------------------*/
footer{background-color: #f0f0f0;padding: 30px 0 0;}
.footer-head{display:flex;justify-content:center;align-items:center;padding-bottom:30px;}
.footer-logo{border-right:1px solid #ccc;padding:0 30px;}
.footer-txt{padding:0 30px;}
.footer-txt h2{padding-bottom:6px;}
.footer-txt .shiten li{padding:6px 0;}

.footer-body{max-width:1000px;margin:0 auto;display:flex;justify-content:center;align-items:flex-start;gap:max(40px,3vw);padding:20px 0;margin-top:30px;border-top:1px solid #CCC;}
.footer-body ul{}
.footer-body li{padding:8px 0;white-space:nowrap;}
.footer-body li:before{content:"";display:inline-block;background-image:url(../../../image/common/txt-arrow.svg);background-repeat:no-repeat;background-size: contain;width: 15px;height: 12px;}
.footer-body .wrap{display:flex;gap:20px;}
.has-child{padding-top:28px;}
.footer-body .child{font-size:14px;padding-left:16px;padding:6px 0 6px 16px;}
.footer-body .child:before{content:"－";display:inline-block;padding-right:3px;background-image:unset;}

.footer-footer{padding:30px;background-color:#c4ddf2;}
.f-link-waku{display:flex;gap:25px;justify-content:center;flex-wrap:wrap;}
.f-link-waku img{width:100%;height:auto;max-width:240px;}

.fixed-bt{display:none;}
/*------------------------------
　下層ページ
------------------------------*/

.single-waku{flex:1;margin:100px auto 0;width:100%;position:relative;}

.page-title{position:absolute;top:0;left:0;z-index:-1;}
.page-title img{max-width:100%;height:auto;}

.single-contents {max-width: 1000px;margin: 0 auto;padding-top:40px;}

@media screen and (max-width: 2000px) and (min-width: 1201px) {
	.page-title img{max-width:480px;height:auto;}
  .single-contents {
    margin-left: calc(480px + 40px); 
    margin-right: calc(50% - 520px); ;
  }
}
@media screen and (max-width: 1200px) {
  .page-title {
    position: relative;
  }
  .single-contents {
    margin: 0 auto; /* 再度中央配置 */
  }
}


/*************************************************
 * カタログDL
 * ********************************************************/
#panf-img-set {padding:30px;}
#panf-img-set .wpcf7-checkbox{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;}
#panf-img-set .wpcf7-list-item{width:calc(33% - 20px);margin:0;}
#panf-img-set .wpcf7-list-item:before{content:"";display: block;aspect-ratio: 13 / 9;background-size: cover;background-repeat: no-repeat;}
#panf-img-set .wpcf7-list-item label{display:flex;align-items:center;justify-content:flex-start;padding:6px;gap:6px;}
#panf-img-set .wpcf7-list-item input{width: 24px;height: 24px;}


#panf-img-set .wpcf7-list-item:nth-child(1)::before{background-image:url(../../../image/catalog/gran_RC.webp);}
#panf-img-set .wpcf7-list-item:nth-child(2)::before{background-image:url(../../../image/catalog/gran-tochi.webp);}
#panf-img-set .wpcf7-list-item:nth-child(3)::before{background-image:url(../../../image/catalog/gran-souzoku.webp);}

.apply-title{text-align:center;padding-top:30px;}
.apply-thx-come{text-align: center;font-size: 18px;line-height:2;padding:30px 0;margin: 60px auto; background-color: #f0f0f0;}