@charset "UTF-8";
/* CSS Document */
a{ transition: .3s;}
/*a:hover{ opacity: .8;}*/


/* メイン */
.main_image_box .top_menu a:hover{ background-color: #f0f7f4;}
.main_image_box .top_menu a:first-child:hover{ opacity: .8;}
@media (min-width: 768px) {
	.main_image_box{ width: 100%; margin: 80px 0 0 0; position: relative;}
    .main_image_box .main_image{ position: relative;}
	.main_image_box .main_image img{ width: 100%; height: auto;}
    .main_image_box .main_image p{ font-size: 48px; color: #fff; font-weight: bold; text-shadow: 0px 0px 7px rgba(0, 0, 0, 1); text-align: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%;}
    .main_image_box .main_image .contact_btn{ background: #f37d0a; position: absolute; top: 20px; right: 20px; text-align: center; font-size: 22px; padding: 5px 20px; border-radius: 5px; color: #fff; font-weight: bold; display: block; transition: .2s;}
    .main_image_box .main_image .contact_btn:hover{ opacity: .85;}
	.main_image_box .top_menu{ position: relative; top: -75px; display: flex; justify-content: space-between; width: 1244px; height: 150px; margin: 0 auto; border: 2px solid #0d8929; background-color: #fff; border-radius: 5px; font-weight: bold;}
	.main_image_box .top_menu a{ display: flex; justify-content: center; align-items: center; width: 207px; font-size: 25px; border-right: 2px solid #0d8929; position: relative; text-align: center;}
	.main_image_box .top_menu a::after{ content: ""; width: 0; height: 0; border-style: solid; border-width: 0 0 16px 16px; border-color: transparent transparent #0d892a transparent; position: absolute; bottom: 5px; right: 5px;}
	.main_image_box .top_menu a:first-child{ background-color: #0d892a; color: #fff;}
    .main_image_box .top_menu a:first-child::after{ border-color: transparent transparent #fff transparent;}
	.main_image_box .top_menu a:last-child{ border-right: 0px solid #0d8929;}
}
@media (max-width: 767.98px) {
	.main_image_box{ width: 100%; margin: 60px 0 0 0; padding: 0 20px; position: relative;}
    .main_image_box .main_image{ margin: 0 -20px; height: 365px; overflow: hidden; position: relative; display: flex; justify-content: center;}
	.main_image_box .main_image img{ width: auto; height: 100%;}
    .main_image_box .main_image p{ font-size: 25px; color: #fff; font-weight: bold; text-shadow: 0px 0px 7px rgba(0, 0, 0, 1); text-align: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%;}
    .main_image_box .main_image .contact_btn{ background: #f37d0a; position: absolute; top: 10px; left: 10px; text-align: center; font-size: 12px; padding: 5px 20px; border-radius: 5px; color: #fff; font-weight: bold; display: block;}
	.main_image_box .top_menu{ position: relative; top: -37px; display: flex; justify-content: space-between; flex-wrap: wrap; width: 100%;  margin: 0 auto; border: 2px solid #0d8929; background-color: #fff; border-radius: 5px; font-weight: bold; text-align: center; line-height: 1.2em;}
	.main_image_box .top_menu a{ display: flex; justify-content: center; align-items: center; flex-wrap: wrap; width: 207px; font-size: 0.9rem; position: relative; height: 83px;}
	.main_image_box .top_menu a::after{ content: ""; width: 0; height: 0; color: #0d892a; border-style: solid; border-width: 0 0 14px 14px; border-color: transparent transparent #0d892a transparent!important; position: absolute; bottom: 5px; right: 5px;}
/*
	.main_image_box .top_menu a:first-child{ width: 100%; background-color: #0d892a; color: #fff; height: 35px;}
	.main_image_box .top_menu a:nth-child(2),.main_image_box .top_menu a:nth-child(3),.main_image_box .top_menu a:nth-child(4){ width: 33.3%; border-bottom: 2px solid #0d892a;}
	.main_image_box .top_menu a:nth-child(5),.main_image_box .top_menu a:nth-child(6){ width: 50%;}
	.main_image_box .top_menu a:nth-child(2),.main_image_box .top_menu a:nth-child(3),.main_image_box .top_menu a:nth-child(5){ border-right: 2px solid #0d892a;}
*/
    .main_image_box .top_menu a{ width: 33.3%; border-right: 2px solid #0d892a; border-bottom: 2px solid #0d892a;}
    .main_image_box .top_menu a:nth-child(3),.main_image_box .top_menu a:nth-child(6){ border-right: none;}
    .main_image_box .top_menu a:nth-last-child(-n+3){ border-bottom: none;}
    .main_image_box .top_menu a:first-child{ background-color: #0d892a; color: #fff;}
    .main_image_box .top_menu a:first-child::after{ border-color: transparent transparent #fff transparent!important;}
}


/* 各種点検 */
.business_flex .business_flex_content:hover img{ transform: scale(1.1);}
.business_flex .business_flex_content img{ transition: .4s;}
@media (min-width: 768px) {
    .business_title{ width: 1240px; margin: 0 auto;}
    .business_p{ font-size: 19px; text-align: center; margin-bottom: 60px;}
	.business_box{ width: 1240px; background-color: #f1f8f5; margin: 0 auto; padding: 60px 130px 60px; position: relative; top: -25px;}
	.business_box::after{ content: ""; clip-path: polygon(77% 0, 100% 0%, 23% 100%, 0 100%); background-color: #69b67a; display: inline-block; width: 434px; height: 100%; position: absolute; bottom: 0; z-index: 1; right: 38px;}
	.business_box::before{ content: ""; clip-path: polygon(92% 0, 100% 0%, 8% 100%, 0 100%); background-color: #0ca739; display: inline-block; width: 364px; height: 100%; position: absolute; bottom: 0; z-index: 1; right: 160px;}
	
	.business_flex{ display: flex; flex-wrap: wrap; justify-content: center; z-index: 2; position: relative; gap: 50px;}
	.business_flex .business_flex_content{ width: calc( 50% - 25px ); background-color: #fff; border-radius: 5px; overflow: hidden;}
	.business_flex .business_flex_content img{ width: 100%; border-radius: 5px 5px 0 0;}
	.business_flex .business_flex_content>div{ padding: 20px 25px; height: 170px; position: relative; background: #fff;}
	.business_flex .business_flex_content>div h3{ font-size: 20px; margin: 0 0 12px 0;}
	.business_flex .business_flex_content>div .content1{ margin: 0 0 12px 0; font-size: 15px; letter-spacing: 0.03em; line-height: 1.5em;}
	.business_flex .business_flex_content>div .content2{ margin: 0; font-size: 14px; color: #0d892a;}
	.business_flex .business_flex_content>div .yajirushi{ width: 30px; height: 30px; display: flex; justify-content: center; align-items: center; border: 1px solid #c2cbcb; border-radius: 50%; margin: 0 0 0 auto; position: absolute; right: 9px; bottom: 9px;}
	.business_flex .business_flex_content>div .arrow{ width: 12px; height: 12px; border: 2px solid; border-color: #0d892a #0d892a transparent transparent; transform: rotate(45deg); position: relative; left: -3px;}
	
}
@media (max-width: 767.98px) {
    .business_p{ font-size: 15px; text-align: center; margin-bottom: 20px;}
    .business_box{ margin: -23px 20px 0; padding: 33px 20px 20px; background-color: #f1f8f5; border-radius: 5px;}
    .business_flex .business_flex_content{ display: block; margin-bottom: 20px; border-radius: 5px; overflow: hidden;}
    .business_flex .business_flex_content:last-child{ margin-bottom: 0;}
    .business_flex .business_flex_content img{ width: 100%;}
    .business_flex .business_flex_content>div{ background-color: #fff; padding: 15px 15px 30px 15px; position: relative;}
    .business_flex .business_flex_content>div::after{ content: ""; clip-path: polygon(62% 0, 100% 0%, 38% 100%, 0 100%); background-color: #D7E8D8; display: inline-block; width: 140px; height: 100%; position: absolute; bottom: 0; z-index: 1; right: 15px; opacity: .6;}
	.business_flex .business_flex_content>div::before{ content: ""; clip-path: polygon(89% 0, 100% 0%, 8% 105%, 0 100%); background-color: #BFE2C5; display: inline-block; width: 98px; height: 100%; position: absolute; bottom: 0; z-index: 1; right: 75px; opacity: .6;}
	.business_flex .business_flex_content>div h3{ font-size: 18px; margin: 0 0 12px 0; position: relative; z-index: 2;}
	.business_flex .business_flex_content>div .content1{ margin: 0 0 12px 0; font-size: 14px; position: relative; z-index: 2;}
	.business_flex .business_flex_content>div .content2{ margin: 0 0 12px 0; font-size: 12px; color: #0d892a; position: relative; z-index: 2;}
    .business_flex .business_flex_content>div .yajirushi{ width: 25px; height: 25px; display: flex; justify-content: center; align-items: center; border: 1px solid #c2cbcb; border-radius: 50%; margin: 0 0 0 auto; position: absolute; right: 15px; bottom: 15px;}
    .business_flex .business_flex_content>div .arrow{ width: 10px; height: 10px; border: 2px solid; border-color: #0d892a #0d892a transparent transparent; transform: rotate(45deg); position: relative; left: -3px;}
}


/* お知らせ */
.news_box>div:first-child a:hover{ background: #0d892a; color: #fff;}
.news_ul li a:hover{ opacity: .6;}
@media (min-width: 768px) {
	.news_box{ display: flex; width: 1162px; margin: 0 auto; padding: 100px 0;}
	.news_box>div:first-child{ width: 314px;}
	.news_box>div:first-child a{ border: 5px solid #0d892a; width: 200px; height: 60px; display: flex; justify-content: center; align-items: center; margin: 150px 0 0 0;}
	.news_box>div:last-child{ width: calc(100% - 314px);}
	.news_box>div:last-child .news_ul{ width: 667px; list-style: none; margin: 0; padding: 0;}
	.news_box>div:last-child .news_ul li{ border-top: 1px solid #e2e2e2; padding: 23px 0; position: relative;}
	.news_box>div:last-child .news_ul li::before{ content: ""; width: 110px; height: 1px; position: absolute; left: 0; top: -1px; background-color: #0d892a;}
	.news_box>div:last-child .news_ul data{ color: #0d892a;}
	.news_box>div:last-child .news_ul p{ margin: 0; text-overflow: ellipsis; overflow: hidden; white-space: nowrap;}
	
}
@media (max-width: 767.98px) {
    .news_box{ padding: 0 20px; margin: 50px 0; display: flex; flex-direction: column;}
	.news_box>div:last-child .news_ul{ list-style: none; margin: 20px 0; padding: 0;}
	.news_box>div:last-child .news_ul li{ border-top: 1px solid #e2e2e2; padding: 10px 0 15px; position: relative;}
	.news_box>div:last-child .news_ul li::before{ content: ""; width: 110px; height: 1px; position: absolute; left: 0; top: -1px; background-color: #0d892a;}
	.news_box>div:last-child .news_ul data{ color: #0d892a; font-size: 14px;}
	.news_box>div:last-child .news_ul p{ margin: 0; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; font-size: 14px;}
    .news_box>div:last-child>a{ border: 3px solid #0d892a; width: 200px; height: 60px; display: flex; justify-content: center; align-items: center; margin: 0 auto;}
}


/* 防災訓練 */
.copy_box .btn_box a:hover{ background: #fff; color: #0d892a;}
@media (min-width: 768px) {
	.copy_box{ /*width: 1480px;*/ width: 100%; height: 670px; background-color: #e3e6e3; margin: 0 auto; position: relative; display: flex; align-items: center;}
	.copy_box::after{ content: ""; clip-path: polygon(67% 0, 100% 0%, 33% 100%, 0 100%); background-color: #69b67a; display: inline-block; width: 314px; height: 670px; position: absolute; bottom: 0; z-index: 1; left: 109px;}
	.copy_box::before{ content: ""; clip-path: polygon(88% 0, 100% 0%, 12% 100%, 0 100%); background-color: #0ca739; display: inline-block; width: 240px; height: 670px; position: absolute; bottom: 0; z-index: 1; left: 60px}
	.copy_box .gray_box{ background-color: rgba(40,39,40,0.8); width: 940px; height: 400px; color: #fff; position: relative; z-index: 3; padding: 48px 68px 42px 264px; letter-spacing: 0.03em; line-height: 1.5em;}
	.copy_box .gray_box .title3{ margin: 0 0 20px 0;}
	.copy_box .gray_box .title3 h2{ margin: 0; font-size: 27px; font-weight: normal;}
	.copy_box .photo_box{ position: absolute; right: 0; top: 0; width: 60%; height: 670px; clip-path: polygon(20% 0%, 100% 0, 100% 100%, 0% 100%); background: url("../images/bousaikunren.jpg"); background-size: cover; background-repeat: no-repeat;}
	.copy_box .btn_box{ display: flex; margin: 32px 0 0 0;}
	.copy_box .btn_box a{ background-color: #0d892a; color: #fff; display: flex; justify-content: center; align-items: center; width: 250px; height: 50px; border-radius: 50px; border: 2px solid #0d892a;}
	.copy_box .btn_box a:last-child{ margin: 0 0 0 27px;}
}
@media (max-width: 767.98px) {
    .copy_box{ width: 100%; background-color: #e3e6e3; margin: 170px auto 50px; position: relative; font-size: 14px; display: flex; flex-direction: column-reverse;}
	.copy_box .gray_box{ background-color: rgba(40,39,40,0.8); width: 95%; color: #fff; position: relative; z-index: 3; padding: 20px; margin: -60px 0 20px 0;}
	.copy_box .gray_box .title3 h2{ margin-bottom: 15px; font-size: 18px; font-weight: normal;}
	.copy_box .btn_box{ margin: 20px 0 0 0;}
	.copy_box .btn_box a{ background-color: #0d892a; color: #fff; display: flex; justify-content: center; align-items: center; width: 80%; height: 50px; border-radius: 50px; margin: 0 auto; border: 2px solid #0d892a;}
	.copy_box .btn_box a:last-child{ margin-top: 15px;}
	.photo_box{ width: 95%; overflow: hidden; z-index: 2; margin: -100px 0 0 auto;}
    .sp_photo img{ width: 100%;}
    .sp_line_box{ position: absolute; bottom: 0; right: 0; width: 100%; height: calc( 100% - 162px ); overflow: hidden;}
/*
    .sp_line_box::after{ content: ""; clip-path: polygon(72% 0, 100% 0%, 28% 100%, 0 100%); background-color: #69b67a; display: inline-block; width: 290px; height: 100%; position: absolute; bottom: 0; z-index: 1; right: 0px;}
	.sp_line_box::before{ content: ""; clip-path: polygon(94% 0, 100% 0%, 7% 100%, 0 100%); background-color: #0ca739; display: inline-block; width: 225px; height: 100%; position: absolute; bottom: 0; z-index: 1; right: 87px}
*/
    .sp_line_box::before{ content: ''; background: url("../images/line_sp2.svg"); background-position: top right; background-size: 80%; background-repeat: no-repeat; width: 100%; height: 100%; position: absolute; top: 0; right: 0;}
}


/* 資格 */
@media (min-width: 768px) {
	.qualification_box{ display: flex; width: 1162px; margin: 0 auto; padding: 100px 0 70px;}
	.qualification_box>div:first-child{ width: 254px; border-right: 4px solid #69b67a;}
	.qualification_box>div:first-child a{ border: 5px solid #0d892a; width: 200px; height: 60px; display: flex; justify-content: center; align-items: center; margin: 150px 0 0 0;}
	.qualification_box>div:last-child{ width: calc(100% - 254px); margin: 0 0 0 65px; padding: 15px 0 10px 0;}
	.qualification_box>div:last-child .qualification_flex{ display: flex; line-height: 1.8;}
	.qualification_box>div:last-child .qualification_flex>div:first-child{ width: 400px;}
	
}
@media (max-width: 767.98px) {
    .qualification_box{ padding: 0 20px; font-size: 15px;}
    .qualification_box>div:last-child{ border-top: 2px solid #69b67a; padding-top: 15px;}
    .qualification_box>div>span{ display: block; text-align: center; margin: 10px 0 5px;}
    .qualification_flex{ display: flex; justify-content: space-between;}
    .qualification_flex>div{ width: calc( 50% - 5px );}
}


/* 当社について */
.about_box{ position: relative;}
.about_inner{ position: relative;}
.about_a{ background: #0d892a; color: #fff!important; display: flex; justify-content: center; align-items: center;}
@media (min-width: 1101px){
.about_inner>div{ padding: 60px 80px; width: 50%;}
}
@media (min-width:901px) and ( max-width:1100px) {
.about_inner>div{ padding: 60px 60px 60px 20px; width: 40%;}
}
@media (min-width:768px) and ( max-width:900px) {
.about_inner>div{ padding: 60px 20px; width: 30%;}
}
@media (min-width: 768px) {
.about_box{ margin: 30px 0 180px;}
.about_box:before{ content: ''; background: #d9dcd9; height: 90%; width: 100%; position: absolute; bottom: -70px;}
.about_inner{ background: #f0f7f4; width: 1240px; margin: 0 auto; letter-spacing: 0.03em; line-height: 1.5em; z-index: 1;}
.about_inner>div{ }
.about_inner>div>p{ margin: 30px 0;}
.about_inner .title1 h2{ font-size: 40px; margin-left: -5px;}
.about_img{ position: absolute; right: 0; bottom: -70px; width: 50vw; height: calc( 100% ); overflow: hidden; z-index: 3;}
.about_line{ position: absolute; right: 0; bottom: -70px; width: 50vw; height: calc( 100% );}
.about_line:before{ content: ''; border: 2px solid #0d892a; position: absolute; bottom: -20px; left: -20px; width: 100%; height: 100%; z-index: 2;}
.about_img>img{ width: 100%; height: 100%; object-fit: cover; object-position: center;}
.about_a{ width: 250px; height: 50px; border-radius: 50px;}
.about_line2{ height: 90%; width: auto; position: absolute; bottom: -70px; left: 0;}
}
@media (max-width: 767.98px) {
.about_box{ margin: 20px 0 50px;} 
/*.about_inner>div:before{ content: ''; border: 2px solid #0d892a; position: absolute; bottom: -30px; left: -5%; width: 100%; height: 100%; z-index: -1;}*/
.about_inner>div:after{ content: ''; background: url("../images/line_sp.svg"); background-repeat: no-repeat; width: 100%; height: 100%; position: absolute; top: 0; right: 0; background-position: right; opacity: .4;}
.about_inner:before{ content: ''; background: #d9dcd9; height: 85%; width: 100%; position: absolute; bottom: 0px; right: 0; z-index: -2;}
.about_inner>div{ background: #f0f7f4; margin-left: 10%; padding: 25px 25px 30px 25px; position: relative;}
.about_inner>div>p{ margin: 20px 0; font-size: 14px;}
.about_img>img{ width: 100%;}
}




.link_a{ position: relative; font-weight: 500; transition: .3s; color: #fff!important; background: #0d892a;}
.link_a:hover{ background: none; color: #0d892a!important;}

@media (min-width: 768px) {
.link_a{ border: 2px solid #0d892a; padding: 10px 60px 10px 30px; display: block; width: 220px; text-align: center; margin: 30px 0 0 0; border-radius: 40px;}
.link_a>.yajirushi1{ position: absolute; right: 10px; top: 0; bottom: 0; margin: auto 0;}
.link_a_about{ width: 265px;}
.mt_15{ margin-top: 15px;}
}
@media (max-width: 767.98px) {
.link_a{ border: 2px solid #0d892a; padding: 10px 50px 10px 30px; display: block; width: fit-content; margin: 15px auto 0; border-radius: 40px; z-index: 1; font-size: 14px;}
.link_a:active{ background: #0d892a; color: #fff!important;}
.link_a>.yajirushi1{ position: absolute; right: 10px; top: 0; bottom: 0; margin: auto 0;}
.link_a_about{ width: 230px;}

}

/* 矢印 */
.yajirushi1{ display: flex; justify-content: center; align-items: center; border: 1px solid #c2cbcb; border-radius: 50%; margin: 0 0 0 auto; position: absolute; background: #fff;}
.arrow1{ border: 2px solid; border-color: #0d892a #0d892a transparent transparent; transform: rotate(45deg); position: relative;}
@media (min-width: 768px) {
.yajirushi1{ width: 30px; height: 30px;}
.arrow1{ width: 12px; height: 12px; left: -3px;}
}
@media (max-width: 767.98px) {
.yajirushi1{ width: 20px; height: 20px;}
.arrow1{ width: 8px; height: 8px; left: -2px;}
}

/*  */
@media (min-width: 768px) {
footer{ background: #fff;}
}
@media (max-width: 767.98px) {}


/*  */
@media (min-width: 768px) {}
@media (max-width: 767.98px) {}
