@charset "utf-8";

/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/
html{
	scroll-padding-top: 120px;
}

body {
	width: 100% !important;
	color: #333;
	line-height: 1.625;
	/* overflow: hidden; */
	font-size: 1.6rem;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
}

.yugo{
	font-family:
    "Yu Gothic",
    "YuGothic",
    "游ゴシック",
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    "メイリオ",
    Meiryo,
    sans-serif!important;
}

.en{
	font-family: "Montserrat", sans-serif!important;
}


/* color */
.white{
	color: #ffffff!important;
}
.blue{
	color: #00A7EA;
}
.blue2{
	color: #01406D;
}
.red{
	color: #E60020;
}
.green{
	color: #01B4BA;
}
.yellow{
	color: yellow;
}
.black{
	color: #333;
}

.bgwh{
	background: #ffffff;
}
.bgblu{
	background: #00A7EA;
}
.bgblue2{
	background: #01406D;
}
.bgbla{
	background:#333;
}
.bgred{
	background: #E60020;
}
.bggre{
	background: #01B4BA;
}
.bgyel{
	background: yellow;
}

/*リンク表示方法*/

a {
	text-decoration: none;	
}

a:link {
	color: #333;
}

a:visited {
	color: #333;
}

a:active {
	color: #333;
}

a:hover {
	opacity: 0.7;
}

a:hover img {
	opacity: 1;
}

.hLogo a:hover{
	opacity: 1;
}

:has( > .lista){
	position: relative;
}

.lista{
	position: absolute;
	left: 0;
	top:0;
	width:100%;
	height:100%;
	z-index: 1;
}

a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	}
/*-----------------------------------------------------------
PCサイズ
-----------------------------------------------------------*/

.pc,.pc2 {
	display: block;
}

.sp,.sp2, .spTel {
	display: none;
}

.pcTel {
	display: inline;
}


/*-----------------------------------------------------------
header
-----------------------------------------------------------*/

header {
	padding: 0 2.084%;
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	left: 0;
	right: 0;
	z-index: 9999;
	transition: .4s;
	height: 100px;
	border-top: 5px solid #00A7EA;
	background: #fff;
	top: 0;
}

header:before{
	position:absolute;
	content:"";
	width:300px;
	height:5px;
	background:#E60020;
	top: -5px;
	right: 21.3545%;
}

.hLogo{
	max-width: 383px;
	width: 30%;
	margin-left: 1.087%;
}


.logo a:hover img {
	opacity: 1;
}

.headerTel {
	margin: 0 0 0 0;
	padding: 0px 0 0;
	font-weight: 900;
}

.off_img{
	display:block;
}

.on_img{
	display:none;
}

.headerScroll .off_img{
	display:none;
}

.headerScroll .on_img{
	display:block;
}

.open_cont{
	display: block;
	opacity: 0;
	pointer-events: none;
	cursor: none;
	width: 100%;
	transition: .4s;
	position: absolute;
	top: 53px;
	left:0;
/* 	padding-top: 31px; */	
	margin-top: 31px;
}
.article .open_cont{
	margin-top: 0;
}
/*-----------------------------------------------------------
テーブル共通
-----------------------------------------------------------*/

table {
	border-collapse: separate;
}



/*-----------------------------------------------------------
 nav
-----------------------------------------------------------*/

.pc_nav{
	width: 66%;
	max-width: 490px;
}

.nav_list1{
	display: flex;
	justify-content: flex-end;
	margin-top: 8px;
	width: 100%;
}

.nav_list1 > li {
	display: flex;
	align-items: flex-start;
}

.nav_list1 > li:hover p.open_nav{
	opacity:0.7;
}

.nav_list1 > li:hover .open_cont{
	opacity: 1;
	pointer-events: initial;
	cursor: initial;
}

.open_cont .open_bg{
	background:#ffffffd9;
}

.open_cont .open_in{
	max-width:832px;
	width:95%;
	margin:0 auto;
	padding:23px 0 25px;
}


.nav_list1 > li .flex2{
	max-width:645px;
	width:100%;
}



.nav_list1 > li:before{
	margin: 0 10px 0;
	content:url(./img/common/hd_slash.svg);
	display: flex;
	align-items: center;
	padding-top: 4px;
}

.nav_list1 > li:first-child{
	margin:0;
}

.nav_list1 > li:first-child:before{
	display:none;
}

.nav_list1 .open_nav{
	display: flex;
	text-decoration: none;
	font-size: 1.8rem;
	align-items: center;
	font-weight:700;
	transition: .4s;
}

.nav_list1 .open_nav span{
	font-size:1.2rem;
	margin-left: 10px;
}

.open_div {
	margin-bottom:23px;
}

.open_div .text{
	color:#007AB1;
	line-height:1.27777;
	font-weight:700;
}

.open_list1{
	display:flex;
}

.open_list1 li{
	margin-right:10px;
	margin-top:2px;
}

.open_list1 li:last-child{
	margin-right:0;
}

.open_list1 li a{
	padding:12px 20px;
	position:relative;
	background:#fff;
	border-radius:5px;
	box-shadow:0 0 5px #00000029;
	display:flex;
	align-items:center;
	font-weight:700;
}

.open_list1 li a span{
	display:block;
	padding-left:22px;
	position:relative;
}

.open_list1 li a span:before{
	position:absolute;
	content:"";
	width:12px;
	height:2px;
	background:#707070;
	left:0;
	top:0;
	bottom:0;
	margin:auto;
}

.hd_link{
	display:flex;
	max-width: 330px;
	width: 100%;
	margin-left: auto;
	justify-content: space-between;
}

.hd_link_btn1{
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	max-width:160px;
	width: 49%;
	height: 30px;
	font-weight: 700;
	line-height: 1;
	transition: .4s;
	font-size: 1.6rem;
	border-radius: 30px;
}

.hd_link_btn1.bgwh:hover{
	background: #dadada;
	opacity:1;
}


/*-----------------------------------------------------------
#slide
-----------------------------------------------------------*/

#modal {
	display: none;
}

/*-----------------------------------------------------------
#cover
-----------------------------------------------------------*/

#cover {
	width: 100%;
	margin: 0 auto 20px;
	padding-top: 100px;
}

.cov-in{
	width: 97.113%;
	position:relative;
	margin: 0 auto;
}

/* .cov-div{
	width: 100%;
	height:calc(100vh - 100px);
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 2.604166vw;
	min-height: 700px;
	background: url(./img/top/mv.png)no-repeat bottom;
	background-size: cover;
} */

/* .cov-div .title{
	max-width: 1394px;
	width: 95%;
	margin: 0 auto;
} */

/* 動画エリア専用 */
.mv-video-wrap{
	position: relative;
	width: 100%;
	height: calc(100vh - 100px);
	min-height: 700px;
	border-radius: 2.604166vw;
	overflow: hidden;
}

/* 動画 */
.mv-video-pc,
.mv-video-sp{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	z-index: 1;
	pointer-events: none;
}

/* SP動画は非表示 */
.mv-video-sp{
	display: none;
}

/* テキストを前面へ */
/* .mv-video-wrap .cov-div{
	position: relative;
	z-index: 2;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
} */

.cov-in .news_area{
	position:absolute;
	bottom: 0px;
	right: 0px;
	max-width: 823px;
	width: 65%;
	background: #fff;
	border-radius: 2.604166vw 0 0 0;
	padding: 3.004% 2.36% 2.4678% 4.023%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	min-width: 650px;
	position: initial;
	margin: auto;
	max-width: 1100px;
	padding: 80px 0;
	width: 100%;
}


.cov-in .news_area .left{
	width: 139px;
	flex-shrink: 0;
}


.cov-in .news_area .right{
/* 	max-width:544px; */
	width: 79%;
	margin-left: 20px;
}


.cov-in .news_area .left .mainTit{
	margin-bottom:25px;
}

.btn1{
	display:flex;
	align-items:center;
	border:1px solid;
	font-size:1.6rem;
	font-weight:700;
	line-height:1.5;
	height: 41px;
	border-radius: 30px;
	padding-left: 20px;
	max-width: 129px;
	width: 100%;
	transition:.4s;
	position:relative;
}

.btn1:before{
	position:absolute;
	content:"";
	width: 15px;
	height: 11px;
	background:url(./img/common/arrow1_bla.svg)no-repeat;
	background-size:contain;
	right:25px;
	top:0;
	bottom:0;
	margin:auto;
}

.btn1:hover{
	transform: translateX(10px);
	opacity:1;
}

.news_list1 li{
	display:flex;
	align-items:center;
	padding: 30px 0 7px;
	border-bottom: 1px solid #707070;
	transition:.4s;
}

.news_list1 li:hover{
	opacity:0.7;
}

.news_list1 li:first-child{
	padding-top:0;
}

.news_list1 li .date{
	font-size:1.6rem;
	font-weight:500;
	line-height:1.3125;
	margin-right:13px;
	flex-shrink: 0;
}

.news_list1 li .cont{
	display:flex;
	align-items: center;
	width: 100%;
}

.news_list1 li .cont .cate{
	width: 110px;
	/* height:20px; */
	border:1px solid;
	font-size:1.6rem;
	font-weight:500;
	line-height:1.25;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:20px;
	margin-right:18px;
	flex-shrink: 0;
}

.news_list1 li .cont .title1{
	font-size:1.8rem;
	font-weight:700;
	line-height:1.277778;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
	width: 100%;
}

/*-----------------------------------------------------------
 #main
-----------------------------------------------------------*/

#main {
	width: 100%;
	margin: 0px auto 0;
}

.flex{
	display: flex;
	justify-content: space-between;
}

.inner{
	width: 95%;
	max-width: 1100px;
	margin: 0 auto;
}

.mainTit{
	font-size: 2.8rem;
	line-height: 1.4285;
	font-weight:700;
	font-size: 2.8rem;
}

.mainTit span.en{display: block;position: relative;line-height: 1.2857;font-weight: 700;font-size: 1.4rem;padding-left: 16px;}

.mainTit span.en:before{
	width:7px;
	height:7px;
	position:absolute;
	content:"";
	left:0;
	top: 5px;
	background:#E60020;
	border-radius:50%;
}


.mainTit2{
	font-size: 1.8rem;
	line-height: 1;
	font-weight:500;
	font-size: clamp(1.6rem,4vw,1.8rem);
}

.mainTit2 span{

}

.subTit{
	font-size: 2.4rem;
	line-height:1.2;
	font-weight:700;
	font-size: clamp(2rem,4vw,2.4rem);
}

.top_cont{
	position:relative;
	background: url(./img/top/bg.png)no-repeat;
	background-size: cover;
	z-index: 1;
}

.top_cont:before{
	position:absolute;
	content:"";
	top:0;
	left:0;
	background:url(./img/top/bg1.png)no-repeat;
	background-size:contain;
	width: 47.344vw;
	height: 47.344vw;
	z-index: -1;
}

.content01{padding: 108px 0 0;}

.content01 .flex{
	align-items: center;
}

.content01 .flex .text_area{
	max-width:450px;
	width:50%;
}

.content01 .flex .text_area .title1{
	font-size: 3.8rem;
	line-height:1.4473;
	font-weight:700;
	font-size: clamp(2.4rem,4vw,3.8rem);
}

.content01 .flex .text_area .text1{
	margin-top: 25px;
}

.content01 .img{
	max-width:440px;
	width:50%;
	animation-delay: 0.8s !important;
}

.content01 .img video{
	width:100%;
	border: none!important;
}

.content02{
	padding: 5.834% 0 7.292%;
}

.content02 .mainTit{
	max-width:max-content;
	margin:0 auto;
}

.content02 .mainTit span.en{
	max-width:max-content;
	margin:0 auto;
}

.content02 .flex1{
	margin: 35px auto 0;
}


.content02 .flex1 .left,
.content02 .flex1 .right{
	max-width:540px;
	width:48%;
}

.content02 .flex1 .right{
	padding-top: 10.455%;
}

.co2_list1{
	width:100%;
}

.co2_list1 > li{
	width:100%;
	padding: 16px 17px 20px 20px;
	background: #fff;
	box-shadow: 0 0 8px #0000001a;
	margin-top: 25px;
	border-radius: 10px;
}

.co2_list1 > li .title1{
	font-size: 2rem;
	line-height: 1.25;
	font-weight:700;
	font-size: clamp(1.8rem,3vw,2rem);
	padding-left:15px;
	position:relative;
	border-left:3px solid #00A7EA;
}



.co2_list1 > li .flex2{
	margin-top:15px;
	align-items:flex-end;
}


.co2_list1 > li .flex2 .img{
	max-width:243px;
	width: 50%;
}


.co2_list1 > li .flex2 .text_area{
	max-width:230px;
	width: 48%;
}

.co2_list2 li{
	margin-top:20px;
	padding-top:10px;
	padding-bottom:10px;
	border-bottom:1px solid #707070;
	font-size: 1.8rem;
	line-height: 1.444;
	font-weight:700;
	font-size: clamp(1.3rem,1.6vw,1.8rem);
}

.co2_list2 li:first-child{
	margin-top:0px;
}

.co2_list2 li a{
	display:flex;
	width:100%;
	position:relative;
	transition: .4s;
	background: none;
	color: #333!important;
	border-radius: 0;
	padding: 0;
	justify-content: flex-start;
	font-size: clamp(1.3rem,1.4vw,1.8rem);
	margin: 0;
}

.co2_list2 li a:before{
	position:absolute;
	content:"";
	width: 18px;
	height: 15px;
	background:url(./img/common/arrow1_blu.svg)no-repeat;
	background-size:contain;
	right: 8.44%;
	bottom: 4px;
}

.sld1{
	width: 93.127%;
	margin: 0 auto;
}

.sld1_cont:nth-child(2n) .sld1{
	padding-top: 11.087%;
}

.slider_area{
	padding-bottom: 4.011%;
}

.content03{
	padding: 83px 0 254px;
	background: url(./img/top/bg3.jpg)no-repeat;
	background-size: cover;
	color: #fff;
	position: relative;
}

.content03 .flex{
	align-items: flex-start;
}

.content03 .flex .text_area{
	max-width:448px;
	width: 42%;
}

.content03 .flex .img_area{
	max-width:608px;
	width: 56%;
	position:relative;
	padding-bottom: 3.637%;
	z-index:1;
	animation-delay: 0.5s!important;
}

.content03 .flex .img_area .img{
	width: 93.423%;
	margin-left: auto;
	border-radius: 10px;
	overflow: hidden;
}

.content03 .flex .img_area:before{
	position:absolute;
	content:"";
	width: 49.343%;
	height: 73.712%;
	background:#00A7EA;
	border-radius:10px;
	left:0;
	bottom:0;
	z-index:-1;
}

.content03 .flex .text_area .title_area{
	display:flex;
	align-items:flex-start;
}

.content03 .flex .text_area .title_area .mainTit{
	flex-shrink:0;
}

.content03 .flex .text_area .title_area .bar{
	height:1px;
	width:100%;
	background:#B7B7B7;
	margin-left:25px;
	margin-top: 20px;
}

.content03 .flex .text_area .title1{
	margin:25px 0 10px;
	font-size: 3.4rem;
	line-height: 1.44;
	font-weight:700;
	font-size: clamp(2rem,3vw,3.4rem);
}

.content03 .flex .text_area .text1{
	max-width:431px;
	width:100%;
	font-size: 1.6rem;
}

.content03 .flex .text_area .btn3{
	margin-top: 15.628%;
}

.content03 .flex .text_area .btn3.matop{
	margin-top: 4%;
}

.btn3{
	display:flex;
	align-items:center;
	border:1px solid;
	font-size: 1.8rem;
	font-weight:700;
	line-height: 1.444;
	height: 60px;
	border-radius: 60px;
	padding-left: 25px;
	max-width: 263px;
	width: 100%;
	transition:.4s;
	position:relative;
	color:#01B4BA!important;
}

.btn3:before{
	position:absolute;
	content:"";
	width: 18px;
	height: 15px;
	background:url(./img/common/arrow1_gre.svg)no-repeat;
	background-size:contain;
	right: 24px;
	top:0;
	bottom:0;
	margin:auto;
}

.btn3:hover{
	transform: translateX(25px);
	opacity:1;
}

.content04{
	margin: -127px auto 0px;
}

.co4_div{
	position:relative;
	display:flex;
	justify-content:space-between;
	padding: 0 6% 40px;
	align-items:flex-end;
	z-index: 2;
	background: #fff;
	border-radius:20px;
	box-shadow:0 3px 6px #00000029;
}
.co4_div .img{
	max-width:273px;
	width:30%;
	border-radius:10px;
	overflow:hidden;
	margin-top: -5%;
}

.co4_div .text_area{
	max-width:641px;
	width: 67%;
	padding: 20px 0 10px;
}

.co4_div .text_area .title_area{
display: flex;
align-items: flex-start;
	justify-content:space-between;
}


.co4_div .text_area .title_area .mainTit{
	margin-right:20px;
}

.co4_div .text_area .title_area .title1{
	font-size: 3rem;
	line-height: 1.4666;
	font-weight:700;
	font-size: clamp(2rem,2.4vw,3rem);
}


.co4_div .text_area .text1{
	margin-top: 6.242%;
}

.co4_div .text_area .btn3{
	margin-top:30px;
}

.top_cont2{
	position:relative;
	z-index:1;
}

.content05{
	padding:100px 0 80px;
}

.content05 .inner{
	max-width:784px;
}

.content05 .title_area{
	display:flex;
	align-items:center;
	margin-bottom: 9px;
}

.content05 .title_area .mainTit{
margin-right: 9%;
flex-shrink: 0;
}

.content05 .title_area .text{
	width: 100%;
	max-width: 500px;
}

.btn_area{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
}

.btn_area.pc{
	display:flex;
}

.btn_area.sp{
	display:none;
}

.tel_btn{
	border:2px solid #00A7EA;
	display:flex;
	padding:18px 38px;
	background:#fff;
	align-items: flex-end;
	width:100%;
	position: relative;
	transition:.4s;
}

.tel_btn:hover{
	opacity:1;
	background:#00A7EA;
}

/* .tel_btn:before{
	position:absolute;
	content:"";
	width: 58px;
	height: 58px;
	background: url(./img/common/contact_btn1.svg)no-repeat;
	background-size:contain;
	right: 23px;
	bottom: 0;
	top: 0;
	margin: auto;
} */

.tel_btn .left{
	max-width: 295px;
	width: 48%;
	margin-right: 15.2%;
}

.tel_btn .right{
	max-width:177px;
	width: 48%;
	padding-bottom: 12px;
}

.tel_btn .left .text1{
	font-size: 1.8rem;
	line-height: 1.444;
	font-weight:700;
	font-size: clamp(1.5rem,3vw,1.8rem);
}

.tel_btn .left .text2{
	margin-top:5px;
	font-size: 3.8rem;
	line-height: 1.23;
	font-weight:600;
	font-size: clamp(2.4rem,5vw,3.8rem);
}

.tel_btn .left .text2 span{
	font-size: 1.8rem;
	line-height: 1.444;
	font-weight:700;
	font-size: clamp(1.5rem,3vw,1.8rem);
	margin-right:13px;
}

.tel_btn .right .text1{
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:19px;
	border:1px solid #FFFFFF;
	background:#00A7EA;
	font-weight:700;
	line-height:1.3125;
	padding: 4px 0 4px;
	width: 100%;
}

.btn4{
	max-width:390px;
	width: 49.8%;
	margin-top: 5px;
	display: flex;
	align-items: center;
	height:110px;
	font-size: 2.4rem;
	line-height: 1.444;
	font-weight:700;
	font-size: clamp(1.5rem,4vw,2.4rem);
	padding-left: 3.828%;
	position: relative;
	transition: .4s;
}

.btn4:before{
	position:absolute;
	content:"";
	width: 36px;
	height: 36px;
	background: url(./img/common/contact_btn2.svg)no-repeat;
	background-size:contain;
	right: 7.696%;
	top: 0;
	bottom: 0;
	margin: auto;
}




footer .tel_btn{
	padding: 17px 22px;
	justify-content: space-between;
}

footer .tel_btn:hover{
	opacity:1;
	background:#00A7EA;
}

footer .tel_btn:before{
	display:none;
}

footer .tel_btn .left{
	max-width: 205px;
	width: 57%;
	margin-right: 0;
}

footer .tel_btn .right{
	max-width: 102px;
	width: 30%;
	padding-bottom: 4px;
}

footer .tel_btn .left .text1{
	font-size: 1.6rem;
	font-size: clamp(1.4rem,2.4vw,1.6rem);
	line-height: 1.5;
}

footer .tel_btn .left .text2{
	margin-top: 6px;
	font-size: 2.5rem;
	line-height: 1.23;
	font-size: clamp(2rem,3vw,2.5rem);
}

footer .tel_btn .left .text2 span{
	font-size: 1.6rem;
	line-height: 1.1875;
	font-size: clamp(1.4rem,2vw,1.6rem);
	margin-right: 8px;
}

footer .tel_btn .right .text1{
	padding: 2px 0 3px;
	font-size: 1rem;
	line-height: 1.3;
}

footer .btn4{
	width: 49.498%;
	margin-top: 5px;
	height: 67px;
	font-size: 1.4rem;
	line-height: 1.4285;
	font-size: clamp(1.3rem,2.4vw,1.4rem);
	padding-left: 0;
	justify-content: center;
}

footer .btn4:before{
	display:none;
}

.ft_list1 > li{
	margin-bottom:30px;
}

.ft_list1 > li > a{
	color:#fff;
	line-height: 1.5;
	padding-left: 24px;
	font-weight: 700;
	transition: .4s;
}

.ft_list1 > li > a:before{
	width:14px;
	top: 13px;
}

.ft_list2{
	margin-left:27px;
}

.ft_list3 .ft_list2{
	margin-left:0px;
	width: 100%;
}

.ft_list2 > li{
	margin-top:13px;
}


.ft_list3 .ft_list2 > li:first-child{
	margin-top:0px;
}

.ft_list2 > li > a{
	color:#fff;
	padding-left: 25px;
	line-height: 1.5;
	transition: .4s;
}

.ft_list2 > li > a:before{
	width:12px;
	top: 9px;
}

.ft_list3 > li{
	display:flex;
	margin-bottom: 25px;
	justify-content: space-between;
}

.ft_list3 > li .text1{
	font-weight: 500;
	width: 170px;
	flex-shrink: 0;
}

.ft_list3 > li > a{
	color:#fff;
	line-height: 1.5;
}

.ft_list1 > li > a,
.ft_list2 > li > a{
	position:relative;
}

.ft_list1 > li > a:before,
.ft_list2 > li > a:before{
	position:absolute;
	content:"";
	height:1px;
	background:#fff;
	left:0;
}

/*-----------------------------------------------------------
 footer
-----------------------------------------------------------*/

footer {
	margin: 0px auto 0;
	padding: 30px 0 0;
	background: #11263E;
	color:#fff;
}


footer .left{
	max-width:398px;
	width: 36%;
}

footer .right{
	max-width: 675px;
	width: 62%;
	display: flex;
	justify-content: space-between;
}


footer .right .left2{
	width: 31%;
}

footer .right .right2{
	max-width:441px;
	width: 66%;
}

footer .right .right2 .text{
	padding-bottom:7px;
	border-bottom:1px solid;
	margin-bottom:18px;
	font-size: 1.8rem;
	line-height: 1.444;
	font-weight:700;
	font-size: clamp(1.5rem,2.4vw,1.8rem);
}

footer .logo {
	max-width:286px;
	width:100%;
	margin-bottom:13px;
}


footer .left .addp{
	margin-bottom:48px;
}

.copyright {
	color: #fff;
	text-align: center;
	padding: 13px 0;
	max-width: 1880px;
	width: 99%;
	border-top: 1px solid #FFFFFF;
	margin: 0 auto;
}



/* 全ページ共通クラス
----------------------------------------------------------- */

/*--- パンくず ---*/

.pankuzu {
    width: 100%;
    font-size: 1.4rem;
    padding: 40px 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.pankuzu li {
    margin: 0 0 0 10px;
    display: inline;
}

.pankuzu li:first-child {
    margin: 0;
}

.pankuzu li a {
    margin: 0 10px 0 0;
    font-weight: 700;
    line-height: 1.357;
}


.pankuzu li.nolink{
	font-weight: 700;
	border: 1px solid #00A7EA;
	background: #fff;
	padding: 1px 0 2px;
	min-width: 114px;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	border-radius: 30px;
	padding: 0 10px;
}

/*--- ページトップ ---*/
#pageTop {
	position: fixed;
	bottom: 200px;
	right: 25px;
	z-index: 9999;
}


/* -- お問い合わせ -- */

input {
	vertical-align: middle;
}

.btnBox1 {
	text-align: center;
}

.contact_cf .clearForm,.contact_cf .clearForm2 {
	padding: 10px 5px;
}


.send_btn {
	max-width:284px;
	margin:32.5px auto 0;
	position:relative;
	background: #00A7EA;
	transition: .4s;
}

.entry01 .send_btn{
	background:#01B4BA;
}

.send_btn:before{
	position:absolute;
	content:"";
	width:36px;
	height:36px;
	background:url(./img/common/arrow2_bla.svg)no-repeat;
	background-size:contain;
	right:40px;
	top:0;
	bottom:0;
	margin:auto;
}


.clearForm,
.clearForm2,
.toHome {
	width: 100%;
	cursor: pointer;
	outline: 0;
	color: #fff!important;
	font-size: 2.4rem;
	border: none;
	font-weight: 700;
	transition: .2s;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	background: none;
	margin: 0 auto!important;
	height: 100%;
	text-align: left;
	height:66px;
	padding-left:40px;
}

.send_btn:hover{
	opacity:0.7;
}

.toHome {
	margin: 50px auto 0 !important;
	text-decoration: none;
	display: block;
	text-align: center;
}

.tb_inp.mabo{
	margin-bottom:16px;
}

textarea {
	padding: 10px;
	height: 220px;
	width: 100%;
	background: #F4F4F4;
}

input,
textarea,
button,
select,
option {
	outline: none;
	background: #FFFFFF;
}

.mw_wp_form input[type="file"]{
	width:100%;
}

input[type="text"],
input[type="email"],
input[type="tel"],
select{
	height: 50px;
	padding: 5px 15px;
	width: 100%;
	background: #FFFFFF;
	width: 100%;
}

::placeholder{
	color:#CCCCCC;
}

.mwform-file-delete{
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
option,
select{
	border: 1px solid #707070;
}


select{
	max-width:340px;
}

input[type="date"]{
	width:100%;
	max-width:204px;
	height:42px;
}

button {
	border: none;
	outline: none;
	background: none;
}

.form_notice1 {
	font-size: 85.714%;
	display: block;
	margin: 5px 0 0;
}

.form_notice2 {
	font-size: 87.5%;
}

.modification_wrap {
	overflow: hidden;
}

.modification {
	width: 221px;
	float: left;
	margin: 0 0 0 246px;
}

.send_bt {
	width: 221px;
	float: right;
	margin: 0 245px 0 0;
}

.error_style {
	color: #FF0000;
	display: block;
	margin: 8px 0 0;
}


.contact_tb th, .contact_tb td {
	position: relative;
	font-weight: 500;
	padding: 7.5px 0;
}

.contact_tb {
	width: 100%;
	margin: auto;
}


.contact_tb th {
	text-align: left;
	font-weight: 700;
	font-size: clamp(1.5rem, 2.4vw, 1.6rem);
	width: 24.546%;
	padding-right: 14px;
}

.contact_tb th label{
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.contact_tb th.vert{
	vertical-align:top;	
}

.contact_tb td {}

.contact_tb td .text{
	font-size:1.4rem;
}

.contact_tb th span{
	margin-right:24px;
}

em{
	white-space: nowrap;
	font-size: clamp(1.2rem, 1.6vw, 1.4rem);
	color: #FF0000;
	font-weight: 500;
}

em.nini{
	background:#333333;
}

.contact01_div3{
	margin-top:80px;
}


.pri_div{
	padding: 20px 1.622%;
	height: 180px;
	overflow-y:scroll;
	margin: 56px auto 48px;
	background: #fff;
	-ms-overflow-style: none;
	scrollbar-width: none;
	width: 100%;
	border: 1px solid #E5E5E5;
	font-size: clamp(1.6rem,1.6vw,2rem);
}

.pri_div.pri_div2{
	padding: 24px 4%;
	height: 285px;
	overflow-y:scroll;
	margin: 24px auto 56px;
	background: #F1F4E0;
	-ms-overflow-style: none;
	scrollbar-width: none;
	border: 2px solid #F1F4E0;
	width: 100%;
	border-radius: 10px;
}

.pri_div::-webkit-scrollbar{
	display: none;
}


.pri_div h3{
	font-size: clamp(1.8rem,2.4vw,2.4rem);
	line-height: 1.46;
	margin-bottom: 30px;
}


.pri_div dt{
	font-size: 1.4rem;
	line-height: 2.057;
}

.pri_div dd{
    font-size: 1.4rem;
    line-height: 2.057;
	margin-bottom:24px;
}

.pri_div dd p.matop{
	margin-top:24px;
}

.privacy_area{
	display:flex;
	align-items:center;
	justify-content:center;
	margin: 40px auto;
	width: 100%;
}

.privacy_area label{
	display:flex;
	align-items: center;
	justify-content: center;
}

.privacy_area label em{
	margin-left:8px;
}


.privacy_area a{
	color: #009DCD;
	display: inline-flex;
	align-items: baseline;
	border-bottom: 1px solid;
}

.privacy_area a img{
	margin-left:2px;
	margin-right:4px;
}

.privacy_area input{
	width: 15px;
	height: 15px;
	border: 1px solid #ccc;
	border-radius: 0;
	accent-color: #ccc;
	margin-right: 5px;
}

.contact01{
	padding: 80px 0 20px;
}

.contact01_div1{
	background:#F7F7F7;
	border-radius:32px;
	padding: 56px 2%;
	text-align:center;
	margin-bottom:125px;
	font-weight:500;
}

.tablet{
	display:none;
}

.tb_flex{
	display:flex;
	flex-wrap:wrap;
	min-height: 50px;
	align-items: center;
}

.mw_wp_form .horizontal-item{
	margin-left: 0;
	margin-right: 8px;
}


.news01{padding: 100px 0 20px;}



.news01 .main_cont{
	max-width:1108px;
	width: 74%;
}


.news01 .side_cont{
	max-width:192px;
	width: 23%;
}

.side_div{
	width:100%;
	margin-bottom: 56%;
}

.side_div:last-child{
	margin-bottom:0px;
}

.side_div .title1{
	line-height: 1.45833;
	font-weight:500;
	font-size: clamp(1.8rem, 2.4vw, 2.4rem);
	padding-bottom:14px;
	border-bottom:1px solid #C6E0F7;
}

.cate_list li{
	margin-top:28px;
	font-weight:500;
	line-height:1.5;
}

.cate_list li a.active{
	color:#1982D8;
}

.pagenation_area{
	display:flex;
	justify-content:space-between;
	margin:100px auto 0;
	max-width:181px;
	width:100%;
}

.pagination-list{
	display:flex;
	justify-content: flex-start;
	width: 100%;
}

.pagination-list .page-numbers{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.6rem;
	margin: 0 3%;
	transition:.4s;
	font-weight: 500;
	text-decoration: none;
	color: #333333;
	min-width: 15px;
	border-bottom: 1px solid #fff;
}


.pagination-list .page-numbers.current,
.pagination-list .page-numbers:hover{
	opacity:1;
	border-bottom: 1px solid #1982D8;
}

.pagination-list .page-numbers.prev,
.pagination-list .page-numbers.next{
	display:none;
}


.det_cont .title_area{
	padding-bottom:28px;
	margin-bottom:56px;
	border-bottom:1px solid #E5E5E5;
}

.det_cont .title_area .dacate{
	margin-bottom:24px;
	width:100%;
}

.det_cont .title_area .title1{
	line-height: 1.45;
	font-weight:500;
	font-size: clamp(2.4rem, 3vw, 4rem);
}

.news_list {
	width:100%;
}

.news_list li{
	display:flex;
	align-items:center;
	padding:23px 0;
	border-bottom:1px solid #E5E5E5;
}

.news_list li:hover{
	opacity:0.7;
}

.news_list li:first-child{
	padding-top:0;
}

/* .news_list li:before {
    position: absolute;
    content: "";
    width: 30px;
    height: 4px;
    background: url(./img/common/arrow.svg) no-repeat;
    background-size: contain;
    right: 0%;
    top: 0;
    bottom: 0;
    margin: auto;
} */

.dacate{
	display:flex;
	align-items:center;
	justify-content:space-between;
	width: 34%;
	flex-shrink: 0;
	margin-right: 2.2%;
	max-width: 211px;
}

 .dacate .date{
	line-height:1.5;
}

.dacate .cate{
	width:100px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid;
	height: 32px;
	line-height: 1;
	border-radius: 40px;
}
.dacate .cate.cate1{
	background:#0D5AB5;
	color:#fff;
}

.dacate .cate.cate2{
	background:#51ABF4;
	color:#fff;
}

.dacate .cate.cate3{
	background:#809EBA;
	color:#fff;
}


.news_list li .title1{
	width: 70%;
	font-weight: 500;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}


/* wordpress 記事 */
.detail_area img{
	margin-bottom:24px;
	width: revert-layer;
}

.detail_area p:has(img){
	margin:0;
}


.alignright{
	margin-left:auto;
	display:block;
}


.aligncenter{
	margin-left: auto;
	margin-right: auto;
	display:block;
}

.detail_area{
	padding-bottom:90px;
}

.detail_area p{
	margin-bottom:24px;
	font-size: clamp(1.5rem,2.3vw,1.6rem);
	font-family: "Yu Gothic", "YuGothic", "游ゴシック", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", Meiryo, sans-serif !important;
}

.detail_area h2{
	margin-bottom:24px;
	font-size: clamp(2.8rem,3vw,3.4rem);
}

.detail_area h3{
	margin-bottom: 20px;
	font-size: clamp(2.2rem,2.6vw,2.8rem);
	padding-left: 10px;
	border-left: 5px solid #00A7EA;
}

.detail_area h4{
	margin-bottom:23px;
	font-size: clamp(1.8rem,2.4vw,2.2rem);
}

.detail_area h5{
	margin-bottom:33px;
	font-size: clamp(1.7rem,2.3vw,2rem);
}

.article header{
	height: 80px;
	width: 100%;
	max-width: 100%;
}

.article header .hLogo {
    max-width: 320px;
    width: 20%;
}

.article header .pc_nav {
    width: 78%;
    max-width: 844px;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}

.article header .pc_nav .hd_link{
	margin-left:auto;
	width: 40%;
}


.article header .pc_nav .nav_list1{
	width: 58%;
}

#art_cover1{
	padding-top: 140px;
}

#art_cover1 .title_area{
	padding-bottom:10px;
	border-bottom:1px solid #707070;
}

#art_cover1 .title_area .title{
	font-size:3.8rem;
	font-weight:700;
	line-height:1.44736;
}

#art_cover1 .title_area .title > span{
	display:flex;
	align-items:center;
	font-size:1.8rem;
	font-weight:700;
	line-height:1.4444;
}

#art_cover1 .title_area .title > span .en{
	display:flex;
	align-items:center;
	font-size:1.2rem;
	font-weight:700;
	margin-left:10px;
	padding-top:2px;
}

.art01{
	padding:80px 0 75px;
}

.artTit1{
	font-size: clamp(2rem,3vw,2.4rem);
	font-weight:700;
	text-align:center;
}
.article .artTit1{
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
    font-weight: 900;
    font-size: 1.8em;
    line-height: 1.1;
    padding-bottom: 20px;
    margin-bottom: 15px;
    color: #000000;
}
.article .artTit1:after {
    content: "";
    position: absolute;
    bottom: 0px;
    width: 70px;
    height: 2px;
    background-color: #000;
    left: 50%;
    transform: translateX(-50%);
}
.art01 .text{
	margin-top:20px;
	text-align: center;
	max-width: 880px;
	margin: 20px auto 0;
}

.art02{
width: 100%;
	
}

.art02 .bg_img{
	width:100%;
	height: 204px;
}

.art02 .inner_whi{
	width: 90%;
	margin: 0 auto;
	max-width: 1100px;
}

.art02 .bg_img img{
	width:100%;
	height:100%;
	object-fit:cover;
	object-position: right;
}

.art02_div1{
	background:#fff;
	max-width:960px;
	margin:-134px auto 0;
	position:relative;
	z-index:1;
	padding:40px 20px 36px;
	border-radius:10px;
}

.art02_div1 .text{
	text-align:center;
	margin-top:20px;
	max-width: 770px;
	margin: 20px auto 0;
}

.l_side{
	    background: #FFFFFF;
    border-radius: 40px 0 0 40px;
    padding: 160px 7.9789% 56px;
    margin-top: 80px;
    margin-bottom: 80px;
    position: relative;
}

.r_side{
	    background: #FFFFFF;
	    border-radius: 0 40px 40px 0;
	    padding: 160px 7.9789% 56px;
	    margin-top: 80px;
	    margin-bottom: 80px;
	    position: relative;
}


.build02_div2{
	margin-top:100px;
}

.build02_div2 hr{
	background-color: #707070;
	height:1px;
	border:none;
	margin:20px auto;
}

.build02_list1{
	display:flex;
	justify-content:space-between;
	position:relative;
}

.build02_list1:before{
	position:absolute;
	content:"";
	width:1px;
	height: 100%;
	top:0;
	bottom:0;
	margin:auto;
	left:0;
	right:0;
	background:#707070;
}

.build02_list1 li{
	width:50%;
	padding:18px 0;
}


.build02_list1 li:nth-child(2n+1){
	padding-right: 5.455%;
}

.build02_list1 li:nth-child(2n+2){
	padding-left: 5.455%;
}

.build02_list1 li .title_area{
	display:flex;
	align-items:center;
	margin-bottom:20px;
}

.build02_list1 li .title_area .img{
	margin-right:40px;
}

.build02_list1 li .title_area .title1{
	font-size:1.8rem;
	font-weight:700;
}

.grad_bg{
	background:linear-gradient(to top, #DEF5FF, #ffffff)
}

.l_inner{
	margin-left:auto;
	width: 81.25%;
	width: 95%;
	max-width: 1560px;
}

.r_inner{
	margin-right: auto;
	width: 81.25%;
	width: 95%;
	max-width: 1560px;
}

.build02_div3{background: #FFFFFF;border-radius: 40px 0 0 40px;padding: 160px 7.9789% 56px;margin-top: 80px;margin-bottom: 80px;position:relative;}

.build02_div3 .title,.l_div .title{
	position:absolute;
	top:60px;
	left:0;
	background:#00A7EA;
	border-radius:0 32px 32px 0;
	padding:10px 24px;
	text-align:right;
	z-index:1;
	color:#fff;
	font-size:2.8rem;
	max-width:455px;
	width:80%;
}

.build02_list2,.l_div_list{
	max-width:995px;
	width:100%;
}

.build02_list2 li,.l_div_list li{
	margin-bottom:36px;
}

.build02_list2 li:last-child{
	margin-bottom:0px;
}

.build02_list2 li .title1,.l_div_list li .title1{
	font-size:2rem;
	font-weight:700;
	padding-bottom:4px;
	line-height:1.3;
	border-bottom:1px solid #707070;
	margin-bottom:20px;
}

.build02_div4{
	
}

.build02_div4 .text1{
	margin:10px auto 36px;
	text-align: center;
}

.art02{
	padding:0 0 120px;
}

.link_area{
	background:url(./img/building/bg_link.jpg)no-repeat;
	background-size:cover;
	padding:74px 0 86px;
}

.link_area_div{
	background:#FFFFFF;
	border-radius:10px;
	padding:20px 0;
	text-align:center;
	max-width:460px;
	margin:0 auto;
	width:100%;
}

.link_area.col2 .inner{
	display: flex;
	justify-content: center;
	gap: 2%;
}

.link_area.col2 .link_area_div{
	margin: 0;
}

.link_area_div .title{
	font-size:2rem;
	font-weight:700;
	line-height:1.45;
	margin-bottom:10px;
}

.btn2{
	display:flex;
	align-items:center;
	justify-content:center;
	background:#00A7EA;
	color:#fff!important;
	max-width:224px;
	width:100%;
	margin:0 auto;
	border-radius:17px;
	font-size:1.6rem;
	font-weight:700;
	line-height:1.5;
	padding:5px 0;
	transition: .4s;
}

.btn2 .arrow{
	display:flex;
	align-items:center;
	margin-left:18px;
	padding-top:2px;
}

.water02_div1{
	margin-top:100px;
}

.artTit2{
	font-size:clamp(2rem,3vw,2.8rem);
	font-weight:700;
	border-bottom:1px solid #707070;
	padding-bottom:5px;
	line-height:1.428;
}

.sub_tit{
	font-size:clamp(2rem,3vw,2.8rem);
	text-align: center;
}

.water02_div1 .text{
	margin-top:10px;
}

.water02_list1{
	margin-top:10px;
}

.water02_div1 .water02_list1{
	margin-left: 5.455%;
}

.water02_list1 li{
	margin-top:15px;
}

.water02_list1 li .text1{
	font-size:1.8rem;
	font-weight:700;
	position:relative;
	padding-left:18px;
}

.water02_list1 li .text1:before{
	position:absolute;
	content:"";
	width:8px;
	height:2px;
	background:#333333;
	left:0;
	top: 14px;
}

.water02_list1 li .text2{
	margin-top:5px;
	font-weight:500;
}

.water02_div2{
	margin-top:55px;
	background:#FFFFFF;
	border:1px solid #707070;
	border-radius:20px;
	padding: 30px 0;
}

.water02_div2 .title1{
	padding:0 40px;
	font-size:2rem;
	font-weight:700;
	line-height:1.45;
}

.water02_div2 .text1{
	padding:0 40px;
	margin-top:5px;
	margin-bottom:-4px;
}

.water02_div21{
	margin-top:40px;
}

.water02_div21 .title2{
	background:#01406D;
	color:#fff;
	max-width:168px;
	width:100%;
	padding:5.5px 0;
	text-align:right;
	padding-right:40px;
	border-radius:0 25px 25px 0;
	font-size:2rem;
	font-weight:700;
	line-height:1.45;
}

.water02_div21 .img{
	margin:20px 0px 0;
	width:100%;
	padding:0 23px;
}

.water02_div21 .img.img1{
	max-width:841px;
}

.water02_div21 .img.img2{
	max-width:1054px;
}

.water02_div3{
	margin-top:40px;
}

.water02_div3 .title1{
	font-size: 2rem;
	line-height: 1.45;
	font-weight: 700;
	max-width: max-content;
	background: #01B4BA;
	color: #fff;
	margin-bottom: 20px;
	padding: 5px 12px;
}

.water02_list2 li{
	margin-top:17px;
}

.water02_list2 li .text1{
	font-size: 1.8rem;
	font-weight: 700;
}

.water02_list2 li .text2{
	font-weight: 500;
}

.water02{
	padding:0 0 94px;
}

.water03{
	padding:60px 0;
	background:#fff;
	margin-bottom:120px;
}

.water03 .title{
	font-size: clamp(2rem,2.4vw,2.4rem);
	font-weight:700;
	text-align:center;
	margin-bottom:40px;
}

.water03_list1 li{
	margin-bottom:40px;
	padding-bottom:40px;
	border-bottom:1px solid #707070;
}

.water03_list1 li:last-child{
	margin-bottom:0px;
	padding-bottom:0px;
	border-bottom:none;
}

.water03_list1 li .title1{
	margin-bottom:10px;
	font-size:2rem;
	font-weight:700;
	line-height:1.45;
}

.water03_list1 li .flex{
	align-items:flex-end;
}

.water03_list1 li .flex .img{
	max-width:487px;
	width: 45%;
}

.water03_list1 li .flex .text_area{
	max-width:590px;
	width: 54%;
}


.water03_list1 li .flex .text_area .title2{
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.444;
}

.water03_list1 li .flex .text_area .text1{
	margin-top: 23px;
}

/* ================================================
   建設工事事業
   ================================================ */
.cons02_div2 {
    margin-top: 120px;
}
.cons02_div2 ul {
    display: flex;
    gap: 7%;
}

.cons02_div2 ul > li {
	position: relative;
	flex: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 32px 24px;
}
.cons02_div2 ul > li .c_tl,
.cons02_div2 ul > li .c_tr,
.cons02_div2 ul > li .c_bl,
.cons02_div2 ul > li .c_br {
	position: absolute;
	width: 16px;
	height: 16px;
	border-color: rgb(1, 64, 109);
	border-style: solid;
}
.cons02_div2 ul > li .c_tl {
    top: -15px;
    left: 0px;
    border-width: 2px 0px 0px 2px;
}
.cons02_div2 ul > li .c_tr {
    top: -15px;
    right: 0px;
    border-width: 2px 2px 0px 0px;
}
.cons02_div2 ul > li .c_bl {
    bottom: -15px;
    left: 0px;
    border-width: 0px 0px 2px 2px;
}
.cons02_div2 ul > li .c_br {
    bottom: -15px;
    right: 0px;
    border-width: 0px 2px 2px 0px;
    border-color: rgb(1, 64, 109);
}
.cons02_div2 ul > li p {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.7;
    color: rgb(1, 64, 109);
}
.cons02_div2 {
    margin-top: 120px;
}
.cons02_div3 {
    padding-top: 65px;
    padding-bottom: 24px;
    padding-left: 2.5%;
    margin-top: 135px;
}
.cons02_div3 ul {
    max-width: 1100px;
}
.cons02_div3 li:first-child {
    padding: 0px 0px 30px;
    border-width: medium;
    border-style: none;
    border-color: currentcolor;
    border-image: initial;
}
.cons02_div3 li {
    padding: 30px 0px;
    border-top: 1px solid rgb(112, 112, 112);
}

.cons02_div3 li .text1.maleft{
	margin-left: 2.364%;
	margin-top: 2.9%;
}

.cons02_div3 h4 {
    font-size: 2.4rem;
    margin-bottom: 20px;
    border-left: 4px solid rgb(0, 167, 234);
    padding: 0px 0px 0px 14px;
}
.cons02_div4 {
    padding-top: 60px;
    padding-bottom: 60px;
    padding-right: 2.5%;
    margin-top: 135px;
}
.cons02_div4 .inner {
    margin: 0px 0px 0px auto;
}
.cons02_div4 .title1 {
    font-size: 3rem;
    margin: 0px 0px 25px;
}
.cons02_div4 .box {
    display: flex;
    justify-content: space-between;
    margin: 0px 0px 13px;
}
.cons02_div4 .text_area {
    width: 57%;
    max-width: 628px;
}
.cons02_div4 .text_area .title2 {
    display: inline-block;
    color: rgb(255, 255, 255);
    font-size: 2.35rem;
    background: rgb(1, 64, 109);
    padding: 5px 24px;
    border-radius: 30px;
}
.cons02_div4 .txt h5 {
    position: relative;
    font-size: 2rem;
    padding: 0px 0px 0px 19px;
    margin: 12px 0px 0px;
}

.cons02_div4 .txt h5:before{
	content: "";
	display: block;
	position: absolute;
	height: 2px;
	width: 14px;
	background: #01406D;
	left: 0;
	top: 45%;
}
.cons02_div4 .img {
    width: 39%;
    max-width: 434px;
}
.cons02_div4 .gray_bg {
    background: rgb(232, 232, 232);
    border-radius: 10px;
    padding: 15px 1%;
}
.cons02_div4 .gray_bg h5 {
    font-size: 2rem;
    border-bottom: 1px solid;
    margin: 0px 0px 5px;
    padding: 0px 0px 5px;
}

/* ================================================
   芝生 
   ================================================ */
.lawn02_div1 {
    margin-top: 80px;
}

.lawn02_div1 h2 {
    color: rgb(255, 255, 255);
    font-size: 2.4rem;
    text-align: center;
    margin-bottom: 60px;
}

.lawn02_div1 h2 span {
    display: inline-block;
    padding: 5px 30px;
    background: rgb(1, 180, 186);
}

.lawn02_div1 ul {
    display: flex;
    justify-content: center;
    gap: 6%;
}

.lawn02_div1 li {
    text-align: center;
    font-size: 2rem;
    font-weight: 600;
}

.lawn02_div1 li p {
    margin-top: 40px;
}

.lawn03 {
    background: rgb(255, 255, 255);
    padding: 40px 0px;
}

.lawn03 .inner {
    display: flex;
    justify-content: space-between;
    align-items: end;
}

.lawn03 .inner .text_area {
    width: 55%;
    max-width: 610px;
}

.lawn03 .text_area h3 {
    font-size: 2.4rem;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgb(112, 112, 112);
}

.lawn03 .inner .img {
    width: 42%;
    max-width: 460px;
}

.lawn04 {
    padding: 80px 0px;
}

.lawn04 li:first-child {
    margin: 0px;
}

.lawn04 li {
    margin-top: 40px;
}

.lawn04 li p{
	margin-top:9px;
}

.lawn04 h3 {
    font-size: 2.4rem;
    line-height: 1.3;
    border-left: 4px solid rgb(0, 167, 234);
    padding: 0px 0px 0px 18px;
    margin: 0px 0px 5px;
}

.fukidashi {
    position: relative;
    display: inline-block;
    text-align: center;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 760px;
    background: rgb(255, 255, 255);
    border-width: 2px;
    border-style: solid;
    border-color: rgb(0, 174, 204);
    border-image: initial;
    border-radius: 133px;
    padding: 40px 48px;
    margin: 100px auto 0px;
}
.fukidashi::before {
    content: "";
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 30px 20px 0px;
    border-style: solid;
    border-color: rgb(0, 174, 204) transparent transparent;
}
.fukidashi_text {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.7;
    color: rgb(1, 180, 186);
    white-space: nowrap;
}
.fukidashi::after {
    content: "";
    position: absolute;
    bottom: -45px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 30px 20px 20px;
    border-style: solid;
    border-color: rgb(255, 255, 255) transparent transparent;
}
   /* ================================================
   建設物衛生管理業務 
   ================================================ */
 .hygiene02 .art02_div1 {
	text-align: center;
	margin-bottom: 40px;
	border-radius: 0;
	margin: -141px auto 0;
}
 
/* カードラッパー */
.hygiene_card_wrap {
	max-width: 960px;
	margin-bottom: 60px;
	margin: 0 auto;
	background-color: #fff;
	position: relative;
}
 
/* カードリスト：3カラム */
.hygiene_card_list {
	display: flex;
	justify-content: center;
	gap: 24px;
	list-style: none;
	margin: 0;
	padding: 0;
	background-color: #fff;
}
 
.hygiene_card_list > li {
	background: #fff;
	border-radius: 8px;
	padding: 30px 20px 30px;
	width: 29%;
	text-align: center;
	box-sizing: border-box;
	border: 1px solid #707070;
}
 
/* アイコン */
.hygiene_card_list .card_icon {
	margin-bottom: 16px;
}
 
.hygiene_card_list .card_icon img {
	width: 64px;
	height: 64px;
	object-fit: contain;
}
 
/* カードタイトル */
.hygiene_card_list .card_title {
	font-size: 1.8rem;
	font-weight: 700;
	color: #333;
	margin-bottom: 12px;
	line-height: 1.4;
}
 
/* カードテキスト */
.hygiene_card_list .card_text {
	font-size: 1.4rem;
	color: #555;
	line-height: 1.8;
	text-align: left;
}

.hygiene03{
	padding: 80px 0;
}

.hygiene_sec_title{
	border-left: 4px solid #00A7EA;
	padding: 0 0 0 13px;
	font-size: 2rem;
	margin: 0 0 15px 0;
}

.hygiene_section_wrap{
	border-bottom: 1px solid #707070;
	padding: 30px 0 30px 0;
}

.hygiene_section_wrap .img{
	margin: 40px 0 60px 0;
}
.hygiene02 .white_box{
	background: #fff;
	margin: 40px auto 0;
	padding: 40px 3%;
}

.hygiene02 .white_box h4{
	text-align: center;
	font-size: 2rem;
	margin-bottom: 40px;
}

.hygiene_building_list {
	display: flex;
	flex-wrap: wrap;
	gap: 40px 0px;
	list-style: none;
	margin: 0 0 48px;
	padding: 0;
}

.hygiene_building_list .img{
	margin: 0 0 0 0;
}

.hygiene_building_list p{
	font-size: 2rem;
	color: #01406D;
	margin-top: 10px;
}

.hygiene_section_wrap .white_box02{
	background: #fff;
	margin-top: 40px;
	padding: 40px 5%;
}

.hygiene_section_wrap .white_box02 h4{
	text-align: center;
	margin: 0 0 40px 0;
	font-size: 2rem;
}

.hygiene_section_wrap .white_box02 .hygiene_bottom_text {
    font-size: 1.4rem;
    color: #333;
    line-height: 1.9;
    margin-top: 10px;
}
 
.hygiene_building_list > li {
	width: calc((98% - 48px) / 4);
	text-align: center;
	box-sizing: border-box;
	margin: 0 auto;
}

.hygiene_std_list {
	display: flex;
	justify-content: center;
	gap: 70px;
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
}
 
.hygiene_std_list > li {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}
 
.hygiene_std_list .std_icon img {
	width: 160px;
	height: 160px;
	object-fit: contain;
}
 
.hygiene_std_list .std_name {
	font-size: 2rem;
	color: #333;
	line-height: 1.6;
	text-align: center;
	color: #01406D;
}
 
/* 締めテキスト */
.hygiene_bottom_text {
	font-size: 1.6rem;
	color: #333;
	line-height: 1.9;
	margin-top: 20px;
	border: none;
}

.hygiene_section_wrap:last-child{
	margin: 0;
	border: none;
}

/* ================================================
   主要取り扱い機器 
   ================================================ */

.equ02_div2 {
	padding: 40px 0;
}

.equ02_div2 > h3 {
	font-size: 2rem;
	font-weight: 700;
	color: #333;
	text-align: center;
	margin-bottom: 40px;
}
 
.equ02_div2 ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
}
 
.equ02_div2 ul > li {
	width: 50%;
	padding: 28px 0;
	box-sizing: border-box;
}
 
.equ02_div2 ul > li:nth-child(n+3) {
	border-top: 1px solid #707070;
}
 
.equ02_div2 ul > li:nth-child(odd) {
	padding-right: 4%;
	text-align: left;
	position: relative;
}
 
.equ02_div2 ul > li:nth-child(odd)::after {
	content: "";
	position: absolute;
	top: 30px;
	bottom: 20px;
	right: 0;
	width: 1px;
	background: #707070;
}
 
.equ02_div2 ul > li:nth-child(even) {
	padding-left: 4%;
	text-align: left;
}
 
.equ02_div2 ul > li h4 {
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 5px;
	line-height: 1.4;
}

.equ02_div2 ul > li p {
	font-size: 1.6rem;
}

/* ================================================
   建物リニューアル事業
   ================================================ */

.ren02_div1 .inner{
	max-width: 960px;
}

.ren02_div1 ul{
	display: flex;
	justify-content: center;
	gap: 20px;
}

.ren02_div1 ul li{
	width: 28.5%;
	border: 2px solid #01B4BA;
	border-radius: 10px;
	padding: 30px 2% 40px;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: #fff;
}

.ren02_div1 ul h3{
	color: #01B4BA;
	font-size: 1.8rem;
	margin: 25px 0 10px 0;
}

.ren02_div2 .l_div_list li:last-child{
	margin-bottom:0;
}

.ren02_div3 .list{
	display: flex;
	gap: 30px;
	margin-top: 45px;
}

.ren02_div3 .box p{
	font-size: 2rem;
	margin: 10px 0 0 0;
}


/* ================================================
   省エネ事業紹介
   ================================================ */

.circle_wrap {
	padding: 60px 0;
}
 
.circle_list {
	display: flex;
	justify-content: center;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
}
 
.circle_item {
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	flex-shrink: 0;
	position: relative;
	width: 310px;
	height: 310px;
}
 
.circle_list li:first-child {
	z-index: 3;
	margin-right: -17px;
	border: 2px solid #1a3a5c;
	background: #fff;
}
.circle_list li:nth-child(2) {
	z-index: 2;
	background: #01406D;
	border: 2px solid #fff;
}
 
.circle_list li:last-child {
	z-index: 1;
	margin-left: -15px;
	border: 2px solid #1a3a5c;
	background: #fff;
}
 
.circle_inner {
	padding: 0 11%;
}

.circle_sub .circle_title,
.circle_list li:first-child .circle_title,
.circle_list li:last-child .circle_title {
	font-size: 2rem;
	font-weight: 700;
	color: #1a3a5c;
	margin-bottom: 10px;
	line-height: 1.4;
}
 
.circle_list li:nth-child(2) .circle_title {
	font-size: 2rem;
	font-weight: 700;
	color: #fff;
	margin-bottom: 10px;
	line-height: 1.4;
}
 

.circle_list li:first-child .circle_text,
.circle_list li:last-child .circle_text {
	font-size: 1.6rem;
	color: #333;
	line-height: 1.7;
	text-align: left;
}
 
.circle_list li:nth-child(2) .circle_text {
	font-size: 1.6rem;
	color: #fff;
	line-height: 1.7;
	text-align: left;
}

.ene02_div3 .list h4{
	font-size: 2.4rem;
	border-bottom: 1px solid;
	padding: 0 0 7px 0;
	margin: 0 0 23px 0;
}

.ene02_div3 .list li{
	position: relative;
	padding: 0 0 0 21px;
	margin: 10px 0 0;
}

.ene02_div3 .list li:before{
	content: "・";
	display: block;
	position: absolute;
	left: 0;
}

.ene02_div3 .txt_box dl{
	position: relative;
	margin: 80px 0 0 0;
}

.ene02_div3 .txt_box dt{
	background: #01B4BA;
	font-size: 2.8rem;
	color: #fff;
	padding: 16px 20px;
	display: inline-block;
	line-height: 1.2;
	position: absolute;
	top: -17px;
	font-weight: 600;
}

.ene02_div3 .txt_box dd{
	background: #fff;
	border: 2px solid #01B4BA;
	width: 98%;
	margin: 0 auto;
	padding: 70px 2% 40px;
	border-radius: 10px;
}

.ene02_div4{
	margin: 70px 0 0;
}

.ene02_div4 .list{
	display: flex;
	gap: 45px;
	margin: 40px 0 0;
}

.ene02_div4 .list .box{
	width: 48%;
}

.ene02_div4 .list .txt{
	margin: 20px 0;
}

.ene02_div4 .list .txt h5{
	color:#01406D;
	font-size: 2.2rem;
}

.ene02_div4 .list .box .txt + .txt h5{
	font-size: 1.8rem;
}

/* ================================================
   CCソイル・蓄光発光セラミックス
   ================================================ */
.cc02 .sub_tit{
	font-size: 2.4rem;
	margin-bottom: 80px;
}

.cc02_div1{
	margin: 120px 0 80px;
}

.cc02_div1 dl{
	border-left: 4px solid #01406D;
	padding: 0 0 0 15px;
}

.cc02_div1 dt{
	font-size: 2.8rem;
	color: #01406D;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 0 0 12px 0;
	font-weight: 700;
}

.cc02_div1 dt span{
	font-size: 1.6rem;
	color: #333;
	font-weight: 500;
}

.cc02_div1 .box{
	margin-top: 70px;
	background: url(./img/cc-soil/cc01_bg.png) top center no-repeat;
	border-radius:20px;
	padding: 37px 5.5%;
	background-size: cover;
}

.cc02_div1 .box .list h4{
	text-align: center;
	color: #fff;
	font-size: 2.6rem;
}

.cc02_div1 .box .list ul{
	display: flex;
	justify-content: space-between;
	margin: 24px 0 0;
}

.cc02_div1 .box .list li{
	background: #fff;
	width: 31.5%;
	padding: 20px 2% 35px;
}

.cc02_div1 .box .list h5{
	font-size: 2rem;
	border-radius: 20px;
	text-align: center;
	margin: 0 0 10px;
}

.cc02_div1 .box .list h5 span{
	text-align: center;
	display: inline-block;
	border: 1px solid;
	border-radius: 20px;
	min-width: 187px;
	padding: 3px 4% 2px;
	margin: 0 0 10px 0;
}

.cc02_div1 .fl_list .tit_box{
	color: #fff;
	margin: 30px 0 52px 0;
}

.cc02_div1 .fl_list h4{
	font-size:2.4rem;
}

.cc02_div1 .fl_list li{
	background: #fff;
}

.cc02_div1 .fl_list ol{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.cc02_div1 .fl_list li{
	width: 47.6%;
	position: relative;
	padding: 2%;
	margin: 0 0 50px 0;
}

.cc02_div1 .fl_list li span{
	position: absolute;
	display: block;
	width: 95px;
	height: 95px;
	background:#01B4BA;
	font-size:3.2rem;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50px;
	left: -28px;
	top: -34px;
}

.cc02_div1 .fl_list li .img{
	margin-bottom:10px;
}

.cc02_div1 .dl_box{
	background: #fff;
	padding: 40px 3%;
	border-radius: 10px;
}

.cc02_div1 .dl_box h4{
	font-size: 2.4rem;
	text-align: center;
	margin: 0 0 17px 0;
}

.cc02_div1 .dl_box .btn4{
	margin: 0 auto;
	border-radius: 50px;
	height: auto;
	padding: 2%;
	font-size: 2rem;
	text-align: center;
	justify-content: center;
	font-weight: 500;
}

.cc02_div1 .dl_box .btn4:before{
	position:absolute;
	content:"";
	width: 24px;
	height: 22px;
	background: url(./img/common/dl_btn.svg)no-repeat;
	background-size:contain;
	right: 7.696%;
	top: 0;
	bottom: 0;
	margin: auto;
}

.cc02_div1 .txt_box h4{
	color: #fff;
	font-size: 2.6rem;
	border-bottom: 1px solid;
	margin-bottom: 40px;
}

.cc02_div1_wrap:nth-of-type(2){
	margin-top: 80px;
}

.cc02_div1 .txt_box .list02{
	color: #fff;
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}

.cc02_div1 .txt_box .list02 h5{
	font-size: 1.8rem;
	margin-bottom: 10px;
	line-height: 1.8;
}

.cc02_div1 .txt_box .list02 ul{
	width: 66.5%;
	max-width: 650px;
}

.cc02_div1 .txt_box .list02 li{
	margin-top: 60px;
}

.cc02_div1 .txt_box .list02 li:first-child{
	margin-top: 0;
}

.cc02_div1 .txt_box .list02 .img{
	width: 32%;
	max-width:310px;
}

/* ================================================
   環境への取り組み
   ================================================ */
 .art03{
	 margin: 80px 0 0;
 }

.att01 h3{
	font-size: 1.8rem;
	border-bottom: 2px solid #00A7EA;
	padding-bottom: 9px;
	margin-bottom: 20px;
}

.att01 .box{
	margin-bottom: 80px;
	margin-top: -80px;
	padding-top: 80px;
}

.att01 .box:last-child{
	margin-bottom: 0;
}

.att01 .box li{
	display: flex;
}

.att01 .box .co3_enkaku_list li{
	display: flex;
}

.att01 .box .co3_enkaku_list li .left{
	width:100px;
	flex-shrink:0;
}

.att01 .box .co3_enkaku_list li .right{
	width:100%;
}

.att01 .box li ul{
	margin-top: 20px;
	margin-left: -20px;
}

.att01 .box_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.att01 .box_list li{
	width: 49%;
	border: 1px solid #707070;
	background:#F5FEFE;
	border-radius: 10px;
	display: block;
	padding: 35px 2%;
	margin-bottom: 20px;
}

.att01 .box_list h4{
	font-size: 2rem;
	position: relative;
	padding: 0 0 0 28px;
	margin: 0 0 6px 0;
}

.att01 .box_list h4:before{
	content: "";
	display: block;
	position: absolute;
	background: #01406D;
	width: 13px;
	height: 13px;
	left: 0;
	top: 32%;
}

#company05 .btn4{
	max-width: 264px;
	font-size: 1.6rem;
	height: 80px;
	border-radius: 10px;
	margin-top: 30px;
}

/* ================================================
   会社概要
   ================================================ */
.com01 .inner{
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.com01 .l_col{
	width: 20.5%;
	border: 1px solid #707070;
	padding: 2px 1.5% 10px;
	position: sticky;
	top: 100px;
}

.com01 .l_col a{
	display: block;
	margin-top: 9px;
	padding: 0 0 0 25px;
	background: url(./img/company/arrow_ac.svg) left center no-repeat;
}

.com01 .l_col a:hover,.com01 .l_col a.active{
	color: #00A7EA;
	background: url(./img/company/arrow.svg) left center no-repeat;
	
}

.com01 .ri_col{
	width: 72.3%;
}

.com01 .box th{
	font-weight: 500;
	text-align: left;
	width: 170px;
	vertical-align: baseline;
	padding-bottom: 10px;
}

.com01 .box td{
	padding-left: 10px;
	padding-bottom: 10px;
}

.com01 .fl_box{
	display: flex;
	justify-content: space-between;
}

.com01 .fl_box .img{
	width: 35%;
}

.com01 .fl_box dl{
	width: 61.5%;
}

.com01 .fl_box dt{
	font-size: 1.8rem;
	font-weight: 600;
	margin: 0 0 10px 0;
}

.com01 .fl_box .name{margin: 10px 0 0 0;}


/* ================================================
   プライバシーポリシー
   ================================================ */
.pry01 .box > .txt{
	text-align: right;
}

.pry01 .txt_list > p{
	margin-top: 35px;
}

.pry01 .box dt{
	font-weight: 600;
	margin-top: 30px;
}

.pry01 .box ul span{
	font-weight: 600;
	display: block;
}

.pry01 .box li{
	margin-bottom: 5px;
}

.pry01 .box + .box{
	margin-top: 120px;
}

.pry01 .box h3{
	font-size: 2rem;
	border-bottom: 1px solid #707070;
	padding: 0 0 15px 0;
	margin-bottom: 35px;
}

/* ================================================
   お問い合わせ
   ================================================ */

.contact01 .top{
	
}

.contact01 .top .text{
	font-size:2.2rem;
	font-weight:700;
	line-height:1.4545;
	text-align:center;
	margin-bottom:42px;
}

.tel_btn.cont_tel_btn{
	max-width:670px;
	margin:0 auto;
	padding: 23px 38px;
	justify-content: space-between;
}


.cont_tel_btn.tel_btn:before{
	display:none;
}


.tel_btn.cont_tel_btn .left {
	max-width: 315px;
	width: 53%;
	margin-right: 0;
}

.tel_btn.cont_tel_btn .left .text1{
	font-size: clamp(1.5rem, 3vw, 2rem);
}

.tel_btn.cont_tel_btn .left .text2 span{
	font-size: clamp(1.8rem, 4vw, 2.5rem);
	margin-right: 15px;
}

.tel_btn.cont_tel_btn .left .text2{font-size: clamp(2.4rem, 5vw, 3.9rem);margin-top: 10px;}

.tel_btn.cont_tel_btn .right {
    max-width: 168px;
    width: 48%;
    padding-bottom: 10px;
}

.tel_btn.cont_tel_btn .right .text1{
	font-size: 1.5rem;
	padding: 5px 0;
	border-radius: 5px;
}

.contact01 .bottom{
	padding-top:80px;
}

.contact01 .bottom .title{
	font-size:2.2rem;
	font-weight:700;
	text-align:center;
	margin-bottom:40px;
	line-height:1.4545;
}

.contact01 .bottom .text{
	font-weight:500;
	margin: 0 auto 52.5px;
}

.contact01 .bottom .text a{
	color:#41A7FF;
}

.thanks_area{
	text-align:center;
}

.thanks_area .title1{
	font-size: clamp(2rem, 3.4vw, 2.4rem);
}

.thanks_area .text1{
	margin:30px auto 40px;
}

/* ================================================
   採用情報
   ================================================ */

.pankuzu_area{
	margin:80px auto 0;
	position: relative;
	z-index: 1;
	background: #FFFFFF;
	padding:17px 0 8px;
}

.pankuzu2{
	display:flex;
	align-items:center;
	max-width:1100px;
	margin:0 auto;
	width:95%;
	font-size:1.6rem;
	font-weight:700;
}

.pankuzu2 li{
	margin-right:8px;
}

.rec_div{
	padding:20px 0;
	width:100%;
	background:#00A7EA;
	color:#fff;
	text-align:center;
	font-size:2.8rem;
	font-weight:700;
	line-height:1.4285;
	position: relative;
	z-index: 1;
}


#rec_cover {
  position: relative;
  overflow: hidden;
  z-index: 0;
  background: #0000006b;
}

.bg_fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  z-index: 1;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.bg_fixed.active {
  opacity: 1;
}

.bg_fixed img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rec_cov {
  height: 100vh;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}


.rec_cov1 .text_area .title1{
	text-align: center;
	font-size: clamp(3rem, 6vw, 4.2rem);
	line-height: 1.4523;
}

.rec_cov1 .text_area .title1 span{
	font-size: clamp(2rem, 4vw, 2.8rem);
	font-weight: 700;
	line-height: 1.2142;
	display: block;
	margin-top: 15px;
}

.rec_cov1 .text_area .text1{
	margin-top: 39.478%;
	text-align: center;
	font-size: clamp(1.7rem, 4vw, 3.2rem);
	line-height:1.4375;
	font-weight: 700;
	margin-top: 28%;
}


.rec_cov .text_area .title2{
	text-align: center;
	font-size: clamp(2.4rem, 6vw, 4.2rem);
	line-height: 1.4523;
}

.rec_cov .text_area .title2 span{
	font-size: clamp(3.2rem, 6vw, 5.6rem);
	line-height: 1.4464;
}

.rec_main{
	background:#fff;
	position:relative;
	z-index:1;
	overflow: hidden;
}

.recruit01{
	padding:120px 0 0;
	position:relative;
}

.recruit01 .sou1{
	position:absolute;
	left: -30.782%;
	top: -42.401%;
	width: 89.063%;
	z-index:-1;
}

.recruit01 .sou2{
	position:absolute;
	z-index:-1;
	width: 100.886%;
	top: 24.248%;
	right: -44.011%;
}

.rec_tit1{
	font-size: clamp(3rem, 6vw, 5.6rem);
	line-height: 1.4464;
	font-weight:700;
}

.rec_tit1 span{
	font-size: clamp(1.6rem, 4vw, 2.8rem);
	line-height: 1.214;
	display:block;
}

.rec01_div{
	width:100%;
	margin-top: 100px;
	position: relative;
}

.rec01_text1{
	width: 64.844%;
	background: #fff;
	position: relative;
	z-index: 1;
	padding: 1.875% 0 1.667%;
	font-size: clamp(2rem, 2vw, 3.2rem);
	line-height:1.4375;
	font-weight: 700;
	padding-left: 21.3548%;
}

.rec01_div1{
	position: relative;
}

.rec01_div1 .inner{
	margin-top:30px;
}

.rec01_div1 .flex{
	position:relative;
}

.rec01_div1 .flex .img_area{
	max-width:660px;
	width: 60%;
}

.rec01_div1 .flex .text_area{
	position:absolute;
	right:0;
	top: 14.364%;
	max-width: 526px;
	width: 48%;
}

.rec01_div1 .flex .img_area .img1{
	width: 76.82%;
}

.rec01_div1 .flex .img_area .img2{
	width: 57.728%;
	margin-top: -13.335%;
	position: relative;
	z-index: 1;
	margin-left: auto;
}

.rec01_text2{
	width: 40.834%;
	background: #fff;
	position: absolute;
	z-index: -1;
	padding: 1.511% 0 1.563%;
	font-size: clamp(2.4rem, 3vw, 3.8rem);
	line-height: 1.4473;
	font-weight: 700;
	right: 0;
	bottom: 2%;
	padding-left: 3.646%;
}

.rec01_div2{
	background:url(./img/recruit/co13.jpg)no-repeat;
	background-size:cover;
	padding: 6.459% 0;
	text-align: center;
	color: #fff;
	width: 94.792%;
	margin: 143px auto 0;
}

.rec01_div2 .text{
	font-size: clamp(1.8rem, 4vw, 2.8rem);
	line-height: 1.428;
	text-shadow:0 0 4px #00000099;
}

.rec01_div2 .text span{
	font-size: clamp(2.4rem, 5vw, 3.6rem);
	line-height:1.4444;
	font-weight: 700;
}

.recruit02{
	padding:100px 0 93px;
	position: relative;
}

.recruit02 .sou1{
	position:absolute;
	z-index:-1;
	left: -18.334%;
	top: 4.758%;
	width: 89.063%;
}

.rec02_div{
	padding: 60px 3.637% 40px;
	background:#FFFFFF;
	border-radius:10px;
}

.rec02_div .title_area{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-bottom: 43px;
}

.rec02_div .title_area .title{
	font-size: clamp(2.4rem, 4vw, 4.2rem);
	line-height: 1.4523;
	flex-shrink:0;
	margin-right: 4.118%;
}

.rec02_div .title_area .text{
	width:100%;
}

.rec02_list1{
	display:flex;
	justify-content:center;
}

.rec02_list1 li{
	margin-right: 20px;
	width: 32%;
	max-width: 317px;
	margin-top: 20px;
}

.rec02_list1 li a{
	transition:.4s;
}

.rec02_list1.col3{
	margin:0 auto 67px;
}

.rec02_list1.col3 li{
	margin-right: 15px;
}

.rec02_list1 li:last-child{
	margin-right:0!important;
}

.rec02_list1 li .img{
	width: 82.336%;
	margin-left: auto;
}

.rec02_list1 li .text_area{
	width: 16vw;
	display: flex;
	align-items: center;
	justify-content: center;
	max-height: 160px;
	height: 16vw;
	position: relative;
	margin-right: -32.81%;
	margin-top: -36.91%;
	background: #6DD1D5;
	border-radius: 50%;
	color: #fff;
	max-width: 160px;
	font-size: clamp(1.6rem, 2vw, 2rem);
	font-weight: 700;
	line-height: 1.45;
	text-align: center;
	z-index:1;
	box-shadow: 7px 7px 0 #58B2B5;
}

.rec02_list1 li .text_area.text_area2{
	background: #6DD591;
	box-shadow: 7px 7px 0 #61BF82;
}

.rec02_list1 li .text_area.text_area3{
	background: #e27c74;
	box-shadow: 7px 7px 0 #d06961;
}

.rec02_list1 li .text_area.text_area4{
	background: #e5c262;
	box-shadow: 7px 7px 0 #d1ae4f;
}

.rec02_list1 li .text_area.text_area5{
	background: #f2a6f2;
	box-shadow: 7px 7px 0 #d084d0;
}

.btn3.dblue{
	color: #01406D!important;
	margin: 0 auto;
	height: 50px;
	font-size: 1.6rem;
}

.btn3.dblue:before{
	background: url(./img/recruit/arrow.svg) no-repeat;
	background-size: contain;
}

.recruit03{
	background:#01406D;
	padding:87px 0 73px;
}

.rec_tit2{
	font-size:2.4rem;
	font-weight:700;
	line-height:1.458333;
	text-align:center;
}

.recruit03 .rec_tit2{
	color:#fff;
	margin-bottom:20px;
}

.recruit03 .text{
	color:#fff;
	text-align:center;
	margin: 0 auto 53px;
}

.rec03_list1{
	display:flex;
	justify-content:space-between;
}

.rec03_list1 li{
	max-width:260px;
	width:24%;
}

.rec03_list1 li:nth-child(2n+1){
	padding-top: 40px;
}

.rec03_list1 li a{
	position: relative;
	transition: .4s;
	display: flex;
}

.rec03_list1 li a .text_area{
  position:absolute;
  bottom:20px;
  right:0;
  width:100%;
  text-align:right;
}

.rec03_list1 li a .text_area .text1{
  display: flex;
  width: 100%;
  margin-left:auto;
  font-size:1.6rem;
  font-weight:700;
  line-height:1.5;
  color:#000;
  justify-content: flex-end;
}

.rec03_list1 li a .text_area .text1 span{
  padding:8px 20px;
  background:#fff;
}

.rec03_list1 li a .text_area .text2{
	margin-top:10px;
}

.recruit03 .btn3{
	margin:40px auto 0;
}

.recruit04{
	padding:165px 0 0;
}

.rec_tit03_area{
	position:relative;
	z-index:1;
	margin-bottom:80px;
}

.rec_tit03_area:before{
	position:absolute;
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	background:#01406D;
	border-radius:0 36px 36px 0;
	width: 48.49%;
	z-index:-1;
	min-width: 600px;
}

.rec_tit3{
	font-size: clamp(1.8rem, 4vw, 2.8rem);
	color:#fff;
	line-height:1.4285;
	padding:16px 0;
	max-width:1100px;
	width:95%;
	margin:0 auto;
}


.recruit05{
	padding: 120px 0 100px;
}

.recruit05 .rec_tit03_area:before{
	width: 42.136%
}

.rec_gre_div{
	background:linear-gradient(to top,#DEF5FF,#FFFFFF)
}

.recruit06{
	background:#fff;
	padding:100px 0 167px;
}

.recruit06 .title{
	margin:60px auto;
	font-size: clamp(2rem, 3.4vw, 2.8rem);
	color:#01406D;
	line-height:1.7857;
}

.recruit06 .flex .text_area{
	max-width: 688px;
	width: 63%;
}

.recruit06 .flex .img{
	max-width:389px;
	width: 36%;
}

.recruit06 .flex .text_area .text{
	font-size: clamp(1.5rem, 2vw, 1.8rem);
	line-height: 1.7;
}

.recruit06 .text1{
	margin-top:41px;
	font-size: clamp(1.5rem, 2vw, 1.8rem);
	line-height: 1.7;
}

.recruit07{
	padding:100px 0 150px;
}

.btn5{
	max-width:550px;
	margin: 80px auto 0;
	position:relative;
	background: #00A7EA;
	transition: .4s;
	width:100%;
	display:flex;
	align-items:center;
	height:80px;
	font-size: 2.4rem;
	font-weight: 700;
	color:#fff!important;
	padding-left:44px;
	border-radius:10px;
}


.btn5:before{
	position:absolute;
	content:"";
	width:36px;
	height:36px;
	background:url(./img/common/arrow2_bla.svg)no-repeat;
	background-size:contain;
	right:36px;
	top:0;
	bottom:0;
	margin:auto;
}


/* ================================================
   事業紹介
   ================================================ */

.busi01{
	padding:137px 0 120px;
	overflow: hidden;
}

.busi01_div{
	position:relative;
}

.busi01_div .text_area{
	max-width:840px;
	margin-left:auto;
	width: 77%;
}

.busi01_div .text_area .title{
	font-size: clamp(2.4rem, 4vw, 4.2rem);
	line-height: 1.4523;
	color:#0071BC;
}

.busi01_div .text_area .text{
	font-size: clamp(1.6rem, 2.1vw, 2.4rem);
	line-height:1.458333;
	font-weight:700;
}

.busi01_div .img1{
	max-width:219px;
	position:absolute;
	top:0;
	left:0;
	width: 20%;
}

.busi01_div .img2{
	max-width:840px;
	margin-left:auto;
	margin-top: 5.637%;
	width: 77%;
}

.busi01_ank{
	display:flex;
	justify-content:space-between;
	margin:117px auto 0;
}

.busi01_ank li{
	width: 19.5%;
	max-width: 210px;
}

.busi01_ank li a{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	text-align:center;
	color:#fff;
	background: #6DD1D5;
	box-shadow: 0px 7px 0 #58B2B5;
	height:90px;
	border-radius:50px;
	font-size:2rem;
	font-weight:700;
	line-height:1.45;
	transition:.4s;
}

.busi01_ank li.ank02 a{
	background: #6DD591;
	box-shadow: 0px 10px 0 #61BF82;
}

.busi01_ank li.ank03 a{
	background: #e27c74;
	box-shadow:  0px 10px 0 #d06961;
}

.busi01_ank li.ank04 a{
	background: #e5c262;
	box-shadow:  0px 10px 0 #d1ae4f;
}

.busi01_ank li.ank05 a{
	background: #f2a6f2;
	box-shadow: 0px 10px 0 #d084d0;
}

.busi01_ank li a:hover{
	box-shadow: 0px 0px 0;
	transform:translateY(10px);
	opacity:1;
}

.busi01_div1{width: 100%;margin-top: 90px;position: relative;padding: 0 3.637% 20px;}

#id1.busi01_div1{
	margin-top:60px;
}

.busi01_div1:before{
	position:absolute;
	content:"";
	width: 137.274%;
	height: 85%;
	max-height:352px;
	left:0;
	bottom: 0;
	background: url(./img/bussiness/co12_1.jpg)no-repeat;
	background-size:cover;
	z-index:-1;
	border-radius:10px 0 0 10px;
}

#id2.busi01_div1:before{
	border-radius:0 10px 10px 0;
	background: url(./img/bussiness/co12_2.jpg)no-repeat;
	background-size:cover;
	left:auto;
	right:0;
}

#id2 .busi01_div11{
	margin-left:auto;
}

#id3.busi01_div1:before{
	background: url(./img/bussiness/co12_3.jpg)no-repeat;
	background-size:cover;
}


#id4.busi01_div1:before{
	border-radius:0 10px 10px 0;
	background: url(./img/bussiness/co12_4.jpg)no-repeat;
	background-size:cover;
	left:auto;
	right:0;
}

#id4 .busi01_div11{
	margin-left:auto;
}

#id5.busi01_div1:before{
	background: url(./img/bussiness/co12_5.jpg)no-repeat;
	background-size:cover;
}


.busi01_div11{
	width: 85%;
	max-width:590px;
	background:#fff;
	border:2px solid #01406D;
	padding: 40px 1.962% 30px;
	display: flex;
	align-items: flex-start;
	min-height: 392px;
	border-radius: 10px;
}

.busi01_div11 .left{
	width:63px;
	flex-shrink:0;
	margin-right:17px;
}

.busi01_div11 .right{
	max-width:470px;
	padding-right: 3.664%;
	width: 86%;
}

.busi01_div11 .right .title1{
	font-size:2rem;
	font-weight:700;
	line-height:1.45;
	margin-bottom:10px;
	color: #000;
}

.busi01_div11 .right .title1.matop{
	margin-top: 10.54%;
}

.btn_flex{
	display:flex;
	justify-content:space-between;
	max-width:960px;
	margin:120px auto 0;
	width:100%;
}

.btn6{
	display:flex;
	align-items:center;
	background: #01B4BA;
	color: #fff!important;
	max-width: 460px;
	width: 48%;
	height: 110px;
	border-radius: 55px;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.458333;
	position: relative;
	justify-content:center;
	transition:.4s;
}

.btn6 .arrow{
	display:flex;
	align-items:center;
	margin-left:20px;
}

.btn6.back .arrow{
	margin-left:0px;
	margin-right:20px;
}

.btn6.back {
	background:#01406D;
}


/* ================================================
   先輩の声
   ================================================ */

.voice01{
	padding:100px 0 120px;
}

.voice01_div{
	display:flex;
	justify-content:space-between;
	margin-bottom: 183px;
	align-items: flex-start;
}

.voice01_div .title{
max-width: 503px;
width: 46%;
}

.voice01_div .img{max-width: 586px;width: 54%;}

.voice01_div1{
	margin-top: 40px;
	padding: 40px;
	display: flex;
	justify-content: space-between;
	border: 2px solid #01406D;
	border-radius: 10px;
	margin-top: 11.546%;
	position: relative;
}

.voice01_div1 .img{
	max-width:300px;
	width: 30%;
	margin-top: -12.5%;
}

.voice01_div1 .text_area{
	max-width:670px;
	width: 66%;
}

.voice01_div1 .text_area .name{
	position:absolute;
	top: -49px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.45;
}

.voice01_list1 li{
	margin-bottom:26px;
}

.voice01_list1 li:last-child{
	margin-bottom:0px;
}

.voice01_list1 li .quest{
	padding-bottom:10px;
	margin-bottom:10px;
	border-bottom:1px dashed #707070;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.45;
}

.voice01_list1 li .answe{
	font-weight:500;
}


/* ================================================
   エントリー
   ================================================ */

.contact01.entry01 {
    padding: 20px 0 20px;
}

.contact01.entry01 .bottom .title{
	
margin-bottom: 73.5px;
}

.tel_flex{
	display:flex;
	align-items:center;
	justify-content:space-between;
	max-width:416px;
	width:100%;
}

.tel_flex .inp{
	width: 27.405%;
}

.tel_flex .bar{
	height: 3px;
	background: #707070;
	width: 4.157%;
}


/* ================================================
   企業情報
   ================================================ */

.company02_div{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-top: 40px;
}

.company02_div .text{
	max-width:486px;
	width: 65%;
	font-size: clamp(1.5rem, 2vw, 1.8rem);
	line-height: 1.444;
	font-weight: 700;
}

.company02_div .img{
	max-width:260px;
	width: 33%;
}

.company02_text1 {
	margin-top:20px;
	font-weight:500;
}

.company02_text1.matop{
	margin-top:40px;
}



/* ================================================
   お知らせ
   ================================================ */

.news01 .news_list1 li{
	padding:40px 0 10px;
}

.news01 .news_list1 li:first-child{
	padding:0px 0 10px;
}

.news01 .news_list1 li .cont{
	width:100%;
}

.news01 .news_list1 li .cont .cate{
margin-right: 10.13%;
}

.news01 .news_list1 li .cont .title1{
	width:100%;
	font-size: 1.6rem;
}

.page_text{
	font-weight:500;
}

.news02{
padding: 50px 0 40px;
}

.news02 .title_area{
	margin-bottom:38px;
}

.news02 .title_area .title{
	font-size: clamp(2.4rem, 3vw, 3.4rem);
	line-height:1.458333;
	font-weight:700;
}

.news02 .title_area .dacate{
	max-width: 180px;
	margin: 35px 0 0;
	width: 100%;
	max-width: initial;
	justify-content: flex-start;
}

.news02 .title_area .dacate .date{
	margin-right: 16px;
}

.news02 .title_area .dacate .cate{
	height: 20px;
	font-size: 1.6rem;
	line-height: 1;
	width: initial;
	min-width: 87px;
}

.news_back_btn{
	display:flex;
	align-items:center;
	justify-content:center;
	margin:0 auto;
	background:#fff;
	border:2px solid #00A7EA;
	border-radius:25px;
	height:40px;
	width:210px;
	font-weight:700;
	padding-left:30px;
	position:relative;
	transition:.4s;
}

.news_back_btn:before{
	position:absolute;
	content:"";
	width:20px;
	height:20px;
	background:url(./img/common/news_back_arrow.svg)no-repeat;
	background-size:contain;
	top:0;
	left:8px;
	bottom:0;
	margin:auto;
}
.article .news_list1 {
    margin: 30px 0 70px;
}
.mwform-checkbox-field-text {
    display: none;
}


.wx-panel-item{
	display:none;
}

.wx-panel-item.active{
	display:block;
}


.rec07_tab{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin-top:30px;
}

.rec07_tab li{
	width: 24.5%;
	background:#fff;
	text-align:center;
	margin-top:10px;
	height:60px;
	border-radius:60px;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	line-height:1.4;
	font-weight:700;
	font-size: clamp(1.3rem, 1.6vw, 1.6rem);
	border:1px solid;
	cursor: pointer;
	transition: .4s;
}

.rec07_tab li:hover,
.rec07_tab li.active{
	background:#01406D;
	color:#fff;
	border:1px solid #01406D;
}

.rec07_tb{
	margin:40px auto 0;
	width:100%;
}
.rec07_tb th,
.rec07_tb td{
	padding:20px;
}

.rec07_tb th{
	width:25%;
	background:#01406D;
	color:#fff;
	border-bottom:1px solid #fff;
}

.rec07_tb td{
	width:75%;
	background:#fff;
	border-bottom:1px solid #01406D;
	border-right:1px solid #01406D;
}

.rec07_tb tr:first-child th,
.rec07_tb tr:first-child td{
	border-top:1px solid #01406D;
}

.rec07_tb tr:last-child th{
	border-bottom:1px solid #01406D;
}

/*-- 固定ここまで --*/


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 1921px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	.busi01_div1:before {
    width: 78.646vw;
	}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 1921px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1600px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	
.rec_cov1 .text_area .text1 {
    margin-top: 20%;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1400px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1200px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	.ft_list2 > li > a{
		font-size:1.4rem;
	}

.ft_list3 > li .text1{
	font-size:1.4rem;
	width: 150px;
}

.ft_list1 > li > a{
	font-size:1.4rem;
}


.article header .pc_nav .hd_link{
	width: 28%;
}


.article header .pc_nav .nav_list1{
	width: 70%;
}

.rec01_text1{
	padding-left: 12%;
	font-size: clamp(2.4rem, 2.3vw, 3.2rem);
	width: 80%;
}

.rec_tit3{
	width:100%;
	max-width:max-content;
	margin-right:auto;
	margin-left:0;
	padding-left: 3%;
	padding-right: 5%;
	background:#01406D;
	border-radius:0 36px 36px 0;
}

.rec_tit03_area:before{
	display:none;
}
	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1200px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
	
	
		


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1000px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

img {
	width: auto;
	max-width: 100%;
	height: auto;
}


.nav_list1 .open_nav{
	font-size: 1.6rem;
}

.nav_list1 .open_nav span{
	margin-left:5px;
}

.cov-div{
	    min-height: 600px;
}

.co2_list2 li a:before{
	right:0;
}

.co4_div {
    padding: 0 3% 40px;
}

.co4_div .text_area .title_area{
	align-items:center;
}

.ft_list3 > li{
	flex-direction:column;
}

.ft_list3 .ft_list2{
	margin-left:27px;
}

footer .right .left2{
	width:39%;
}

footer .right .right2{
	width:60%;
}

footer .left .addp{
	font-size:1.3rem;
}


.article header .pc_nav .hd_link .hd_link_btn1{
	font-size: 1.2rem;
}


.article header .pc_nav .nav_list1 .open_nav{font-size: 1.3rem;}

.article header .nav_list1 > li:before {
    margin: 0 5px 0;
    width: auto;
    padding: 0;
}

.com01 .l_col{
	width: 26.5%;
}

.com01 .ri_col{
	width: 68.3%;
}

.com01 .l_col a{
	font-size: 1.4rem;
}

.cc02_div1 .box .list h5{
	font-size: 1.7rem;
	margin: 0 0 0px;
}

.circle_list {
	flex-wrap: wrap;
}
 
.circle_item {
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	flex-shrink: 0;
	position: relative;
	width: 310px;
	height: 310px;
}

.circle_list li:last-child {
	margin: -52px 0 0 0;
}

.cons02_div2 ul > li p {
    font-size: 1.8rem;
}

.cons02_div2 {
    margin-top: 80px;
}

.cons02_div3 {
    margin-top: 80px;
}

.rec01_div1 .flex .text_area{
	top: 0%;
}

.rec01_div1 .flex .img_area .img2{
	margin-top: -2%;
}

.rec01_div1 .flex .img_area{
	width:58%;
}
	
.busi01_ank li a{
	font-size:1.6rem;
}
	
	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1000px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 768px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc {
	display: none;
}

.sp {
	display: block;
}

nav li a {
	font-size: 1.5rem;
}


a[href*="tel:"] {
	pointer-events: initial;
	cursor: pointer;
	text-decoration: none;
	}

/* ヘッダー
----------------------------------------------------------- */


.headerUl{
	display: flex;
	width: 40px;
	justify-content: flex-end;
}

.menuBtn {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}


/*--- modal ---*/

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 40px;
  height: 40px;
  z-index: 9999;
  background: #00A7EA;
  border-radius: 3px;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 17px;
  height: 2px;
  background-color: #fff;
  border-radius: 4px;
  right: 0;
  margin: auto;
}
.menu-trigger span:nth-of-type(1) {
  top: 13px;
}
.menu-trigger span:nth-of-type(2) {
  top: 19px;
}
.menu-trigger span:nth-of-type(3) {
  top: 25px;
}
	
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(6px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-6px) rotate(45deg);
}

/*gnav*/
.gnav{
    background: #fff;
    display: none;
    height: calc(100% - 60px);
    position: fixed;
    width: 100%;
    z-index: 999;
    transition: 1s;
    left: 0;
    top: 60px;
}

.gnav.active{
	display: block;
}

.gnav__menu{
    display: block;
    width: 100%;
    height: 100%;
    padding: 0px 0 0px;
}

.gnav__wrap{
    align-items:center;
    display: flex;
    height: calc(100% - 60px);
    justify-content: center;
    position: fixed;
    width: 100%;
    top: 60px;
    overflow: scroll;
}

nav .gnav__menu__item{
    margin: 0px auto 0;
    width: 89.745%;
    border-bottom: 1px solid #707070;
    padding: 10px 0;
}

.gnav__menu__item2{
    margin: 0px auto 0;
    width: 89.745%;
    padding: 15px 0 20px;
}

.gnav__menu__item2 .hd_link_btn1{
	width: 100%;
	max-width: 248px;
	height: 47px;
	border-radius: 50px;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.458333;
	margin-top: 5px;
}
	
nav .gnav__menu__item .text{
	font-size:1.4rem;
	font-weight:700;
	margin-bottom:10px;
    line-height: 1.4285;
}
	
nav .gnav__menu__item .text1{
	font-size:1.8rem;
	font-weight:700;
    line-height: 1.4444;
}

.gnav__menu__item a{
    color: #01406D;
    font-size: 1.8rem;
    font-weight: 700;
    text-decoration: none;
    width: 100%;
    display: block;
    line-height: 1.4444;
}

.gnav_list1{
	margin-left:40px;
	margin-top: 10px;
}
	
.gnav__menu__item .gnav_list1 li:last-child{
	padding:0;
}

.gnav__menu__item .gnav_list1 li{
    padding: 0 0 5px 0;
    position: relative;
    padding-left: 19.5px!important;
}

.gnav__menu__item .gnav_list1 li:before{
	position:absolute;
	content:"";
	width:10px;
	height:1px;
	background:#01406D;
	left:0;
	top: 0;
	bottom: 0;
	margin: auto;
}
	
.gnav__menu__item .gnav_list1 li a{
	font-size:1.6rem;
	line-height: 1.5;
}

nav .gnav__menu__item a.btn03{
    padding: 0 5%;
    font-size: 2rem;
}

.pc_nav{
	display:none;
}


.contact01_div1{
	padding:30px 10px;
	border-radius:10px;
	margin-bottom: 60px;
}

.tb_flex{
	flex-direction:column;
	min-height: initial;
	align-items: flex-start;
}

input[type="text"], input[type="email"], input[type="tel"], select{
	height:50px;
}


.news01{padding: 80px 0 20px;}

.news01 .flex{
	flex-direction:column;
}

.news01 .main_cont{
	max-width:initial;
	width: 100%;
}

.pagenation_area {
    margin: 50px auto 0;
}

.news01 .side_cont{
	width: 100%;
	margin:60px auto 0;
	display:flex;
	justify-content:space-between;
	max-width:initial;
}

.side_div{
	margin:0;
	width:48%;
}


.det_cont .title_area .dacate{
	max-width:180px;
}

.det_cont .title_area {
    padding-bottom: 28px;
    margin-bottom: 28px;
}


.news_list li{
	flex-direction:column;
	align-items: flex-start;
}

.news_list li .title1{
	width:100%;
	margin-top:8px;
}

.news_list li .dacate{
	width:100%;
	max-width: initial;
	justify-content: flex-start;
}

.news_list li .dacate .date{
	margin-right:16px;
}

.news_list li:before{
	top: auto;
	bottom: 73px;
}


header{
	height:60px;
	padding: 0 10px;
	border-top: 4px solid #00A7EA;
}

header:before{
	height:4px;
	top:-4px;
	width:120px;
	right: 12.824%;
}

.hLogo{
	margin-left:0;
	width:224px;
}

.article header .hLogo {
	margin-left:0;
	width:224px;
}

#cover{
	margin:80px auto 20px;
	padding: 0;
}

.cov-in{
	width: 89.745%;
}

/* .cov-div{
	background: url(./img/top/mv_sp.png) no-repeat bottom;
	background-size: cover;
	width: 100%;
	align-items: flex-start;
	padding-top: 43px;
	height: calc(80.34vh - 80px);
	min-height: 80vw;
} */

/* .cov-div .title{
	width: 91.542%;
	max-width: 500px;
} */


.mv-video-wrap{
	height: calc(100vh - 80px);
	min-height: 159vw;

}
.mv-video-pc{
	display: none;
}

.mv-video-sp{
	display: block;
}

.mv-video-wrap .cov-div{
	align-items: flex-start;
	padding-top: 43px;
}

.cov-in .news_area{
	min-width:initial;
	position: initial;
	flex-direction: column;
	width: 100%;
	max-width: initial;
	padding: 20px 0 0;
}

.cov-in .news_area .left{
	display:flex;
	justify-content:space-between;
	width:100%;
	align-items: center;
}

.cov-in .news_area .left .mainTit{
	margin:0;
	display:flex;
	align-items: center;
	font-size: 2rem;
	font-size: clamp(2rem,5vw,2.8rem);
}

.cov-in .news_area .left .mainTit .en{margin-left: 15px;font-size: 1rem;line-height: 1.3;padding-left: 10px;font-size: clamp(1rem, 2.5vw, 1.4rem);}

.mainTit span.en:before{
	width:5px;
	height:5px;
	top: 0px;
	bottom: 0px;
	margin: auto;
}
.btn1:before{
	right: 15px;
}

.cov-in .news_area .right{
	margin: 9px auto 0;
	width:100%;
	max-width: initial;
}

.news_list1 li{
	flex-direction:column;
	align-items:flex-start;
}


.news_list1 li .date{
	font-size:1.2rem;
	line-height:1.3333;
	margin-right:0px;
	font-size: clamp(1.2rem, 3vw, 1.6rem);
}

.news_list1 li .cont{
	margin-top: 0.574%;
}

.news_list1 li .cont .cate{
	width: initial;
	font-size:1.2rem;
	margin-right: 1.75%;
	font-size: clamp(1.2rem, 3vw, 1.6rem);
	padding: 0.5px 10px;
	height: initial;
}

.news_list1 li .cont .title1{
	font-size: 1.2rem;
	font-size: clamp(1.2rem,3vw,1.8rem);
}

.top_cont{
	background: url(./img/top/bg_sp.png) no-repeat;
	background-size: cover;
}

.top_cont:before{
	width: 92.567vw;
	height: 92.567vw;
}

.inner{
	width: 89.745%;
}

.content01 {
    padding: 7.696% 0 0;
}

.content01 .flex {
    align-items: flex-start;
	flex-direction:column;
}

.content01 .flex .text_area{
	max-width:initial;
	width:100%;
}
	
.content01 .flex .img{
	width: 60%;
	margin-left: auto;
	margin-top: 3px;
	animation-delay: 0s !important;
}

.content02 {
    padding: 0% 0 12.0545%;
}

.mainTit {
    font-size: 1.8rem;
    font-size: clamp(1.8rem,4.6vw,2.8rem);
}

.mainTit span.en{
	font-size: 1rem;
	font-size: clamp(1rem, 2.5vw, 1.4rem);
	padding-left: 10px;
}

.content02 .flex1{
	margin: 7.718% auto 0;
}

.content02 .flex1 .left{
	max-width:initial;
	width:100%;
}

.content02 .flex1 .right{
	display:none;
}

.co2_list1 > li{
	margin-top: 3.718%;
	padding: 2.86% 3.145% 4% 3.718%;
}

.co2_list1 > li .flex2 .img{
	width: 48.47%;
	max-width: initial;
}

.co2_list1 > li .flex2 .text_area{
	width: 49.41%;
	max-width: initial;
}

.co2_list1 > li .title1{
	font-size: 1.2rem;
	font-size: clamp(1.2rem, 3vw, 2rem);
	padding-left: 10px;
}

.co2_list1 > li .flex2 {
    margin-top: 2.765%;
}

.co2_list2 li {
    margin-top: 17px;
    padding-top: 3px;
    padding-bottom: 3px;
    font-size: 1.4rem;
    font-size: clamp(1.4rem, 3.5vw, 1.8rem);
}

.co2_list2 li a:before{
	width: 12px;
	height: 10px;
	background: url(./img/common/arrow1_blu_sp.svg) no-repeat;
	background-size: contain;
	right: 8px;
}

body{
    font-size: clamp(1.4rem, 3.5vw, 1.6rem);
	line-height:1.57;
}

.content01 .flex .text_area .text1 {
    margin-top: 8.29%;
}

.content01 .flex .text_area .title1{
	font-size: 2rem;
	line-height: 1.45;
	font-size: clamp(2rem, 5vw, 3.8rem);
}

.sld1{
	width: 86.76%;
}

.sld1_cont:nth-child(2n) .sld1{
	padding-top: 10.05%;
}

.slider_area {
    padding-bottom: 10.26%;
}

.content03 {
    padding: 5.13% 0 52.055%;
    background: url(./img/top/bg3_sp.jpg) no-repeat;
    background-size: cover;
}

.content03 .flex{
	flex-direction:column;
}

.content03 .flex .text_area {
    max-width: initial;
    width: 100%;
}

.content03 .flex .img_area{
	max-width:initial;
	width:100%;
	margin-top: 11.43%;
	padding-bottom: 6.575%;
	animation-delay: 0s !important;
}

.content03 .flex .img_area .img {
    width: 93.429%;
}

.content03 .flex .img_area:before {
    width: 44.105vw;
    height: 44.616vw;
}

.btn3 {
	max-width: 227px;
	height: 48px;
}

.content03 .flex .text_area .btn3 {
    margin-top: 5.146%;
}

.content03 .flex .text_area .text1{
	max-width:initial;
}

.content03 .flex .text_area .title1 {
    margin: 5.718% 0 3.718%;
    font-size: 2.4rem;
    line-height: 1.45833;
    font-size: clamp(2.4rem, 3vw, 3.4rem);
}

.content03 .flex .text_area .title_area .bar {
    margin-left: 13px;
    margin-top: 5.5%;
}

.co4_div{
	flex-direction:column-reverse;
	padding: 5.718% 5.718% 4.575%;
}

.co4_div .text_area .btn3{
	position:absolute;
	bottom: 36px;
	right: 15px;
}

.co4_div .text_area{
	max-width:initial;
	width:100%;
	padding: 0;
}

.co4_div .img{
	max-width:initial;
	width: 47.113%;
	margin-right: auto;
	margin-top: 22px;
}

.btn3:hover{
	transform: translateX(15px);
}

.co4_div .text_area .title_area{
	flex-direction:column;
	align-items:flex-start;
}

.co4_div .text_area .title_area .title1 {
    font-size: 1.8rem;
    line-height: 1.4444;
    font-size: clamp(1.8rem, 4.6vw, 3rem);
    margin-top: 6.456%;
}

.co4_div .text_area .text1 {
    margin-top: 3.23%;
}

.content04 {
    margin: -27.18% auto 0px;
}

.content05 .title_area{
	flex-direction:column;
	align-items: flex-start;
	margin-bottom: 5.145%;
}

.content05 .title_area .mainTit{
	margin-right:0;
	font-size: 2.8rem;
	margin-bottom: 5.718%;
}

.content05 .title_area .mainTit span.en{
	font-size:1.4rem;
}

.content05 .title_area .text{
	max-width:initial;
}

.btn4{
	width:100%;
	font-size: 2.1rem;
	padding-left: 27px;
	max-width: initial;
	height: 99px;
}
	

.btn_area.pc{
	display:none;
}

.btn_area.sp{
	display:flex;
	margin-top: 7px;
}

.tel_btn{
	flex-direction:column;
	align-items:flex-start;
	padding: 20px;
}

.tel_btn .left {
    max-width: initial;
    width: 100%;
    margin-right: 0%;
}

.tel_btn .left .text1{
	font-size:1.8rem;
}

.tel_btn .left .text2{
	font-size:3.8rem;
	margin-top: 10px;
}

	
.tel_btn .left .text2 span{
	display:block;
	font-size: 1.8rem;
	line-height: 1.222;
}

.tel_btn .right {
    max-width: initial;
    width: 100%;
    padding-bottom: 0px;
    margin-top: 10px;
}

.tel_btn .right .text1{
	max-width:177px;
	font-size: 1.6rem;
}

.tel_btn:before{
	right: 10px;
}

.btn4:before{
	width: 32px;
	height: 33px;
	right: 27px;
}


.content05 {
    padding: 60px 0;
}


footer {
	max-width: 100%;
	overflow: hidden;
}

footer .flex{
	flex-direction:column;
}


	
footer .left{
	max-width: initial;
	width: 100%;
}

footer .right{
	max-width: initial;
	width: 100%;
	flex-direction: column;
}


footer .right .left2{
	width: 100%;
}

footer .right .right2{
	max-width: initial;
	width: 100%;
	margin-top: 8px;
}

footer .right .right2 .text{
	font-size: 1.8rem;
}

footer .logo {
	max-width:286px;
	width:100%;
	margin-bottom:13px;
}


footer .left .addp{
	margin-bottom: 40px;
	font-size: 1.6rem;
	line-height: 1.625;
}

.copyright {
	padding: 18px 0;
	width: 89.745%;
	border-top: none;
	font-size: 1.6rem;
}


	footer .tel_btn{
	flex-direction:column;
	align-items:flex-start;
	padding: 20px;
}

footer .tel_btn .left {
    max-width: initial;
    width: 100%;
    margin-right: 0%;
}

footer .tel_btn .left .text1{
	font-size:1.8rem;
}

footer .tel_btn .left .text2{
	font-size:3.8rem;
	margin-top: 10px;
}

	
footer .tel_btn .left .text2 span{
	display:block;
	font-size: 1.8rem;
	line-height: 1.222;
}

footer .tel_btn .right {
    max-width: initial;
    width: 100%;
    padding-bottom: 0px;
    margin-top: 10px;
}

footer .tel_btn .right .text1{
	max-width:177px;
	font-size: 1.6rem;
}

footer .tel_btn:before{
	right: 10px;
	display:block;
}

footer .btn4 {
	width: 100%;
	font-size: 2.1rem;
	padding-left: 27px;
	height: 99px;
	justify-content: flex-start;
	max-width: initial;
}
	
footer .btn4:before{
	width: 32px;
	height: 33px;
	right: 27px;
	display:block;
}

.ft_list1 > li > a{
	font-size:1.6rem;
}

.ft_list2 > li > a {
	font-size: 1.6rem;
	padding-left: 27px;
	font-weight: 500;
}

.ft_list3 > li > a {
	font-size: 1.6rem;
}

.ft_list2 > li {
    margin-top: 10px;
}

    .ft_list3 > li .text1 {
        font-size: 1.6rem;
        width: 100%;
    }

.ft_list3 .ft_list2 > li:first-child {
    margin-top: 5px;
}
.ft_list2,
.ft_list3 .ft_list2 {
    margin-left: 50px;
}

.article header .pc_nav{
	display:none;
}

#art_cover1 .title_area .title > span{
	font-size:1.6rem;
}

#art_cover1 .title_area .title {
    font-size: 2.8rem;
}

.art02_div1 {
    margin: -60px auto 0;
    padding: 30px 20px;
}

.build02_list1{
	flex-direction:column;
}

.build02_list1:before{
	display:none;
}
	
.build02_list1 li{
	width:100%;
	padding: 30px 0!important;
	border-bottom: 1px solid #707070;
}

.build02_div2 hr{
	display:none;
}

.build02_div3 .title{font-size: 2.6rem;padding: 10px;padding-right: 20px;top: 40px;}

.build02_div3{
	padding: 136px 20px 40px;
}

.link_area {
    padding: 40px 0;
}

.art01 {
    padding: 60px 0;
}

.water02_div1 {
    margin-top: 60px;
}
	

.water02_div2 .title1{
	padding:0 20px;
}

.water02_div2 .text1{
	padding:0 20px;
}

.water02_div21 .title2 {
    max-width: 130px;
    padding-right: 30px;
    font-size: 1.8rem;
}

.water03_list1 li .flex{
	flex-direction:column;
}
	
.water03_list1 li .flex .img{
	width:100%;
	max-width:initial;
	margin:0 auto 30px;
}

.water03_list1 li .flex .text_area {
    max-width: initial;
    width: 100%;
}

.slider_img {
	overflow:scroll;
	padding:0 20px;
}

.water02_div21 .img.img1{
	width: 841px;
}

.water02_div21 .img.img2{
	width: 1053px;
}
	
.water02_div21 .img{
	padding:0;
}

.com01 .inner{
	flex-direction: column;
}

.com01 .l_col{
	width: 100%;
	border: 1px solid #707070;
	padding: 10px 3% 15px;
	position:static;
	top: 100px;
	display: flex;
	flex-wrap:wrap;
	align-items: flex-start;
}

.com01 .l_col a{
	padding: 0 0 0 25px;
	width: 50%;
}

.com01 .ri_col{
	width: 100%;
	margin-top: 50px;
}

.att01 .box_list{
	flex-direction: column;
}

.att01 .box_list li{
	width: 100%;
	padding: 35px 4%;
}

.cc02_div1 .box .list ul{
	flex-direction: column;
}

.cc02_div1 .box .list li{
	width:100%;
	padding: 20px 4% 35px;
	margin: 0 0 20px;
}

.cc02_div1 .fl_list li span{
	position: absolute;
	display: block;
	width: 60px;
	height: 60px;
	background:#01B4BA;
	font-size:2.7rem;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50px;
	left: -20px;
	top: -20px;
}

.cc02_div1 .txt_box .list02{
	flex-direction: column-reverse;
}

.cc02_div1 .txt_box .list02 h5{
	font-size: 1.8rem;
	margin-bottom: 10px;
	line-height: 1.8;
}

.cc02_div1 .txt_box .list02 ul{
	width: 100%;
}

.cc02_div1 .txt_box .list02 li{
	margin-top: 60px;
}

.cc02_div1 .txt_box .list02 li:first-child{
	margin-top: 0;
}

.cc02_div1 .txt_box .list02 .img{
	width: 100%;
	text-align: center;
	max-width: 100%;
	margin-bottom: 30px;
}

.ene02_div1 .inner{
	width: 100%;
}

.circle_item {
	width: 260px;
	height: 260px;
	font-size: 1.4rem;
}

.build02_div3 .title,.l_div .title{
	text-align:left;
	font-size:2.2rem;
}

.ene02_div3 .txt_box dt{
	font-size: 2.2rem;
}

.ene02_div4 .list{
	flex-direction: column;
}

.ene02_div4 .list .box{
	width: 100%;
	max-width: 534px;
	margin: 0 auto;
}

.equ02_div2 ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
	flex-direction: column;
}
 
.equ02_div2 ul > li {
	width: 100%;
	padding: 28px 0;
	box-sizing: border-box;
}

.equ02_div2 ul > li:nth-child(odd) {
	padding-right: 0%;
}

.equ02_div2 ul > li:nth-child(even) {
	padding-left: 0%;
}

.equ02_div2 ul > li:nth-child(odd)::after {
	display: none;
}

.equ02_div2 ul > li:first-child {
	border-bottom: 1px solid #707070;
}

.ren02_div1 ul{
	flex-direction: column;
}

.ren02_div1 ul li{
	width: 100%;
	border: 2px solid #01B4BA;
	border-radius: 10px;
	padding: 30px 2% 40px;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: #fff;
}


.ren02_div3 .list{
	flex-direction: column;
}

.ren02_div3 .list .box{
	max-width: 538px;
	margin: 0 auto;
}

.hygiene_card_list {
	flex-direction: column;
}
 
.hygiene_card_list > li {
	width: 90%;
	margin: 0 auto;
}

.hygiene_building_list > li {
	width: calc((98% - 48px) / 2);
}

.hygiene_std_list {
	flex-wrap: wrap;
}

.lawn02_div1 ul {
    display: flex;
    justify-content: center;
    gap: 30px 6%;
    flex-wrap: wrap;
}

.lawn02_div1 li {
    text-align: center;
    font-size: 2rem;
    font-weight: 600;
    width: 37%;
}

.lawn03 .inner {
    flex-direction: column;
}

.lawn03 .inner .text_area {
    width: 100%;
    max-width: 610px;
    margin: 0 auto;
}
.lawn03 .inner .img {
    width: 100%;
    max-width: 460px;
    margin: 40px auto 0;
}

.fukidashi_text {
    font-size: 1.8rem;
}

.cons02_div2 ul {
    flex-direction: column;
}

.cons02_div2 li{
	margin-top: 40px;
	/* max-width: 300px; */
	width: 90%;
	margin: 60px auto 0;
}

.cons02_div2 li:first-child{
	margin-top: 0;
	padding: 15px 5%;
}

.cons02_div2 ul > li p {
    font-size: 2.2rem;
}

.cons02_div2 ul > li .c_tl {
    top: -5px;
}
.cons02_div2 ul > li .c_tr {
    top: -5px;
}
.cons02_div2 ul > li .c_bl {
    bottom: -5px;
}
.cons02_div2 ul > li .c_br {
    bottom: -5px;
}

.cons02_div2 {
    margin-top: 40px;
}

.cons02_div4 .box {
    flex-direction: column;
}
.cons02_div4 .text_area {
    width: 100%;
    max-width: 628px;
}
.cons02_div4 .img {
    width: 100%;
    margin: 20px 0;
}

.cons02_div4 .inner {
    margin: 0 auto;
}

.contact_tb th{
	padding:10px 0 5px;
}

.contact_tb td{
	padding:0 0 10px;
}
	
.contact_tb th, .contact_tb td{
	display:block;
	width:100%;
}

.send_btn {
    max-width: 250px;
}

.send_btn:before{
	right:25px;
}

.clearForm, .clearForm2, .toHome{
	padding-left:25px;
}

.tel_btn.cont_tel_btn{
	padding: 20px;
}

.tel_btn.cont_tel_btn .left .text1{
	font-size:1.8rem;
}

.tel_btn.cont_tel_btn .left{
	max-width: initial;
	width: 100%;
}

.tel_btn.cont_tel_btn .left .text2 {
	font-size: 3.8rem;
	margin-top: 10px;
}

.tel_btn.cont_tel_btn .left .text2 span {
	display: block;
	font-size: 1.8rem;
	line-height: 1.222;
}

.tel_btn.cont_tel_btn .right {
	max-width: initial;
	width: 100%;
	padding-bottom: 0px;
	margin-top: 10px;
}

    .tel_btn.cont_tel_btn .right .text1 {
        max-width: 177px;
        font-size: 1.6rem;
        padding: 4px 0 4px;
        border-radius: 19px;
    }

    .tel_btn.cont_tel_btn:before {
        right: 10px;
		display:block;
    }

.rec_div {
    padding: 10px 0;
    font-size: 2rem;
}

.recruit01 {
    padding: 80px 0 0;
}

    .rec01_text1 {
        padding-left: 0;
        font-size: clamp(2.2rem, 4vw, 3.2rem);
        width: 94%;
        padding:10px;
        padding-left:5%;
    }

.rec01_div {
    margin-top: 60px;
}
	
.rec01_div1 .flex{
	flex-direction:column-reverse;
}

.rec01_div1 .flex .text_area{
	max-width:initial;
	width:100%;
	position:initial;
}

.rec01_div1 .flex .img_area{
	width:100%;
	margin:40px auto 0;
}

.rec01_text2{
	position:initial;
	margin-top: 40px;
	width: 95%;
	max-width: max-content;
	margin-left: auto;
	padding-right: 20px;
}

.rec01_div2 {
    padding: 10% 0;
    margin: 60px auto 0;
}

.recruit01 .sou1{
	top:-5%;
}

.recruit01 .sou2{
	top: auto;
	bottom: -5%;
}


.rec02_div {
    padding: 40px 20px;
}

.rec02_div .title_area{
	flex-direction:column;
	margin-bottom:30px;
	align-items: flex-start;
}


.rec02_div .title_area .title{
	margin-right:0;
	margin-bottom:20px;
}


.rec02_list1{
	flex-wrap:wrap;
	justify-content:space-between;
}

.rec02_list1 li{
	margin-right:0!important;
	width:48%;
}

.rec02_list1 li .text_area{
	width: 25vw;
	height: 25vw;
	font-size: clamp(1.6rem, 3vw, 2rem);
}
	
.recruit02 {
    padding: 80px 0;
}

.recruit02 .sou1{
	top:auto;
	bottom:-5%;
}

.rec03_list1{
	flex-wrap:wrap;
}

.rec03_list1 li{
	width:48%;
	max-width: initial;
}

.rec03_list1 li a .text_area{
	bottom:10px;
}

.rec03_list1 li a .text_area .text1 span{
	padding:5px 10px;
}

.recruit04 {
    padding: 80px 0 0;
}

.rec_tit03_area {
    margin-bottom: 40px;
}

.recruit05{
    padding: 80px 0;
}

.recruit06 {
    padding: 80px 0;
}

.recruit06 .title {
    margin: 40px auto;
    font-size: clamp(1.8rem, 3.4vw, 2.8rem);
}

.recruit06 .flex {
	flex-direction:column-reverse;
}

.recruit06 .flex .text_area{
	max-width: initial;
	width: 100%;
}

.recruit06 .flex .img{
	width: 100%;
	margin:0 auto 30px;
}

.btn5{
	margin: 120px auto 0;
	font-size: 2rem;
	height: 70px;
	padding-left: 20px;
}

.btn5:before{
	right:20px;
}

.recruit07 {
    padding: 80px 0;
}

.busi01 {
    padding: 80px 0;
}

.busi01_div{
}
	
.busi01_div .text_area{
	width: 66%;
}
	
.busi01_div .img1{width: 25%;left: -3%;top: 0%;max-width: 160px;}
	
.busi01_div .img2{
	width:100%;
	margin: 15% auto 0;
	max-width: 550px;
}

.busi01_div .text_area .title {
    font-size: clamp(2.8rem, 6vw, 4.2rem);
}
	
.busi01_div .text_area .text{font-size: clamp(1.8rem, 2.9vw, 2.2rem);margin-top: 10px;}


.busi01_ank{
	margin:60px auto 0;
	flex-wrap:wrap;
}
	
.busi01_ank li{
	width:48%;
	margin-top:20px;
	max-width: initial;
}

.busi01_ank li a{
	height:70px;
	font-size: clamp(1.6rem,4vw,2rem);
}

.busi01_div1{
	padding: 0 0 35%;
}

.busi01_div11 {
    width: 100%;
    padding: 30px 20px;
}

.busi01_div1:before{
	left: -3%;
	max-height: initial;
	height: 40vw;
}


#id2.busi01_div1:before{
	right: -3%;
}

#id4.busi01_div1:before{
	right: -3%;
}

.busi01_div11 .left {
    width: 50px;
    margin-right: 10px;
}

.busi01_div11 .right{
	padding-right:0;
}

.btn_flex{
	flex-direction:column;
	margin: 30px auto 0;
}

.btn6{
	width:100%;
	height: 70px;
	font-size:2rem;
	margin: 20px auto 0;
}

.voice01_div1{
	flex-direction:column;
	padding:30px 20px;
}
	
.voice01_div1 .img{
	margin:0 auto 30px;
	width:100%;
	max-width: 400px;
}


.voice01_div1 .text_area{
	width:100%;
	max-width:initial;
}

	
.voice01_div1 .text_area .name{
	position:initial;
	margin:0 0 20px;
}
	
.voice01_list1 li .quest{
	font-size:1.8rem;
}

.voice01_div {
    margin-bottom: 60px;
	flex-direction:column;
}

.voice01_div .title {
    width: 100%;
    max-width: 400px;
}
	
.voice01_div .img {
    width: 100%;
    margin-left:auto;
    max-width: 400px;
}

.voice01 {
    padding: 80px 0;
}

.contact01.entry01 .bottom .title {
    margin-bottom: 30px;
}

.detail_area {
    padding-bottom: 50px;
}

.news01 .news_list1 li .cont .cate{
	font-size: 1.4rem;
	margin-right: 20px;
}

.news01 .news_list1 li .date{
	font-size: 1.6rem;
	margin-bottom: 6px;
}

.news01 .news_list1 li {
    padding: 30px 0 10px;
}
	.mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0px;
}

.company02_div{
	flex-direction:column-reverse;
}

.company02_div .text{
	max-width:initial;
	width:100%;
	margin:30px auto 0;
}

.company02_div .img{
	width:100%;
}


.att01 .box .co3_enkaku_list li{
	flex-direction:column;
	margin-bottom:8px;
}

.att01 .box .co3_enkaku_list li .left{
	width:100%;
	margin-bottom: 2px;
}

.ren02_div3 .box p{
	font-size: 1.6rem;
}	


.co2_list2 li a{
	font-size: clamp(1.4rem,3vw,1.8rem);
}

.rec07_tab li {
    width: 49%;
    font-size: clamp(1.2rem, 2.4vw, 1.6rem);
}


.rec07_tb th{
	width:100%;
	background:#01406D;
	color:#fff;
	border-bottom:none;
	display:block;
	border-right:1px solid #01406D;
	border-left:1px solid #01406D;
	padding:16px 20px;
}

.rec07_tb td{
	width:100%;
	background:#fff;
	border-bottom:1px solid #01406D;
	border-left:1px solid #01406D;
	display:block;
	padding:16px 20px;
}
	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 591px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc2, .pcTel {
	display: none;
}

.sp2 {
	display: block;
}

.spTel  {
	display: inline;
}


/*-- テーブル --*/

table {
	width: 100%;
}


/*-- ページトップ --*/

#pageTop {
	display: none !important;
}


/* フッター
----------------------------------------------------------- */

.sp nav {
	margin: 0 auto;
}




.btn1{
	height: 30px;
	font-size: 1.4rem;
}

.build02_div3 .title{font-size: 2.2rem;padding: 10px;padding-right: 20px;}


.com01 .box th{
	width: 100%;
	padding-bottom: 5px;
	padding-top: 15px;
	display: block;
	font-weight: bold;
}

.com01 .box td{
	width: 100%;
	padding-bottom: 15px;
	display: block;
	border-bottom: 1px solid #707070;
}

.com01 .fl_box{
	display: flex;
	justify-content: space-between;
}

.com01 .fl_box .img{
	width: 35%;
}

.com01 .fl_box dl{
	width: 61.5%;
}

.com01 .fl_box{
	flex-direction: column;
}

.com01 .fl_box .img{
	width: 100%;
	text-align: center;
	margin-bottom: 20px;
}

.com01 .fl_box dl{
	width: 100%;
}

.cc02_div1 .fl_list ol{
	flex-direction: column;
}

.cc02_div1 .fl_list li{
	width: 100%;
	padding: 2%;
}

.cc02_div1 .fl_list li .img{
	margin: 0 0 10px 0;
}

.cc02_div1 .dl_box h4{
	font-size: 1.8rem;
	text-align: center;
	margin: 0 0 17px 0;
}


.circle_item {
	width: 360px;
	height: 360px;
	font-size: 1.4rem;
	margin: -60px 0 0 0;
}

.circle_list li:first-child {
	margin: 0px 0 0 0;
}

.circle_list li:last-child {
	margin: -60px 0 0 0;
}

.circle_wrap {
	padding: 0;
}

.link_area.col2 .inner{
	flex-direction: column;
	gap: 20px;
}

.lawn02_div1 li {
    width: 45%;
}

.cons02_div4 .gray_bg {
    padding: 15px 3%;
}

.lawn04 h3 {
	margin-bottom: 10px;
}

.rec02_list1 li{
	width:100%;
	margin: 20px auto 0!important;
}

.rec02_list1 li:last-child {
	margin: 20px auto 0!important;
}

.rec02_list1 li .text_area{
	width: 40vw;
	height: 40vw;
	font-size: clamp(1.8rem, 3vw, 2rem);
}

    .busi01_div .img1 {
        width: 27%;
 }




.com01 .l_col a{
	width: 45%;
}
	
.com01 .l_col a:nth-child(2n+2){
	width: 55%;
}
	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 591px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 414px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.ene02_div3 .txt_box dt{
	font-size:1.9rem;
}

.fukidashi_text {
    font-size: 1.6rem;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 414px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 320px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 320px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

.fade_up{
	opacity: 0;
}

/* フェードインのCSS */
.active .fade_up,
.active.fade_up {
	animation: fade_up 1s ease-in forwards;
	}
  
  @keyframes fade_up{
	from {
	  opacity: 0;
	  transform:translate3d(0, 70px, 0);
	}
	to {
	  opacity: 1;
	  transform:translateZ(0);
	}
  }


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 768px) {

	/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	@keyframes fade_up{
		from {
		  opacity: 0;
		  transform:translate3d(0, 40px, 0);
		}
		to {
		  opacity: 1;
		  transform:translateZ(0);
		}
	  }
	
	/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
	
	} /* max-width: 768px ここまで */
	
	/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */