@charset "utf-8";
/**
透明
filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
グラデ
background: -moz-linear-gradient(top,  
	rgba(60,100,50,0.5),  
	#066);
background: -webkit-gradient(linear, left top, left bottom,  
	from(rgba(60,100,50,0.5)),  
	to(#066));
シャドウ
	-moz-box-shadow: 10px 10px 10px rgba(0,0,0,0.4);
	-webkit-box-shadow: 10px 10px 10px rgba(0,0,0,0.4);
	-o-box-shadow: 10px 10px 10px rgba(0,0,0,0.4);
	-ms-box-shadow: 10px 10px 10px rgba(0,0,0,0.4);
角丸
	border-radius: 10px;          
	-webkit-border-radius: 10px;    
	-moz-border-radius: 10px;   

*/

@font-face{
font-family: 'my_font';
  src: url('font/mplus-2c-regular.ttf') format('truetype');}
  
  
.wf-sawarabimincho { font-family: "Sawarabi Mincho"; }
/*-------------------------------------------------*/
/*HTML5 Doctor Reset Stylesheet*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
body {
line-height:1;
font-family: europa,'M PLUS 1p', sans-serif;
-webkit-font-smoothing: antialiased;
font-smoothing: antialiased;
font-weight: 400;
color: #1a1a1a;

}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}
nav ul { list-style:none;}
blockquote, q { quotes:none;}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	text-decoration: none;
	color: inherit;
}
 
/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}
 
/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}
del { text-decoration: line-through;}
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
 
/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
input, select { vertical-align:middle;}

/*-------------------------------------------------*/
/*全体設定*/
.clearfix {width:100%;}
.clearfix:after {
  content: ""; 
  display: block; 
  clear: both;
 }

.sp_only { display:none;}
#wrapper {
	width:100%;
}

p:not(.not){
    font-family: "my_font";
    transform: rotate(0.1deg);
    line-height: 1.4;
    font-size: 18px;
}


/*-------------------------------------------------*/
/*ヘッダー*/
header {
width:100%;
background:url(../images/back01.png);
min-width:1200px;
position: fixed;
z-index: 1010;
height: 85px;
}
header:before {
content: "";
display: block;
width:100%;
height: 85px;
background: rgba(255,255,255,0.7);
z-index: 100;
}
#headinner { 
width: 1200px;
margin: 0 auto;
}
.toplogo {
width: 335px;
margin: 10px;
z-index: 110;
position: absolute;
top: 0;
}
nav:not(.pagination-container) {
position: absolute;
font-size: 0;
right: 0;
top: 0;
transform: rotate(0.05deg);
}
nav a{
display: inline-block;
text-align: center;
font-size: 18px;

padding: 25px 10px;
}
nav a:hover{
background: rgba(50,50,50,0.15);
transition: all 0.3s ease;
}
nav a span{
display: block;
font-size: 10.5px;
margin-bottom: 7px;
}
.nav_an {
background: #148C69;

color: #fff;
padding: 25px 20px;
}
.nav_an:hover {
background: #107458;
}
.nav_con {
background: #333;
color: #fff;
padding: 25px 20px;
}
.nav_con:hover {
background: #252525;
}

/*

*/

/*-------------------------------------------------*/
/*コンテンツ*/


/*下部のリンクバナー*/
.linkbanner {
padding: 25px 35px;
width: 1030px;
background: #fff;
border-radius: 15px;
margin: 90px auto -60px;
display: flex;
justify-content: space-between;
}
.linkbanner a {
margin: 0 5px;
}
.linkbanner a img {
height: 62px;
margin:0px 5px;
object-fit: contain;
}


@media screen and (min-width:1101px){
article {
width: 1200px;
margin: 0 auto;
padding-bottom: 100px;
background: url(../images/back_scoop.jpg) center center;
background-size: cover;
min-height:60vh; 
background-attachment: fixed;
}
}

@media screen and (max-width:1100px){
article {
width: 1200px;
margin: 0 auto;
padding-bottom: 100px;
min-height:60vh; 
background: none;
}
article:before{
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:url(../images/back_scoop.jpg) center center;
  background-size:cover;
}

}




#topbanner {
width: 1200px;
margin: 0 auto;
background: url(../images/topbanner.jpg) top center;
height: 700px;
background-size: cover;
position: relative;
z-index: 10;
}
#topbanner h1 {
position: absolute;
width: 600px;
height: 120px;
left:calc(50% - 300px);
top:calc(50% - 60px);
font-size: 37px;
font-weight: 500;
letter-spacing: 0.3em;
text-align: center;
color: #fff;
text-shadow: 0px 0px 10px rgba(0,0,0,1);
}
#topbanner h1 span {
display: block;
font-size: 58px;
letter-spacing: 0.5em;
padding-left: 0.25em;
margin-bottom: 20px;
font-weight: 400;
}

section {
width: 1100px;
margin: 50px auto 30px;
position: relative;
}
section .wide{
width: 100%;
z-index: 40;
display: block;
}
section .more{
position: absolute;
top: 0;
right:0;
width: 103px;
}

#sec_t_pol {
padding-top: 50px;
position: relative
}

#sec_t_pol > img{
width: auto;
height: 127px;
margin-top: -40px
}
#sec_t_work {
font-size: 0;
}
.sec_t_con{
margin-top: -50px
}
.sec_t_con > div{
width: 90%;

background-color: #fff;
margin-left: 20px

}

.sec_t_con > div p{
width: 48%;
font-size: 23px;
line-height: 1.6;
padding: 40px 50px 80px;
font-weight: 500
}
.sec_t_con > img{
width: 50%;
display: block;
margin-left: auto;
margin-bottom: -260px;
margin-right: -20px
}

.work_list {
margin: -50px auto 0;
width: 1059px;
display: flex;
}
.work_list h3{
font-size: 26px;
font-family: europa, sans-serif;
font-weight: 400;
font-style: normal;
margin-bottom: 30px;
position: relative;
}
.work_list h3:after{
content: "";
display: block;
background-color: #000;
width: 100px;
height: 3px;
position: absolute;
top: 40px;
left: 0;
}


.work_list p{
font-size: 16px;
margin-bottom: 20px;
    transform: rotate(0.1deg);
    font-weight: 500;
}
.work_list  div{
background-color: #fff;
padding: 20px 10px 10px
}

.work_list a {
width: 259px;
margin-right: 7px;
}
.work_list a:nth-child(4) {
margin-right: 0;
}
.work_list a img{
width: 259px;
}

#sec_t_cons {
font-size: 0;
background: #148C69;
width: 1100px;
margin: 50px auto 0;
padding: 40px 50px 40px;
}
#sec_t_cons .more{
top:40px;
right:50px;
}
.cons_list {
margin: -50px -50px 0;
}
.cons_list ul li {
display: inline-block;
width: 292px;
}
.cons_list ul li img {
width: 292px;
z-index: 10;

}
.cons_list ul li h2 {
display: block;
width: 282px;
font-size: 13px;
background: rgba(0,0,0,0.4);
margin-top: -23px;
z-index: 15;
position: absolute;
padding: 5px;
color: #fff;
font-weight: 300;
transform: rotate(0.05deg);
}

#sec_topic {
width: 1000px;
background: #fff;
padding: 10px 50px 2px;
margin: 15px auto -15px;
z-index: 55;
}
#sec_topic h2{
display: inline-block;

width: 240px;
margin-left: -25px;
font-size: 34px;
}
#sec_topic dl{
display: inline-block;
vertical-align: middle;
width: 780px;
transform: rotate(0.05deg);
}
#sec_topic dl dt{
display: inline-block;
width: 19%;
margin-bottom: 18px;
}
#sec_topic dl dt:after{
margin-left: 8px;
content: "　　　　";
text-decoration: line-through;
color: #148C69;
}
#sec_topic dl dd{
display: inline-block;
width: 70%;
margin-bottom: 18px;
}

#sec_t_news{
padding-top: 100px;
margin-top: -50px;
height: 320px;
}
#sec_t_news .news_list{
width: 1000px;
background: #fff;
padding: 50px;
margin: -50px 20px;
position: absolute;
z-index: 55;
}
#sec_t_news .news_list dl{
margin-bottom: -18px;
transform: rotate(0.05deg);
}
#sec_t_news .news_list dl dt{
display: inline-block;
width: 16%;
margin-bottom: 18px;
}
#sec_t_news .news_list dl dt:after{
margin-left: 8px;
content: "　　　　";
text-decoration: line-through;
color: #148C69;
}
#sec_t_news .news_list dl dd{
display: inline-block;
width: 75%;
margin-bottom: 18px;
}

#sec_t_news .news_list dl dd a:link{
color: #000D94;
}
#sec_t_news .news_list dl dd a:visited{
color: #000D94;
}
#sec_t_news .news_list dl dd a:hover{
color: #000D94;
text-decoration: underline;
}

#sec_t_info{
padding-top: 100px;
margin-top: -50px;
margin-bottom: 150px;
position: relative;
}
#sec_t_info .info_list{
width: 1000px;
background: #fff;
padding: 40px 50px;
margin: -50px 20px;
position: absolute;
z-index: 55;
}
#sec_t_info .info_list dl{
margin-bottom: -18px;
transform: rotate(0.05deg);
}
#sec_t_info .info_list dl dt{
display: inline-block;
width: 16%;
margin-bottom: 16px;
}
#sec_t_info .info_list dl dt:after{
margin-left: 8px;
content: "　　　　";
text-decoration: line-through;
color: #148C69;
}
#sec_t_info .info_list dl dd{
display: inline-block;
width: 75%;
margin-bottom: 16px;
}
#sec_t_info .more{
top:100px;
right:00px;
}
#sec_t_info .info_list dl dd a:link{
color: #000D94;
}
#sec_t_info .info_list dl dd a:visited{
color: #000D94;
}
#sec_t_info .info_list dl dd a:hover{
color: #000D94;
text-decoration: underline;
}





#sec_t_rec {
font-size: 0;
background-image: url("../images/k_rec_bg.png");
background-size: cover;
height: 440px;
}
#sec_t_rec .more{
top:310px;
left:170px;
}

/*ポリシー*/
#polbanner{
padding-top: 180px;
background-image: url("../images/kpol_1.png");
background-size:100% auto;
background-repeat: no-repeat;
margin-bottom:100px}


#polbanner img {

}
#sec_p_1 {
padding-top: 100px;
margin-top: -100px;
}

/*業務*/
#sec_w_1 {

margin-top: 50px;

}

#sec_w_1 #w1,#sec_w_1 #w2,#sec_w_1 #w3,#sec_w_1 #w4{
padding-top: 100px;
margin-top: -100px;
}


/*採用*/

#sec_yukyu {
width: 1000px;
border: 2px #148C69 solid;
border-radius: 10px;
background: #fff;
padding: 30px 50px;
display: flex;
justify-content: space-between;
}
#sec_yukyu div {
width: 46%;
}
#sec_yukyu p {
font-size: 18px;
}
#sec_yukyu h2 {
display: inline-block;
font-size: 30px;
text-align: center;
font-weight: 500;
}
#sec_yukyu h2 span {
font-size: 18px;
display: block;
font-weight: 300;
}
#sec_yukyu h3 {
display: inline-block;
font-size: 80px;
margin-left: 30px;
line-height: 0.8;
color: #148C69;
}
#sec_yukyu h3 span {
font-size: 52px;
}


#sec_r_2 {
padding: 60px 50px 50px;
background: #148C69;
margin-top: 40px;
}
#sec_r_2 img:nth-child(-n+4) {
margin-bottom: 50px;
}
.eigyo {
display: inline-block;
border: 1px solid #A22;
margin-left: 1em;
border-radius: 5px;
padding: 8px 10px 5px;
color: #A22;
font-size: 90%;
background: rgba(255,255,255,0.6);
}
.cont{
width: 940px;
margin: 40px auto 40px;
text-align: center;
}
#sec_r_3 .cont input:not(.fmbot),#sec_r_3 .cont textarea,
#sec_ct_1 .cont input:not(.fmbot),#sec_ct_1 .cont textarea {
width: 680px;
padding: 12px;
margin: 5px 0;
border: #ddd 1px solid;
background: #fff;
font-size: 17px;
}

#sec_r_3 .cont th,
#sec_ct_1 .cont th{
padding-right: 10px;
text-align: left;
font-size: 21px;
font-weight: 400;
line-height: 28px;
vertical-align: top;
padding: 15px 8px 0;
margin: 5px 0;
color: #148C69;
}
#sec_r_3 .cont th i,
#sec_ct_1 .cont th i{
font-size: 18px;
}

#sec_r_2 {
}
#sec_r_2 h2 {
color: #fff;
display: inline-block;
width: 550px;
font-size: 40px;
font-weight: 500;
margin-bottom: 23px;
}

#sec_r_2 .sr2_eiji {
display: inline-block;
vertical-align: bottom;
color: #fff;
width: 550px;
text-align: right;
font-size: 48px;
font-weight: 600;
letter-spacing: 0.05em;
margin-bottom: 20px;
}
#sec_r_2>div:not(.sr2_eiji) {
background: #fff;
width: 980px;
padding: 60px 60px 50px;
position: relative;
font-size: 0;
transform: rotate(0.05deg);
margin-bottom: 40px;
}
#sec_r_2 div h3 {
font-size: 34px;
font-weight: 600;
position: absolute;
top: 20px;
left: 40px;
}
#sec_r_2 div h3 span {
font-size: 26px;
}
#sec_r_2 div h3:after {
content: '';
width: 80px;
height: 80px;
display: inline-block;
left: -40px;
top:42px;
z-index: 50;
position: absolute;
background-image: url(../images/slash_o.png);
background-size: cover;
}
#sec_r_2 dl {
margin-top: 20px;
display: inline-block;
vertical-align: top;
width: 475px;
border-bottom: 1px solid #999;

}
#sec_r_2 .sr2_yokoL {
margin-right: 30px;
}
#sec_r_2 .sr2_yokoR  {
}
#sec_r_2 dl dt,#sec_r_2 dl dd {
display: inline-block;
border-top: 1px solid #999;
vertical-align: top;
font-size: 18px;
padding: 12px 0;
font-weight: 500;
}
#sec_r_2 dl dt {
width: 140px;
color: #148C69;
}
#sec_r_2 dl dd {
width: 335px;
}

.fmbot{
font-size: 21px;
margin: 50px 10px 10px;
color: white;
position: relative;
width: 200px;
padding: 14px 10px;
border-radius: 1px;
text-align: center;
background: #148C69;
border: none;
}
.fmb4 {
background: #666;
}
.bott i{
font-size: 22px;
color: #148C69;
}
.fmbot2{
width: 200px;
margin: 30px 10px 10px;
border: none;
padding: 10px 40px;
border-radius: 20px;
background: #78c3d7;
color: white;
font-weight: 800;
font-size: 16px;
}

.toikaku {
width: 1100px;
margin: 0px auto 30px;
min-height: 600px;
padding: 160px 0;
line-height: 1.6em;
}
.toikaku table {
width: 600px;
margin: 0 auto;
border-collapse: collapse;
border: 1px #b5b3a9 solid;
}
.toikaku table td {
margin: 15px auto;
padding: 15px;
border: 1px #b5b3a9 solid;
}
.toikaku .fomok {
width: 600px;
margin: 0 auto;
text-align: center;
}
.fomok a:link,.fomok a:hover,.fomok a:visited { color: white;}

#sec_r_3  .cont select {
width: 706px;
padding: 12px;
margin: 5px 0;
border: #ccc 1px solid;
background: #fff;
font-size: 17px;
}

/*施工実績*/

#sec_cs_1 {
padding-top: 100px;
margin-top: -50px!important;
}

#sec_cs_1 .cons-now,#sec_cs_2 .cons-past {
margin-bottom: -20px;
}
.cons-now {
min-height: 180px;
}
.cons-now>div {
width: 353px;
height: 490px;
display: inline-block;
margin-right: 20px;
margin-top: 10px; 
margin-bottom: 30px;
position: relative;
background: #fff;
transform: rotate(0.05deg);
}
.cons-now>div:nth-child(3n) {
margin-right: 0;
}
.cons-now>div .con_thum {
width: 353px;
}
.cons-now>div .slash {
width: 60px;
position: absolute;
z-index: 10;
left: 0;
top: 245px;
}
.cons-now>div h2 {
position: relative;
font-size: 18px;
width: 313px;
margin: 29px 20px 5px;
z-index: 15;
height: 2.2em;
}
.cons-now>div hr {
margin: 10px 20px;
width: 100px;
color: #000;
border-top: 2px solid #000;
}
.cons-now>div p {
font-size: 14px;
margin: 15px 20px 10px;
line-height: 1.4em;
}
.cons-now>div a {
display: block;
font-size: 16px;
width: 150px;
text-align: center;
background: #148C69;
color: #fff;
padding: 7px;
position: absolute;
left: 101px;
bottom: 20px;
font-weight: 200;
}

.cons-past {
min-height: 180px;
}
.cons-past>div {
width: 353px;
height: 415px;
display: inline-block;
vertical-align: top;
margin-right: 20px;
margin-top: 10px; 
margin-bottom: 30px;
position: relative;
background: #fff;
transform: rotate(0.05deg);
}
.cons-past>div:nth-child(3n) {
margin-right: 0;
}
.cons-past>div .con_thum {
width: 353px;
}
.cons-past>div .slash {
width: 60px;
position: absolute;
z-index: 10;
left: 0;
top: 250px;
}
.cons-past>div h2 {
font-size: 18px;
width: 313px;
margin: 25px 20px 5px;
}
.cons-past>div a {
display: block;
font-size: 16px;
width: 150px;
text-align: center;
padding: 7px;
position: absolute;
left: 101px;
bottom: 20px;
font-weight: 400;
border: #F0781E 2px solid;
}


/*4分割に変更　2020.5*/
.cons-past4>div {
width: 260px;
height: 330px;
display: inline-block;
vertical-align: top;
margin-right: 20px;
margin-top: 10px; 
margin-bottom: 30px;
position: relative;
background: #fff;
transform: rotate(0.05deg);
}
.cons-past4>div:nth-child(4n) {
margin-right: 0;
}
.cons-past4>div .con_thum {
width: 260px;
}
.cons-past4>div .slash {
width: 60px;
position: absolute;
z-index: 10;
left: 0;
top: 180px;
}
.cons-past4>div h2 {
font-size: 15.5px;
line-height: 1.2em;
width: 220px;
margin: 23px 20px 5px;
text-align: justify;
font-weight: 500;
}
.cons-past4>div a {
display: block;
font-size: 14px;
width: 100px;
text-align: center;
padding: 7px;
position: absolute;
left: 71px;
bottom: 20px;
font-weight: 400;
border: #F0781E 2px solid;
}


#sec_cs_1 {
margin-top: 40px;
font-size: 0;
}
#sec_cs_1 .cons_now,#sec_cs_2 .cons_past {
margin-bottom: -20px;
}
#sec_cs_1 .cons_now a,#sec_cs_2 .cons_past a {
width: 353px;
display: inline-block;
margin-right: 20px;
margin-top: 10px; 
margin-bottom: 30px;
}
#sec_cs_1 .cons_now a:nth-child(3n),#sec_cs_2 .cons_past a:nth-child(3n) {
margin-right: 0;
}
#sec_cs_1 .cons_now a img,#sec_cs_2 .cons_past a img {
width: 100%;
}
#sec_cs_2 {
padding: 60px 50px 50px;
background: #148C69;
margin-top: 60px;
font-size: 0;
height: 1950px;
position: relative;
}
#sec_cs_3 {
margin-bottom: -50px;
}
.sec_cs_3unit {
display: flex;
flex-wrap: wrap;
font-size: 0;
margin-top: 10px;
}
.sec_cs_3unit a {
width: 535px;
display: inline-block;
margin-bottom: 25px;
}
.sec_cs_3unit img {
width: 535px;
}
.sec_cs_3unit a:nth-child(2n) {
margin-left: 30px;
}




/*施工実績 詳細ページ*/
#arc_sla {
position: absolute;
top: 120px;
z-index: 300;
}
.arc_h1 {
position: absolute;
z-index: 500;
margin-left: 50px;
color: #fff;
font-weight: 300;
font-size: 35px;
top: 160px;
}
#sec_a_1 {
width: 1000px;
margin-top: -50px;
margin-bottom: -50px;
z-index: 350;
background: #fff;
padding: 50px;
transform: rotate(0.05deg);
position: relative;
}
#sec_a_1 .arc_left,#sec_a_1 .arc_right {
display: inline-block;
vertical-align: top;
}
#sec_a_1 .arc_left {
width: 432px;
}
#sec_a_1 .arc_left .arc_left_main {
width: 100%;
margin-bottom: 60px;
list-style: none;
}
#sec_a_1 .arc_left .arc_left_main li {
width: 100%;
}
#sec_a_1 .arc_left .arc_left_main li:nth-child(n+2) {
display: none;
}
#sec_a_1 .arc_left .arc_left_main img,
#sec_a_1 .arc_left .arc_left_main video{
width: 100%;
}
#sec_a_1 .arc_left .arc_left_thum {
width: 432px;
font-size: 0;
margin-bottom: -8px;
list-style: none;
}
#sec_a_1 .arc_left .arc_left_thum li {
width: 80px;
margin-right: 8px;
margin-bottom: 8px;
display: inline-block;
list-style: none;
}
#sec_a_1 .arc_left .arc_left_thum li img {
width: 80px;
}
#sec_a_1 .arc_left .arc_left_thum li:nth-child(5n) {
margin-right: 0;
}
#sec_a_1 .arc_right {
width: 511px;
margin-left: 50px;
}
#sec_a_1 .arc_right dl {
margin-bottom: 15px;
font-weight: 500;
}
#sec_a_1 .arc_right dl dt {
display: inline-block;
width: 80px;
text-align: right;
margin-bottom: 7px;
}
#sec_a_1 .arc_right dl dd {
display: inline-block;
width: 410px;
margin-bottom: 7px;
}
#sec_a_1 .arc_right .arc_right_hr {
width: 80px;
border-top: 2px solid #1a1a1a;
margin-bottom: 25px;
}
#sec_a_1 .arc_right p {
text-align: justify;
line-height: 1.3em;
font-size: 15px;
}
#sec_a_1 .arc_right .arc_right_degree {
position: absolute;
bottom: 50px;
right: 50px;
color: #148C69;
font-size: 40px;
}
#sec_a_1 .arc_right .arc_right_degree span {
font-size: 19px;
margin-right: 5px;
}


/*お知らせ一覧ページ*/
#sec_in_1 {
padding-top: 100px;
margin-top: 0px;
font-size: 0;
}

.info_kizi {
width: 1000px;
background: #fff;
padding: 50px;
margin: -50px 20px;
position:inherit;
z-index: 55;
}
.info_kizi>li {
padding-top: 90px;
margin-top: -70px;
min-height: 240px;
position:relative;
border-bottom: 1px #ccc solid;
}
.info_kizi>li:nth-child(4n-3) {
margin-top: -90px;
}
.info_kizi>li:nth-child(4n) {
border-bottom: none;
margin-bottom: -25px;
}
.info_kizi>li span {
display: block;
font-size: 15px;
width: 670px;
margin-bottom: 10px;
transform: rotate(0.05deg);
}
.info_kizi>li h3 {
font-size: 23px;
width: 670px;
margin-bottom: 25px;
transform: rotate(0.05deg);
}
.info_kizi>li p  {
font-size: 16px;
width: 670px;
line-height: 1.2em;
margin-bottom: 25px;
transform: rotate(0.05deg);
}
.info_kizi>li a {
position: absolute;
right: 0px;
top: 90px;
width: 300px;
}
.info_kizi>li a img{
width: 100%;
}

.cert_area {
background: #fff;
padding: 40px 40px 0;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 980px;
margin: -50px auto 0;
z-index: 2;
position: relative;
}
.cert_cel {
width: 450px;
margin-bottom: 60px;
}
.cert_cel h2 {
border-bottom: #148c69 2px solid; 
margin-bottom: 15px;
padding-bottom: 8px;
color: #148c69;
font-size: 21px;
}
.cert_cel p {
width: 280px;
display: inline-block;
margin-right: 20px;
vertical-align: top;
height: 200px;
line-height: 1.3em;
position: relative;
font-size: 14px;
}
.cert_cel p a {
position: absolute;
bottom: 0;
left: 0;
}
.cert_cel p a img {
width: 180px;
height: 50px;
object-fit: contain;
object-position: left bottom;
display: block;
margin-top: 30px;
}
.cert_cel .crli {
width: 145px;
display: inline-block;
vertical-align: top;
}
.cert_cel .crli img {
width: 100%;
}



/*共通*/
.btm_space {
margin-bottom: 70px;
}
.btm_space150 {
margin-bottom: 50px;
height: 180px;
}

/*会社概要*/
#sec_c_1 {
padding-top: 100px;
margin-top: -100px;
}
#sec_c_2 {
padding-top: 140px;
margin-top: -70px;
}

/*-------------------------------------------------*/
/*アサイド*/
aside {
width: 1100px;
margin: 0px auto;
padding: 50px 0;
background: #fff;
}
aside a:hover {
text-decoration: underline;
}
aside div {
width: 129px;
display: inline-block;
vertical-align: top;
border-right: 1px #666 solid;
height: 130px;
padding-top: 8px;
transform: rotate(0.05deg);
}
aside div:nth-child(n+2) {
padding-left: 5px;
padding-right: 3px;
}
aside div:first-child {
width: 240px;
font-size: 14px;
line-height: 1.35em;
}
aside div:first-child img{
width: 220px;
margin-bottom: 7px;
margin-left: -9px;
margin-top: -5px;
}
aside div a:not(.as_tel) {
display: block;
}
aside div .as_hd {
font-size: 16px;
font-weight: 500;
margin-bottom: 15px;
}
aside div .as_cld {
font-size: 12px;
font-weight: 500;
margin-bottom: 9px;
margin-left: -4px;
}

#subbanner {
}
#subbanner img {
width: 1200px;
}
.banner-age {
margin-top: -140px;
}

/*-------------------------------------------------*/
/*フッター*/

.map-embed {
width: 100%;
max-width: 1800px ;
height: 380px;
margin: 0 auto;
padding: 0 0 px ;

overflow: hidden ;
position: relative ;
top: 0 ;
left: 0 ;
background:#CCC;
}


.map-embed > div {
position: absolute ;
top: 0 ;
left: 0 ;

width: 100% ;
height: 100% ;

margin: 0 ;
padding: 0 ;
}

.map-embed img {
max-width: none ;
}

#copyright {
	color:rgba(255,255,255,0.7);
	font-size:90%;
	text-align:center;
	width: 100%;
	height: 80px;
	background: #333;
	padding-top: 20px;
}

/*-----------------表彰------------------*/

.sec_cs_3unit div.hyousyou_pice {
width: 535px;
display: inline-block;
margin-bottom: 25px;
height: 284px;
position: relative;
background: #fff;
}
.sec_cs_3unit div.hyousyou_pice:nth-child(2n) {
margin-left: 30px;
}
.hyousyou_btn{
background: #148c69;
font-size: 16px;
left: 170px;
bottom: -10px;
width: 120px!important;
z-index: 2;
position: absolute;
text-align: center;
padding: 5px 0;
color: #fff;
}


.hyousyou_link{
display: block;

font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
background-image: url("../images/h_point.png");
background-repeat: no-repeat;
background-position: top left;
background-size: 8%;
background-color: #fff;
}
.hyousyou_box{
display: flex;
justify-content: space-between;
padding: 20px 15px;
}

.hyousyou_box img{
width: 240px;
height: 168px;
object-fit: contain;
}

.hyousyou_text{
width: 67%;
padding:10px;
}
.hyousyou_text h3 span{
font-size: 13px;
}

.hyousyou_text h3{
font-size: 16px;
line-height: 1.2;
}
.border{
width: 80px;
height: 2px;
background-color: #000;
margin: 10px 0;

}
.hyousyou_text p{
font-size: 13px;
line-height: 1.4;
text-align: justify;
}



/*------追加------*/
.sec_tc_con{
padding:70px 25px;

}
#sec_p_1 h2,
.sec_tc_con h2
{
font-family: europa, sans-serif;
font-weight: 700;
font-style: normal;
color: #fff;
margin-bottom: 35px;
font-size: 75px;
position: relative;
}
.sec_tc_con h2:after{
content: url("../images/item1_w.png");
position: absolute;
bottom: -80px;
left: 0;
transform: scale(0.9);
}
#sec_p_1 h2 span,
.sec_tc_con h2 span{
font-size: 16px
}

.sec_tc_con p{
font-size: 22px;
color: #fff;
line-height: 1.6;
margin-left: 50px
}

.pol_ti{
padding-left: 100px;
color: #fff;

position: relative;
margin-top: 120px;
z-index: 1;
margin-bottom:-50px;
}
.pol_ti:before{
content: url("../images/kpol_bg.png");
position: absolute;
top:-80px;
left: 0;
z-index: -1;

}


.pol_ti h1{
font-size: 50px;
font-family: 'my_font';
font-weight: normal;
}

.pol_ti h2{
font-size:70px; 
 font-family: 'my_font';
 font-weight: normal;
}

.pol_ti h2 span{
font-size: 110px;
vertical-align: -6px;
}
.pol_text{
display: flex;
justify-content: space-between;
margin-bottom: 120px
}

.pol_text div{
width: 48%;
padding: 430px 70px  0  100px;
position: relative;
z-index: 2;
}
.pol_text div:nth-child(1):before{
content: url("../images/kpol_2.png");
position: absolute;
top: 0;
left: -50px;
z-index: -1;
transform: scale(0.85);
}
.pol_text div:nth-child(2){
margin-top: 180px;
color: #fff;
padding: 410px 100px 0  70px;
}
.pol_text div:nth-child(2):before{

content: url("../images/kpol_3.png");
position: absolute;
transform: scale(0.85);
top: 0;
right: -52px;
z-index: -1
}

.pol_text div:nth-child(1) p{
margin-bottom: 50px
}
.pol_text h4{
font-size: 22px;
margin-bottom: 20px
}

.pol_text p{
font-size: 20px;
line-height: 1.2
}

#sec_p_1 div{
background-color: #fff;
padding: 30px 50px 40px;
width: 90%;
margin: 0 auto
}

#sec_p_1 h2{
color: #000;
margin-bottom: 40px;
position: relative;
font-size: 60px;
}
#sec_p_1 h2:after{
content: url("../images/item1_g.png");
position: absolute;
left: -58px;
bottom: -80px;
transform: scale(0.8)
}
#sec_p_1 p{
font-size: 20px;
line-height: 1.4
}
#sec_p_1 p span{   
display: block;
text-align: right;
margin-top: 20px;
font-weight: 600;
}

#sec_w_1 div:nth-of-type(2n){
margin-left: auto;
margin-right: 50px;
}

#sec_w_1 div:nth-of-type(2n - 1){
    margin-left: 50px;
margin-right: auto;
}


#sec_w_1 div{
    margin-top: -70px;
    background-color:#fff;
    width: 620px;
    padding: 20px 40px 50px;
    margin-top: -50px;
    margin-bottom: 50px;
    position: relative;
    z-index: 1;
}
#sec_w_1 div h2{
    font-size: 50px;
    position: relative;
    margin-bottom: 35px;
    letter-spacing: -2px;

}
#sec_w_1 p{
    font-size: 18px;    
    line-height: 1.5;

}
#sec_w_1 div h2:after{
content: url(../images/item1_g.png);
position: absolute;
left: -50px;
bottom: -75px;
transform: scale(0.7);

}

#sec_w_1 div h2 span{
    font-size: 16px;
    margin-left: 5px;
    letter-spacing: 1px;
    transform: rotate(0.1deg);
    display:inline-block;
}

.rec_box h3{
    font-family: 'my_font';
   font-size: 40px; 
   text-align: center;
   margin-bottom: 50px;
   font-weight: 500;
   line-height: 1.6;
}

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

.rec_con div{
    width: 32%;
    background-color: #fff;
}

.rec_con div img{
    width: 100%;
    margin-bottom: 20px;
}

.rec_con div h4{
    padding: 0 18px ;
    margin-bottom: 40px;
    font-size: 22px;
    position: relative;
}
.rec_con div p{
padding: 0 18px 18px;
}

.rec_con div h4::after{
    content: url(../images/sla_01.png);
    position: absolute;
    top: -106px;
    left: -73px;
    transform: scale(0.25);
}
.rec_con div h4::before{
    content: "";
    display: inline-block;
    position: absolute;
   bottom: -20px;
   left: 20px;
    width: 100px;
    height: 3px;
    background-color: #000;
}

.rec_text h2{
    font-size: 45px;
    margin-bottom: 50px;position: relative;
}

.rec_text h2:after{
    content: url(../images/karc_2.png);
    position: absolute;
    bottom: -154px;
    left: -80px;
    transform: scale(0.4);
}

.subb_box h2 span,
.rec_text h2 span{
    font-size: 18px;
    transform: rotate(0.1deg);
    display: inline-block;
}

.rec_text div{
    justify-content: space-between;
    display: flex;
    align-items:center ;
    transform: scale(0.9);
    margin-left: -20px;
}

.rec_text p{
    margin-left: 53px;
    margin-bottom: 20px;
    font-weight: 600;
}

.subb_box{
    background-color: #fff;
    padding: 50px 60px 50px;
}

.subb_box div{
    display: flex;
    justify-content: space-between;
}
.subb_box h2{
    font-size: 43px;
    margin-bottom: 50px;position: relative;
    margin-left: -15px;

}
.en_box h2:after,
.subb_box h2:after{
    content: url(../images/item1_g.png);
    position: absolute;
    bottom: -85px;
    left: -54px;
    transform: scale(0.8);

}
.subb_box div table td{
font-family: 'my_font';
font-size: 19px;
transform: rotate(0.1deg);
font-weight: 700;
padding: 12px 0;
border-top:#999 solid 1px;
border-bottom:#999 solid 1px;
}
.subb_box div table tr td:nth-child(1){
    vertical-align:middle;
    color: #148c69;
    width: 30%;
}
.subb_box div table tr td:nth-child(2)
{
    padding-right: 20px;
}

.subb_box div table{
    width: 48%;
}

.en_box{
    padding:0  80px ;
}
.en_box h2{
    font-size: 38px;
    margin-bottom: 50px;position: relative;
    margin-left: -15px;
}
.en_box h2::before{
content: "";
display: inline-block;
position: absolute;
height: 1px;
background-color: #000;
right: 0;
left: 20%;
top: 50%;
}
.en_box h2 span{
    font-size: 16px;
    margin-left: 10px;
}
.en_box table td{
    padding: 25px 0;
    font-size: 20px;
    font-family: 'my_font';
    font-weight: 700;
}
.en_box table{
    margin: 20px 20px;

}

.en_box table tr td:nth-child(1){
width: 30%;
color: #148c69;
position: relative;
}

.en_box table tr td:nth-child(1)::after{
content: "";
display: inline-block;
width: 40px;
height: 1px;
background-color: #000;
position: absolute;
top: 50%;
right: 15px;
}

.cont_box{
    padding:0 20px;
}
.cont_box h3{
    font-size: 38px;
    position: relative;
}

.cont_box h3::before{
    content: url(../images/karc_2.png);
    transform: scale(0.3);
    position: absolute;
    top:-25px;
    left: -80px;
}
.cont_box > a{
display: flex;
font-size: 50px;
font-weight: 300;
justify-content: center;
margin-bottom: 80px;
margin-top: 40px;
align-items: center;
}

.cont_box > a p{
    line-height: 1;
    font-weight: 600;
    margin-left: 30px;
}

.cont_box > a img{
    width: 45px;
    margin-right: 8px;
}

.cont_box > p{
    margin-top: 50px;
    font-size: 20px;
    font-weight: 600;
    margin-left: 50px;
    margin-bottom: 40px;
}

nav.pagination-container{

    position:absolute;
    left:50%;
    bottom:50px;
    transform:translate(-50%,-50%)


}

nav.pagination-container ul {
    border: none;
    padding: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    filter: drop-shadow(0px 1px 3px #ccc);
    transition: 0.3s;
    border-radius: 0px;
    overflow: hidden;
}
.pagination li {
    margin: 0;
}
nav.pagination-container ul li a {
    /* width: 100%;
    height: 100%; */
    display: block;
    border-radius: 0;
    padding: 15px 18px 13px;
    background: #FFF;
    line-height: 1;
    border-right: solid 1px #eee;
}
li.first {
    border-radius: 5px 0 0 5px;
}
li.last {
    border-radius: 0 5px 5px 0;
}
li.page.navi-active a {
    background: #AAD3F7;
}
.pagenation_block dl {
    border-bottom: solid 1px #ddd;
}

.first,.last{
display: none;
}

