@charset "utf-8";
/* Copyright 2024 design hack. */

/* ------------------------------------------------------------

ホーム

------------------------------------------------------------ */
/* 共通
---------------------------------------------- */
@media print, screen and (max-width: 767px){
.sp_inner_pd{padding: 0 20px;}
}

/* プロモーション
---------------------------------------------- */
.swiper-container {width: 100%;height: 700px;overflow: hidden;color:#FFF;}
.swiper-slide {position: relative;display: flex;justify-content: center;align-items: center;}
.swiper-slide img {width: 100vw; /* 画像の幅をビューポートの幅に設定 */height: 700px;object-fit: cover; /* 画像がはみ出すようにカバー */}
.caption01 {position: absolute;left: 20px;bottom: 121px;font-size: 60px;font-weight: 700;margin: 0 0 -17px 0;line-height: 1.6;}
.caption02 {position: absolute;left: 20px;bottom: 61px;color: #FFFFFF;font-size: 22px;font-weight: 500;line-height: 1.8;}

@media print, screen and (max-width: 1200px){
.caption01 {left: 20px;bottom: 130px;font-size: 45px;}
.caption02 {left: 20px;bottom: 61px;font-size: 18px;}
}

@media print, screen and (max-width: 767px){
.swiper-container {width: 100%;height: 400px;overflow: visible;}
.swiper-slide img {height: 400px;}
.caption01 {left: 20px;bottom: 124px;font-size: 28px;margin: 0;padding-right: 10px;}
.caption02 {left: 20px;bottom: 50px;font-size: 15px;padding-right: 10px;}
}

/* base へ移動？？
---------------------------------------------- */
@media print, screen and (max-width: 767px){
}

/* HOME共通
---------------------------------------------- */
.detail_arw a{width: 220px;height: 60px;font-weight:600;border-radius: 30px;padding: 0 0 0 0;background:#008943 url(/img/arw_more.png) no-repeat right 10px top 0.6em;background-size: 40px 40px; padding:13px 0 0 30px;color: #FFFFFF;display: block;}
.detail_arw a:hover{background:#47B156 url(/img/arw_more.png) no-repeat right 5px top 0.6em;background-size: 40px 40px;transition: 0.3s;}

@media print, screen and (max-width: 1200px){
}

@media print, screen and (max-width: 767px){

}


/* ABOUTUS
---------------------------------------------- */
section#about{padding: 140px 20px;max-width: 1240px;width: 100%;margin: 0 auto;}
div#about_wrap{overflow: hidden;}
div#about_detail{float: left;width: 53.333%;}
div#about_detail h2{font-size: 34px;font-weight: 700;margin: -2px 0 30px 0;}
div#about_detail h2 span{color: #008943;display: block;font-size: 20px;font-weight: 500;line-height: 1.0;letter-spacing: 0.1em;font-family: "Rubik", sans-serif;margin: 0 0 8px 0;}
div#about_detail p{margin-bottom: 55px;}
div#about_detail p:last-child{margin-bottom: 0;}

div#about_img{float: right;width: 43.333%;padding-top: 20px;}
@media print, screen and (max-width: 1200px){
}

@media print, screen and (max-width: 767px){
section#about{padding: 70px 20px;max-width: 100%;margin: 0;}
div#about_wrap{overflow: visible;}
div#about_detail{float: none;width: 100%;margin: 0 0 50px 0;}
div#about_detail h2{font-size:27px;margin: -2px 0 17px 0;}
div#about_detail h2 span{margin: 0 0 7px 0;}
div#about_detail p{margin-bottom: 35px;}
div#about_detail p:last-child{margin-bottom: 0;}

div#about_img{float: none;width: 100%;padding: 0;}
div#about_img img{width: 100%;}
}

/* Specified
---------------------------------------------- */
section#specified{padding: 140px 20px;max-width: 1240px;width: 100%;margin: 0 auto;overflow: hidden;}
div#specified_wrap{overflow: hidden;margin-bottom: 100px;}
div#specified_wrap h2{float: left;width: 27.5%;font-size: 40px;font-weight: 700;margin: -2px 0 30px 0;}
div#specified_wrap h2 span{color: #F19121;display: block;font-size: 16px;font-weight: 500;line-height: 1.0;letter-spacing: 0.1em;font-family: "Rubik", sans-serif;margin: 0 0 -6px 0;}
div#specified_detail{float: right;width: 65%;}
div#specified_detail h3{font-size: 24px;font-weight: 700;margin:-13px 0 18px 0;}
div#specified_detail p{margin-bottom: 55px;}
div#specified_detail p:last-child{margin-bottom: 0;}

ul#specified_list{overflow: hidden;}
ul#specified_list li{float: left;width: 31.667%;margin: 0 2.5% 0 0;}
ul#specified_list li:last-child{margin: 0 0 0 0;}
ul#specified_list li img{width: 100%;}
ul#specified_list li:hover img{opacity: 0;transition: 0.3s;}
ul#specified_list li:first-child{background:url(/img/specified_btn01_on.jpg) no-repeat 0 0;background-size:100%;}
ul#specified_list li:nth-child(2){background:url(/img/specified_btn02_on.jpg) no-repeat 0 0;background-size:100%;}
ul#specified_list li:last-child{background:url(/img/specified_btn03_on.jpg) no-repeat 0 0;background-size:100%;}

div#service_btn{width: 100%;background:url(/img/service_btn_on.jpg) no-repeat 0 0;background-size:100%;}
div#service_btn:hover img{opacity: 0;transition: 0.3s;}

@media print, screen and (max-width: 1200px){
div#specified_wrap h2{float: left;width: 35%;font-size: 40px;font-weight: 700;margin: -2px 0 30px 0;}
div#specified_detail{float: right;width: 63%;}

}

@media print, screen and (max-width: 767px){
section#specified{padding: 70px 20px;max-width: 100%;margin: 0 ;}
div#specified_wrap{overflow: visible;margin-bottom: 60px;}
div#specified_wrap h2{float: none;width: 100%;font-size: 27px;margin: 0 0 13px 0;}
div#specified_wrap h2 span{font-size: 15px;margin: 0 0 3px 0;}
div#specified_detail{float: none;width: 100%;}
div#specified_detail h3{font-size: 20px;font-weight: 700;margin:-13px 0 12px 0;}
div#specified_detail p{margin-bottom: 33px;}
div#specified_detail p:last-child{margin-bottom: 0;}

ul#specified_list{overflow: visible;}
ul#specified_list li{float: none;width:100%;margin: 0 0 30px 0;}
ul#specified_list li:last-child{margin: 0 0 0 0;}
ul#specified_list li:hover img{opacity: 1;}
ul#specified_list li:first-child,ul#specified_list li:nth-child(2),ul#specified_list li:last-child{background:none;}

div#service_btn{width: 100%;background:none;}
div#service_btn:hover img{opacity: 1;}
}

/* other
---------------------------------------------- */
div#other{padding: 140px 20px;}
ul#other_list{overflow:hidden;max-width: 1200px;width: 100%;margin:0 auto;}
ul#other_list li{width: 50%;float: left;}
ul#other_list li:first-child{background:url(/img/other_btn01_on.jpg) no-repeat 0 0;background-size: 100% 100%;}
ul#other_list li:nth-child(2){background:url(/img/other_btn02_on.jpg) no-repeat 0 0;background-size: 100% 100%;}
ul#other_list li:nth-child(3){background:url(/img/other_btn03_on.jpg) no-repeat 0 0;background-size: 100% 100%;}
ul#other_list li:last-child{background:url(/img/other_btn04_on.jpg) no-repeat 0 0;background-size: 100% 100%;}
ul#other_list li img:hover{opacity: 0;transition: 0.3s;}

@media print, screen and (max-width: 1200px){
}

@media print, screen and (max-width: 767px){
div#other{padding: 70px 20px;}
ul#other_list{max-width: 100%;margin:0;}
ul#other_list li:first-child,ul#other_list li:nth-child(2),ul#other_list li:nth-child(3),ul#other_list li:last-child{background:none;}
ul#other_list li img:hover{opacity: 1;}
}

/* NEWS
---------------------------------------------- */
section#news{overflow:hidden;max-width: 1200px;width: 100%;margin:0 auto;padding:140px 20px;}
div#news_ttl{float: left;width: 11.667%;font-family: "Rubik", sans-serif;}
div#news_ttl h2{font-size: 44px;font-weight: 500;color: #008943;letter-spacing: 0.1em;margin: -6px 0 38px 0;line-height: 1.0;}

section#news ul#news_list{width:75%;float: right;border-top: 1px solid #CCCCCC;}
section#news ul#news_list li{border-bottom: 1px solid #CCCCCC;}
section#news ul#news_list li dl {width: 100%;overflow: hidden;}
section#news ul#news_list li dl dt{float: left;padding:32px 0 30px;color: #808080;font-family: "Rubik", sans-serif;font-weight: 500;}
section#news ul#news_list li dl dd{float: left;padding:32px 0 30px 70px;font-size: 15px;}
section#news ul#news_list li dl dd a:hover{color:#008943;}

p.news_arw a{background:url(/img/arw_grn.png) no-repeat right center;background-size: 40px 40px;padding: 5px 57px 5px 0;font-family: "Rubik", sans-serif;width: 130px;font-weight: 500;letter-spacing: 0.1em;display: block;}
p.news_arw a:hover{background:url(/img/arw_grn_on.png) no-repeat right center;background-size: 40px 40px;padding: 5px 62px 5px 0;width: 135px;transition: 0.3s;color: #008943;}

@media print, screen and (max-width: 1200px){
}

@media print, screen and (max-width: 767px){
section#news{overflow:visible;max-width: 100%;margin:0;padding:70px 20px;}
div#news_ttl{float: none;width: 100%;margin: 0 0 40px 0;}
div#news_ttl h2{font-size: 40px;font-weight: 500;color: #008943;letter-spacing: 0.1em;margin: -5px 0 24px 0;line-height: 1.0;}

section#news ul#news_list{width:100%;float: none;}
section#news ul#news_list li dl {width: 100%;overflow: visible;}
section#news ul#news_list li dl dt{float: none;padding:12px 0 5px;}
section#news ul#news_list li dl dd{float: none;padding:0 0 12px 0;font-size: 14px;}

p.news_arw a{background:url(/img/arw_grn.png) no-repeat right center;background-size: 40px 40px;padding: 7px 0;width: 122px;}
p.news_arw a:hover{background:url(/img/arw_grn_on.png) no-repeat right center;background-size: 40px 40px;padding:7px 0;width: 122px;}
}

/* INSTA
---------------------------------------------- */
section#insta{max-width: 1200px;width: 100%;margin:0 auto;padding:140px 20px;}
section#insta h2{font-size: 30px;font-weight: 500;text-align: center;margin: 0 0 45px 0;line-height: 1.0;font-weight: 700;background:url(/img/insta_ico.png) no-repeat top center;background-size: 106px 30px;padding: 50px 0 0 0;letter-spacing: 0.1em;}
div#wrap_insta{width: 100%;height: 220px;background: #000000;}

@media print, screen and (max-width: 1200px){
}

@media print, screen and (max-width: 767px){
section#insta{max-width: 100%;margin:0;padding:70px 20px;}
section#insta h2{margin: 0 0 25px 0;padding: 40px 0 0 0;}
div#wrap_insta{width: 100%;height: 220px;background: #000000;}
}