/*
Theme Name:custom_theme
Theme URI:http://www.www.www/
Description:This is my sample theme.
*/
/******************
手動リセット
******************/

*{
  box-sizing: border-box;
}
body{
  font-family: ryo-gothic-plusn, sans-serif;
  font-style: normal;
}

a{
  text-decoration:none;
  color:#000;
  margin:0;
}

html{
  line-height:1.5;
}

p{
  -webkit-margin-before:0;
  -webkit-margin-after:0;
  -webkit-margin-start:0px;
  -webkit-margin-end:0px;
  /*  font-family: HiraginoSans-W4;　*/
}

h2{
  margin: 0;
  padding: 0;
}

ul{
  padding:0;
  margin:0;
  -webkit-margin-before:0px;
  -webkit-margin-after:0px;
  -webkit-margin-start:0px;
  -webkit-margin-end:0px;
  -webkit-padding-start:0px;
}

li{
  list-style-type:none;
  padding:0;
  margin:0;
  -webkit-margin-before:0px;
  -webkit-margin-after:0px;
  -webkit-margin-start:0px;
  -webkit-margin-end:0px;
  -webkit-padding-start:0px;
}

h1{
margin:0;
}

.header{
  width: 100%;
  height: 76px;
  padding: 10px 0;
  position: relative;
}

.header li{
  display:inline-block;
  -webkit-margin-before:0em;
  -webkit-margin-after:0em;
  -webkit-margin-start:0px;
  -webkit-margin-end:0px;
  -webkit-padding-start:0px;
}

.navi{
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  box-sizing: border-box;
  justify-content: space-between;
  align-items: center;
}

.navi_left{
  width: 189px;
}

.navi_left a{
  display: inline-block;
}

.navi_left a img{
  width: 100%;
  height: auto;
}

.header_entry a{
  background: red;
  font-size: 13px;
  font-weight: bold;
  border-radius: 6px;
  text-align: center;
  display: inline-flex;
  align-items: center;
  transition: 0.4s ease-in-out;
  color: #fff;
  padding: 13px 13px 9px 13px;
}

.menu.open{
  -webkit-transform:translateX(0);
 transform:translateX(0);
 overflow-y: auto;
 -webkit-overflow-scrolling: touch;
}

.menu ul .line_position{
  position: relative;
}

.menu ul .li_2 a{
  display: inline-block;
  border-bottom: solid 4px #fff;
  font-size: 13px;
  font-weight: bold;
  margin-right: 0.7vw;
  padding: 10px 10px 8px;
  transition: all 1s;
}

.menu ul li:nth-child(6) a{
  margin-right:  10px;
}

.menu ul li:nth-child(6) a{
  color: #A0A0A0;
  margin-left: 10px;
}

.menu ul li:first-child{
  display: none;
}

#gray_line{
  width:1px;
  height:20px;
  background:#727171;
  position: absolute;
  top: 9px;
  right: 0;
}

.menu ul .li_2 a:hover
{
  color: #00a45b;
  border-bottom: solid 4px #00a45b;
}

.header_entry a:hover{
  background:#b9dcb4;
  color: #fff !important;
}

#container .current a{
  border-bottom:solid 4px #00a45b;
  color:#00a45b;
}

.current2 a{
  width:104px;
  border-bottom:solid 4px #00a45b !important;
  color:#00a45b;
}

.current3 a{
  border-bottom:solid 4px #00a45b !important;
  color:#00a45b;
}

.current4 a{
  border-bottom:solid 4px #00a45b !important;
  color:#00a45b;

}

.entry_in{
  background: red;
  border-radius: 6px;
  text-align: center;
  display: inline-flex;
  align-items: center;
  margin: 14px 0;
  transition: 0.4s ease-in-out;
}

/******************
ハンバーガー
******************/
.navbar_toggle{
  display: none;
}

.navbar_toggle_icon{
  height: 2px;
  width: 30px;
  background: #000;
  position: absolute;
}

.navbar_toggle_icon:nth-child(1) {
 top: 0;
}

.navbar_toggle_icon:nth-child(2) {
 top: 12px;
}

.navbar_toggle_icon:nth-child(3) {
 top: 24px;
}

.drawer{
  display: none;
}

/* OPEN時 */
.drawer.open .navbar_toggle_icon:nth-child(1){
  top: 9px;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
}

.drawer.open .navbar_toggle_icon:nth-child(2){
  -webkit-transform: translateY(-50%);
 transform: translateY(-50%);
 opacity: 0;
}

.drawer.open .navbar_toggle_icon:nth-child(3){
  top: 8px;
 -webkit-transform: rotate(-45deg);
 transform: rotate(-45deg);
}

/* ハンバーガー */




/******************
矢印
******************/
.arrow { /* みぎ */
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-left: 11px;
}

.breadcrumbs{
  background:#eaf5ec;
  display:flex;
  justify-content:flex-end;
  width: 100%;
  }

.breadcrumbs2{
  max-width: 960px;
  height:36px;
  margin: 0 auto;
  padding: 20px 0;
}

.bre_in{
  font-family:HiraginoSans-W3;
  font-size:11px;
  color:#000;
  display:flex;
  justify-content: flex-end;
  align-items:center;
  padding:10px 20px 10px 0;
  z-index:80;
  width: 100%;
  margin: 0 auto;
}

.bre_in a{
  transition:0.4s ease-in-out;
}

.bre_in a:hover{
    color: coral;
}

.arrow_bre {/* 矢印：うす緑 */
  display:inline-block;
  width:7px;
  height:7px;
  border-top:1px solid #000;
  border-right:1px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position:relative;
  top:-1px;
  margin:0 10px 0 5px;
}

/******************
メイン画像
******************/
.contents_business {
  background:#eaf5ec;
  width:100%;
  padding: 40px 0;
}

.main_photo{
  height:0px;
  padding-top: 48.33%;
  background-image:url(image/top/title_top2.jpg);
  background-repeat:no-repeat;
  background-size:cover;
  background-position-y: -11px;
  position: relative;
}

.top_copy{
  display: inline-block;
  color: #fff;
  font-size: 28px;
  line-height: 1.7;
  position: absolute;
  top: 40px;
  left: 26px;
  letter-spacing: 1px;
  font-weight: 600;
}
.top_copy br{
  display: none;
}

/******************
トップページ
******************/
.wrap{
  position: relative;
  overflow: hidden;
}

#p_top{
  background: #eaf5ec;
  width: 100%;
  padding: 40px 0;
}

.p_top_box{
  width: 1000px;
  height: auto;
  margin: 120px auto 0;
  padding: 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.cts_box{
  background: #fff;
  width: 420px;
  margin: 10px;
  box-sizing: border-box;
  border: solid 1px #fff;
  position: relative;
  transition: 0.4s ease-in-out;
}

.cts_box:hover{
  background-color:#fef9f2;
  border:solid 1px #d8d9d9;
  color:#777;
}

.cts_box a{
  display: block;
  padding: 20px;
}

.cts_box img{
  width: 100%;
  height: auto;
  transition:0.4s ease-in-out;
}

.cts_box p{
  transition:0.4s ease-in-out;
}

.cts_box:hover img,
.cts_box:hover h2,
.cts_box:hover p{
  opacity: 0.4;
}

.cts_box h2{
  font-size:28px;
  margin-top:10px;
  transition:0.4s ease-in-out;
}

.cts_box .caption{
  font-family:HiraginoSans-W3;
  font-size:11px;
  margin-top:5px;
  color:#9fa0a0;
}

.cts_box p:last-child{
  font-size: 15px;
  line-height: 1.7;
  margin-top: 12px;
}

/******************
会社案内
******************/
.t_corp{
  height: 0;
  background: url(image/company/title_company_2208.jpg) no-repeat center bottom / cover;
  position: relative;
  padding: 31.875% 4rem 0;
}
.t_corp::before{
  content: '';
  background: rgba(0,0,0,0.5);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.gaiyo_line{
  width: 100%;
  height:auto;
  border-bottom: 2px solid #f4f4f4;
  padding: 20px 0 14px;
  display: flex;
}

.gaiyo_a_1,
.shikaku_title{
  display: inline;
  width: 20%;
  font-size: 16px;
  display: flex;
  align-items: center;
  line-height: 1.5;
}

.gaiyo_a_2,
.gaiyo_a_2 a{
  width: 80%;
  font-size: 16px;
  color: #797979;
  align-items: center;
  line-height: 1.5;
  display: flex;
  align-items: center;
}

.gaiyo_a_2 a.underline {
  text-decoration: underline;
}

.gaiyo_a_3{
  display:inline;
  width:116px;
  height:182px;
  float:left;
  font-size:16px;
  display:flex;
  align-items:center;
}

.contents_company{
  background:#eaf5ec;
  width:100%;
  padding: 40px 0;
}

.com_box{
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 20px;
}

.greeting,
.greeting_3{
  background: #fff;
  width: 100%;
  margin: 0px auto 0 auto;
  padding: 0 40px 40px 40px;
}

.wrap_entry .greeting,
.wrap_entry .greeting_3{
  background: #fff;
  width: 880px;
  height: auto;
  margin: 0 auto 40px;
  padding: 40px;
}

.wrap_entry .greeting_in{
  background: #fff;
  margin: 0;
  padding: 0 40px;
}

.wrap_entry .greeting_in_3{
  font-size: 22px;
  font-weight: bold;
  line-height: 1.7;
  margin: 10px 0 14px;
  background: linear-gradient(transparent 60%, #ffcbb9 0%);
  display: inline-block;
}

.wrap_entry .greeting_in_4 p{
  margin: 6px 0 0;
}

.greeting_in_1{
  font-size: 25px;
  font-weight: bold;
  color: #00a45b;
  padding: 40px 0 30px 0;
}

.greeting_in_3{
  font-size: 20px;
  font-weight: bold;
  line-height: 1.7;
  margin-top: 30px;
}

.greeting_in_4{
  font-size: 16px;
  line-height: 34px;
  text-align: justify;
  margin-top: 20px;
}

.greeting_in_4:nth-child(n+2){
  margin-top: 25px;
}

.greeting_in_5{
  display: flex;
  justify-content: flex-end;
  margin-top: 60px;
}

.greeting_in_5 p{
  font-size:20px;
  text-align:right;
}

.greeting_in_5 p:nth-child(2){
  margin-left: 30px;
}

.greeting_3{
  margin-top: 40px;
}

.gaiyo_line_shikaku{
  border-bottom: 2px solid #f4f4f4;
  width: 100%;
  padding: 25px 0;
  display: flex;
}

.gaiyo_a_4{
  width: 80%;
}

.gaiyo_a_4 table{
  width: 100%;
}

.gaiyo_a_4 table tr td{
  font-size: 16px;
  color: #797979;
  padding: 8px 0;
}

.gaiyo_a_4 table tr td:first-child{
  width: 37%;
}

.gaiyo_a_4 table tr td:last-child{
  text-align: right;
  padding-right: 55%;
}

.syozai{
  width: 100%;
  padding: 20px 0;
}

.ggmap{
  width: 100%;
  position: relative;
  padding: 0 40px 56.25% 0;
  overflow: hidden;
  margin-top: 20px;
}

.ggmap iframe, .ggmap object, .ggmap embed{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

/* 会社案内 */




/******************
事業内容
******************/
.title_business{
  height: 0;
  padding-top: 31.875%;
  background-image: url(image/business/title_business.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.t_corp2,
.title_construction2,
.title_business2,
.title_interview2,
.title_recruit2,
.title_contact2,
.title_entry2,
.title_privacy2,
.title_sitemap2,
.title_blog2{
  width: 100%;
  height: 100px;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
}

.t_corp3{
  width: 920px;
  height: auto;
  margin: 0 auto;
  position: relative;
}

.copy1{
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 2px;
}

.copy2{
  position: absolute;
  top: 45px;
  left: 0;
  color: #9fa0a0;
  font-size: 12px;
  letter-spacing: 1px;
}

.contents_business,
.contents_entry,
.contents_construction,
.contents_recruit{
  background:#eaf5ec;
  width:100%;
  padding: 40px 0;
}

.contents_business a{
  margin-top:40px;
}

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

.bsn_flex1{
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 20px;
}

.bsn_flex2 ul{
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0 0 40px 0;
  margin: 0 0 0;
  justify-content: center;
}

.bsn_flex2 ul li{
  background: #fff;
  flex: 0 1 45%;
  margin: 40px 20px 0px;
  padding: 30px;
}

.bsn_flex2 ul li img{
  width: 100%;
  transition-property: all;
}

.bsn_flex2 ul li img:hover{
  opacity:0.6;
}

.bsn_flex2 ul li a{
  transition: 0.4s ease-in-out;
}

.damy{
  font-weight:bold;
  color:red;
  position: absolute;
  top: 560px;
  left: 170px;
  font-size: 30px;
  line-height: 1.3;
}

.damy2{
  left: 620px;
}

.damy3{
  top:1180px;
  left: 170px;
}

.damy4{
  top:1180px;
  left: 620px;
}

.bsn_title_1_2{
  color: #000;
  font-size: 25px;
  padding: 20px 0;
}

.greeting_in_2{
background:#00a45b;
width:30px;
height:2px;
}

.bsn_title_1_3{
  font-size:14px;
  line-height:28px;
  margin-top:30px;
  text-align: justify;
}

/******************
施工実績
******************/
.title_construction{
  height: 0;
  padding-top: 31.875%;
  background-image:url(image/construction/title_construction.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.jisseki_1{
  background: #fff;
  width: 100%;
  margin: 0 auto 40px auto;
  padding: 20px 40px 40px 40px;
  max-width: 800px;
}

.gaiyo_line_jisseki{
  width:100%;
  max-width: 800px;
  height:auto;
  display:flex;
  justify-content:space-between;
  flex-wrap: wrap;
}

.gaiyo_line_jisseki a{
  width: 350px;
  display: block;
  margin-bottom: 10px;
}

.gaiyo_line_jisseki a img{
  width: 100%;
  height: 240px;
  object-fit: cover;
  object-position: center;
}

.jisseki_comment{
  font-size:12px;
  color:#797979;
  margin:22px 0 14px 0;
}


/******************
社員インタビュー
******************/
.title_interview{
  height: 0;
  padding-top: 31.875%;
  background-image:url(image/interview/title_interview.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.itv{
  background:#eaf5ec;
  width: 100%;
}

.itv_box1{
  max-width: 960px;
  padding: 40px 20px;
  margin: 0 auto;
}

.itv_box2{
  background: #fff;
  width: 100%;
  max-width: 880px;
  padding: 40px;
  margin: 0 auto;
  box-sizing: border-box;
}

.intro{
  height:0;
  padding-top: 53.75%;
  background-image:url(image/damy_interview_1.jpg);
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
}

.intro_corolress{
  background:rgba(240,240,232,0.7);
  width:340px;
  height:220px;
  display:flex;
  justify-content:center;
  align-items:center;
  position:absolute;
  bottom:0px;
  left:0px;
}

.intro_name{
  width:290px;
  font-size:17px;
  padding-bottom:20px;
  line-height:10px;
}

.intro_text{
  width:290px;
  font-size:15px;
  line-height:24px;
}

.question1{
  width:100%;
  color:#00a45b;
  font-size:25px;
  display:flex;
  align-items: center;
  margin-top:25px;
}

.question2_1{
  width:70px;
  height:70px;
  display:flex;
  justify-content:center;
  align-items:center;
}

.Q_num{
  background:#00a45b;
  width:70px;
  height:70px;
  border-radius:4px;
  color:#fff;
  display:flex;
  justify-content:center;
  align-items:center;
}

.question2_2{
  width: 100%;
  color: #000;
  display: flex;
  align-items: center;
  margin-left: 15px;
}

.answer{
  font-size:15px;
  line-height:24px;
  border-bottom:2px solid #f4f4f4;
  padding:25px 0;
}

/******************
採用情報
******************/
.title_recruit{
  height: 0;
  padding-top: 31.875%;
  background-image:url(image/recruit/title_recruit.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.wrap_recruit .greeting{
  padding: 0 40px 40px 40px;
}

.wrap_recruit .com_box .greeting:nth-child(3),
.wrap_recruit .com_box .greeting:nth-child(4){
  padding: 30px 30px 0 30px;
}

.saiyo_btn{
  display: flex;
  justify-content: center;
  padding: 30px 0;
}

.saiyo_btn a{
  background: red;
  border-radius: 6px;
  color: #fff;  text-align: center;
  font-size: 18px;
  font-weight: 600;
  transition: 0.4s ease-in-out;
  padding: 20px 30px;
}

.saiyo_btn a:hover{
  background:#b9dcb4;
}

.wrap_entry .b_shi3{
  overflow: auto;
  width: 100%;
}

.recruit_copy1{
  font-size: 20px;
  padding-top: 40px;
}

.recruit_copy2{
  font-size:14px;
  line-height:28px;
  margin-top:25px;
  text-align: justify;
}

#recruit_info1, #recruit_info2{
  background: #00a45b;
  color: #fff;
  font-size: 25px;
  padding: 20px 20px 20px 40px;
  margin-top: 40px;
}

.recruit_line1{
  height:74px;
  border-bottom:2px solid #f4f4f4;
}

.rec_sp1{
  width:100%;
  height:auto;
}

.recruit_1_1{
  display:inline;
  width:116px;
  height:74px;
  float:left;
  font-size:16px;
  display:flex;
  align-items:center;
}

.rec_sp2_1{
  width:100%;
  height:100%;
  float:left;
  font-size:16px;
  padding: 30px 0 20px 0
}

.recruit_1_2{
  width:764px;
  height:74px;
  float:right;
  font-size:16px;
  color:#797979;
  line-height:28px;
  display:flex;
  align-items:center;
}

.rec_sp2_2{
  width:100%;
  height:auto;
  font-weight: 600;
  font-size:13px;
  line-height:22px;
  text-align: justify;
  color:#797979;
  border-bottom:2px solid #f4f4f4;
  padding:10px 0 7px 0;
}

.recruit_line2{
  height:124px;
  border-bottom:2px solid #f4f4f4;
}

.recruit_2_1{
  display:inline;
  width:116px;
  height:84px;
  float:left;
  font-size:16px;
  display:flex;
  align-items:center;
  margin:20px 0;
}

.recruit_2_2{
  width:764px;
  float:right;
  font-size:16px;
  color:#797979;
  line-height:28px;
  display:flex;
  align-items:center;
  margin:20px 0;
}

.rct_cnt{
  width: 100%;
}

.rct_cnt tr td{
  padding: 25px 0;
  border-bottom: 2px solid #f4f4f4;
}

.rct_cnt tr td:first-child{
    width: 20%;
    font-size: 16px;
}

.rct_cnt tr td:last-child{
    width: 80%;
    font-size: 16px;
    color: #797979;
    text-align: justify;
    line-height: 1.5;
}

.rct_cnt tr td ul li{
  margin-top: 15px;
}

.rct_cnt tr td ul li:first-child{
  margin-top: 0;
}

.recruit_entry{
  transform: scale(1.3,1.3);
}

.rct_cnt:last-child{
  margin-top: 40px;
}

.wrap_recruit .entry_in{
  padding: 23px 30px;
}

/******************
ブログ
******************/
.title_blog{
  height: 0;
  padding-top: 31.875%;
  background-image:url(image/blog/title_blog.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.contents_blog,
.single_contents{
  background:#eaf5ec;
  width:100%;
}

.contents_blog .com_box{
  display:flex;
  padding: 25px 20px;
}

.single_contents .com_box{
  display:flex;
  padding: 25px 20px;
}

.blogbox_left{
  width: 70%;
  padding-bottom: 25px;
}

.blogbox_right{
  width: 30%;
  padding-left: 30px;
}

#blogbox{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#blogbox .article{
  background:#fff;
  width: 48%;
  margin: 15px 0;
  box-shadow: 0 3px 6px rgba(0,0,0,0.2);
}

#blogbox .article h2 a{
  font-family:HiraginoSans-W6 !important;
  color:#000;
  font-size:16px;
  line-height:20px;
  transition:0.4s ease-in-out;
}

#blogbox .article h2:hover a{
  color:Coral;
}

.thumb{
  max-width:100%;
  max-height:100%;
}

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

.tit_bx h2{
  margin: 15px 20px 0 20px;
  line-height: 1.1;
}

.ca_bx{
  margin:10px auto 0 auto;
}

.da_box .date{
  font-size:13px;
  color:#c2c3c4;
  padding: 15px 20px 0 20px;
}

.da_box .date img{
  margin-bottom:-2px;
}

.ca_bx ul li{
  margin: 0 6px;
}

.ca_bx li a{
  margin-top: 10px;
  border-radius: 4px;
  display: inline-block;
  background: #4DBA8B;
  font-family: HiraginoSans-W6, sans-serif;
  font-weight: 600;
  font-size: 13px;
  color: #fff;
  padding: 0 6px;
  border-radius: 5px;
  display: inline-block;
  transition: 0.4s ease-in-out;
}

.ca_bx li a:hover{
  background: Coral;
}

.post-categories{
  line-height:30px;
  display: flex;
  flex-wrap: wrap;
  padding: 0 14px 20px 14px;
}

/******************
ページネーション
******************/
.pagination{
  position: relative;
  font-size: 14px;
  text-align: center;
}

.pagination-box{
  display: flex;
  justify-content: center;
  margin-top: 30px;
}

.pagination span,
.pagination a{
  background: #B4E4CD;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #797979;
  border-radius: 50%;
}

.pagination a{
  transition:0.4s ease-in-out;
  margin: 0 3px;
}

.pagination a:hover{
  background: #ffcbb9;
}

.pagination span.page-of{
  background: none;
  width: auto;
  margin: 0 20px;
}

.pagination .current{
  background: Coral;
  color: #fff;
  margin: 0 3px;
}

/******************
記事ページ（投稿記事）
*****************/
.single_flex{
  width: 70%;
}

.sg_left{
  background: #fff;
  margin-top: 15px;
  padding: 30px 30px 10px 30px;
}

.sg_left .sg_da_box .date{
  font-size: 13px;
  color: #c2c3c4;
  margin-top: 10px;
  padding-top: 6px;
}

.sg_left .sg_da_box .date img{
  position: relative;
  top: 2px;
}

.sg_left h1{
  font-size: 22px;
  line-height: 1.5;
  text-align: justify;
  margin: 6px 0 10px 0;
}

.sg_left h1 a{
  transition: 0.4s ease-in-out;
}

.sg_left h1 a:hover{
  color:Coral;
}

.sg_left .post-categories{
  margin-left: -6px;
  padding: 0 0 20px 0;
}

.honbun{
  margin-top: 20px;
}

.honbun img{
  width: 100%;
  height: auto;
  margin-bottom: 30px;
}

.honbun p{
  font-size: 16px;
  line-height: 1.7;
  margin-top: 30px;
}

.page_single{
  display: flex;
  justify-content: center;
  margin-top: 40px;
}

.page_single a{
  background: #B4E4CD;
  width: 160px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #797979;
  border-radius: 20px;
  transition:0.4s ease-in-out;
  margin: 0 7px;
  font-size: 14px;
}

.page_single a:hover{
  background: #ffcbb9;
}


/******************
サイドバー
******************/
#sidebar{
  float:right;
  margin-top: 15px;
}

#sidebar h2{
  width:226px;
  border-bottom:2px solid #fff;
  /*  font-family:HiraginoSans-W4;　*/
  color:#fff;
  font-size:20px;
  padding-bottom:5px;
  margin:30px 0 20px 20px;
}

#sidebar a{
  color:#797979;
  font-size:14px;
  transition:0.4s ease-in-out;
  width: auto;
}

#sidebar li{
  color:#797979;
  font-size:14px;
  margin: 0 20px;
  padding: 16px 0;
  transition:0.4s ease-in-out;
  border-bottom:2px dashed #ededed;
  width: auto;
}

#sidebar li:last-child{
  border-bottom: none;
}

#sidebar a:hover{
  color:Coral;
}

#sidebar .archive{
  background:#fff;
}

.b_title{
  background:#00a45b;
  color:#fff;
  font-size:18px;
  padding:16px 20px;
}

.categories{
  background:#00a45b;
  color:#fff;
  font-size:18px;
  padding:16px 20px 14px 20px;
}

#sidebar .archive:nth-child(2) ul{
  margin-bottom: 0;
}

#searchform{
  margin:20px;
  display:flex;
  justify-content:center;
}

#searchform label{
  display:none;
}

#s{
  background:#fff;
  width: 150px;
  height:38px;
  border-top-left-radius:6px;
  border-bottom-left-radius:6px;
  border-style:none;
  border:2px solid #c2c3c4;
}

#searchsubmit{
  background:#c2c3c4;
  height:38px;
  border-top-right-radius:6px;
  border-bottom-right-radius:6px;
  border-style:none;
  border:2px solid #c2c3c4;
  color:#000;
  font-size:16px;
  padding:0 8px 0 5px;
  margin: 0 0 0 -7px;
}


/******************
エントリー
******************/
.title_entry{
  height: 0;
  padding-top: 31.875%;
  background-image:url(image/entry/title_entry.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.contents_entry .com_box{
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
  padding: 0 20px;
}

#entry_content1, #entry_content2,
#ety_co3, #ety_co4,
.contact_content1{
  background: #00a45b;
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  color: #fff;
  font-size: 24px;
  line-height: 1.5;
  margin: 0 auto;
  padding: 10px 30px;
}

.entry_space1,
.greeting_in{
  background:#fff;
  padding: 0 40px 20px 40px;
}

.entry_box1{
  display:flex;
  border-bottom:2px solid #f4f4f4;
}

.entry_box2_1{
  width:30%;
  height:auto;
  display:flex;
  align-items:center;
}

.entry_box2_2{
  width:77%;
  height:auto;
  display:flex;
  align-items:center;
  padding:20px 0;
}

.fbox{
  margin:22px 0;
}

.contact_form_1,
.contact_naiyo{
  display:flex;
  border-bottom:2px solid #f4f4f4;
  padding:22px 0;
}
.contact_naiyo.btn{
  padding-bottom: 60px;
  padding-bottom: 0;
}
.contact_form_2{
  width:30%;
  height:auto;
  display:flex;
  align-items:center;
}
.entry_box2_1_1,
.ety_hissu,
.contact_form_3_1{
  background: red;
  display: flex;
  width: 60px;
  border-radius: 5px;
  color: #fff;
  letter-spacing: 1px;
  font-size: 14px;
  justify-content: center;
  padding: 6px 0;
}

.entry_box2_1_2,
.contact_form_3_2{
  font-size:16px;
  margin-top:8px;
}

.b_na1,
.b_na2,
.bo_ad,
.b_mail{
  width: 100%;
  height:40px;
  margin-top:4px;
}

.b_post{
  width:200px;
  height:40px;
}

.entry_box_1line1{
  width:30%;
  font-size:16px;
  display:flex;
  align-items:center;
}

.bo_tel{
  width: 100%;
  height: 40px;
  margin-top:4px;
}

.ety_co3{
  margin-top: 25px;
}

.ety_co3_wh{
  border-bottom:solid 2px #f4f4f4;
  display:flex;
  padding: 30px 0;
}

.ga3_le_2_shi{
  width:auto;
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  font-size:16px;
  display:flex;
  align-items: center;
}

.ety_spa5{
  background:#fff;
  margin-top: 40px;
  padding: 40px;
}

.sou1_pc{
  color: #000;
  font-size: 18px;
  text-align: center;
}

.sou1_sp{
  display:none;
}

.sou1_pc a, .sou1_sp a{
  color:#00a45b;
  text-decoration:underline;
  transition:0.5s ease-in-out;
}

.sou1_pc:hover a{
  color:Coral;
}

.sou1_sp:hover a{
  color:Coral;
}

.sou1_pc a:after{
  content:url(image/entry/new_window.svg);
  margin-right:5px;
}

.sou1_sp a:after{
  content:url(image/entry/new_window.svg);
  margin-right:5px;
}

.sou1_pc a:hover:after{
  content:url(image/entry/new_window_hover.svg);
  transition:opacity 0.5s ease-in-out;
}

.sou1_sp a:hover:after{
  content:url(image/entry/new_window_hover.svg);
  transition:opacity 0.5s ease-in-out;
}

.sou2{
  font-size: 18px;
  color: #797979;
  text-align: center;
  margin-top: 40px;
}

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

.sou3 .modoru_btn a,
.sou3 .sou3_1 a{
  background: lightblue;
  display: block;
  width: 100%;
  height: 100%;
}

.sou3_1, .modoru_btn{
  width: 300px;
  height: 80px;
  font-size: 24px;
  color: #fff;
  transition: 0.4s ease-in-out;
  border-radius: 10px;
}

.modoru_btn{
  background:#9fa0a0;
  float:left;
  margin-right:30px;
}

.sou3_1{
  background:#00a45b;
  float:right;
}

.modoru_btn:hover{
  background:Coral;
}

.sou3_1:hover{
  background:Coral;
}

.error{
  color: red !important;
  margin: 6px 0;
  border-bottom: 2px dashed dodgerblue;
  width: 88px;
  padding-bottom: 2px;
}


/******************
問い合わせ
******************/
.title_contact{
  height: 0;
  padding-top: 31.875%;
  background-image:url(image/contact/title_contact.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.wrap_contact .com_box{
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
  padding: 0 20px;
}

.contents_contact{
  background:#eaf5ec;
  width:100%;
  padding-bottom: 40px;
}

.cont_bx1,
.telfax_bx1{
  display: flex;
  justify-content: space-between;
  padding: 40px 0;
}

.cont_bx2{
  background-image: url(image/contact/contact_back.jpg);
  padding-top: 14%;
  width: 48%;
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  transition:0.4s ease-in-out;
}

.cont_bx2 a{
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.cont_bx2:hover{
  background-image: url(image/contact/contact_sp_back_hover.jpg);
}

.cont_bx3{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  position: absolute;
  top:0;
  left:0;
  bottom:0;
  right:0;
}

.cont_bx3 img{
  margin-right: 5px;
}

.cont_bx3 p{
  font-weight: 600;
}
.contact_form_1 input[type="text"],
.contact_form_1 input[type="email"]{
  border: 2px solid rgba(52, 33, 33, 0.3);
  border-radius: 0;
  width: 100%;
  height: 50px;
  font-weight: bold;
  display: flex;
  align-items: center;
  padding: 4px 10px;
}
.contact_form_1 input::placeholder,
.contact_naiyo textarea::placeholder{
  font-family: ryo-gothic-plusn, sans-serif;
  font-weight: bold;
  color: rgba(0,0,0,0.6);
  color: #c9c9c9;
}
.contact_naiyo textarea{
  border: 2px solid rgba(52, 33, 33, 0.3);
  border-radius: 0;
  width: 100%;
  height: 120px;
  padding: 12px 10px;
}
.contact_right{
  width: 70%;
  display: flex;
  display: inline-flex;
  align-items: center;
}
.wpcf7-form-control{
  width: 100%;
  height: 40px;
}
.contact_form_4 .wpcf7-form-control{
  position: relative;
  top: -10px;
}

.contact_naiyo{
  display: flex;
  align-items: center;
}

.contact_naiyo_2{
  width: 30%;
}

.contact_naiyo_right{
  width: 70%;
}

.contact_naiyo_right .wpcf7-form-control{
  width: 100%;
  height: 180px;
}

.btn{
  border:none;
}

.contact_war_0 {
  margin: 0 auto;
}

.contact_war_1{
  font-size:14px;
  font-weight: 600;
  color:#797979;
}

.contact_war_2{
  font-size:14px;
  display:flex;
  justify-content:center;
  margin-top: 25px;
}

.soushinbtn{
  background:#9cdabc;
  width:260px;
  height:80px;
  border:2px solid #9cdabc;
  border-radius:10px;
  font-size:20px;
  color:#797979;
  transition:0.4s ease-in-out;
}

.soushinbtn:hover{
  background:#fff;
}

.wpcf7-form-control-wrap{
  width: 100%;
}

.contact_info1_sp{
  display:none;
}

.contact_info1{
  width: 100%;
  display: flex;
  justify-content: center;
}

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

.contact_info3 a {
  background: gold;
}

.contact_form_4 .wpcf7-list-item{
  display: block;
  margin: 7px 0;
}

.contact_info4{
  width:420px;
  height:120px;
  font-size:20px;
  background-image:url(image/contact/contact_back.jpg);
  background-repeat:no-repeat;
  background-position:center;
  display:flex;
  justify-content:center;
  align-items:center;
  margin:40px 0;
  transition:0.5s ease-in-out;
}

.contact_info4:hover{
  background-image:url(image/contact/contact_back_hover.jpg);
}

.contact_info4 img{
  margin-right:12px;
  transform: scale(1.3,1.3);
}

#recrui_space{
  width: 100%;
  max-width:880px;
  margin:0 auto;
}

.greeting_in{
  background: #fff;
  margin: 0 0 40px 0;
  padding: 0 40px;
}



/******************
エントリー完了画面
******************/

.contents_entry2{
  background:#eaf5ec;
  width:960px;
  height:100%;
  margin: 40px auto 0;
  padding:40px 0;
}

.entry_space1_done{
  background: #fff;
  width: auto;
  height: auto;
  margin: 0 5vw;
  padding-bottom: 10px;
}

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

.d_box2{
  background:#fff;
  width:500px;
  height:auto;
  margin-bottom:10px;
  border-top:3px solid #ceecdd;
  border-bottom:3px solid #ceecdd;
}

.d_box3{
  background:#fff;
  margin:34px 34px 0 34px;
}

.done_com1{
  font-size:20px;
  color:#00a45b;
  border-bottom:2px dashed #ceecdd;
  padding-bottom:10px;
}

.done_com2{
  font-size:14px;
  line-height:24px;
  color:#5f5d5d;
  margin-top:20px;
  padding-bottom:20px;
  border-bottom:2px dashed #ceecdd;
}

.done_com3{
  font-size:14px;
  line-height:30px;
  color:#5f5d5d;
  margin-top:20px;
  padding-bottom:5px;
}

.done_com3 a{
  font-size:14px;
  line-height:30px;
  color:#5f5d5d;
  margin-top:20px;
  padding-bottom:20px;
  transition:opacity 0.5s ease-in-out;
}

.done_com3 a:hover{
  color:Coral;
}

.done_com4{
  width:500px;
  height:30px;
  background-image:url(image/entry/corn_entry_done01.svg);
  background-repeat:round;
  padding:0;
  position:relative;
  top:7px;
}



/******************
サイトマップ
******************/
.title_sitemap{
  height: 0;
  padding-top: 31.875%;
  background-image:url(image/sitemap/title_sitemap.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.contents_sitemap{
  background:#eaf5ec;
  width:100%;
  padding: 40px 0
}

.site_space2, .site_space3{
  width:378px;
  height:700px;
  margin-top:40px;
}

.site_space2{
  margin-left:40px;
}

.site_space3{
  margin-right:40px;
}

.map1{
padding: 7vw 7vw 4vw 7vw;
}

.map2{
padding:0 7vw 4vw 7vw;
}

.map3{
padding:0 7vw;
}

.map4{
padding: 0 7vw 4vw 7vw;
}

.map1_in, .map1_in_blog{
  background:#eaf5ec;
  height:60px;
  font-size:20px;
  display:flex;
  align-items:center;
  padding-left:20px;
  border:1px solid #eaf5ec;
  transition:0.4s ease-in-out;
}

.map1_in:hover{
  background:#fef9f2;
  border:1px solid #d8d9d9;
  color:#777;
}

.map1_in_blog:hover{
  background:#fef9f2;
  border:1px solid #d8d9d9;
  color:#777;
}

.map1_child{
  background:#f6fbf7;
  width:316px;
  height:60px;
  font-size:16px;
  display:flex;
  align-items:center;
  padding-left:20px;
  margin-left:40px;
  border:1px solid #f6fbf7;
  transition:0.4s ease-in-out;
}

.map1_child:hover{
  background:#fef9f2;
  border:1px solid #d8d9d9;
  color:#777;
}

/* 再サイトマップ（18.10.1） */
.site_space1{
  display: flex;
  margin: 0 20px;
  padding: 40px;
  background: #fff;
}

.st_map{
  display: flex;
  flex-direction: column;
  width: 70%;
  margin: 0 auto;
}

.st_map .main,
.st_map .sub{
  background: #eaf5ec;
  height: 60px;
  font-size: 20px;
  display: flex;
  align-items: center;
  margin-top: 25px;
  padding-left: 20px;
  border: 1px solid #eaf5ec;
  transition: 0.4s ease-in-out;
  position: relative;
}

.st_map .main:hover,
.st_map .sub:hover{
  background:#fef9f2;
  border:1px solid #d8d9d9;
  color:#777;
}

.st_map .main:first-child{
  margin-top: 0;
}

.st_map .sub{
  background: #f6fbf7;
  border: 1px solid #f6fbf7;
  margin-left: 30px;
  width: 80%;
  margin: 25px auto 0 auto;
}

.st_map .main a,
.st_map .sub a{
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

/******************
個人情報保護方針
******************/
.title_privacy{
  height: 0;
  padding-top: 31.875%;
  background-image:url(image/privacy/title_privacy.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.contents_privacy{
  background: #eaf5ec;
  width: 100%;
  padding: 40px 0;
}

.privacy_space1{
  background:#fff;
  width:100%;
  max-width: 880px;
  margin:0 auto;
  display:flex;
  justify-content:center;
}

.pri1{
  width:100%;
  max-width: 800px;
  margin:40px;
}

.pri1_ti{
  font-size:26px;
}

.pri1_txt{
  font-size:16px;
  line-height:28px;
  margin-top:20px;
  text-align: justify;
}

.pri2_ti{
  font-size:20px;
  margin-top:45px;
}

.arrow_gre {/* 矢印：うす緑 */
  display:inline-block;
  width:10px;
  height:10px;
  border-top:3px solid #98dabb;
  border-right:3px solid #98dabb;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position:relative;
  top:-2px;
  margin-right:10px;
}

.pri2_txt{
  font-size: 16px;
  line-height: 28px;
  margin-top: 16px;
  text-align: justify;
}

.pri2_txt a{
  color:#000;
  transition:0.4s ease-in-out;
}

.pri2_txt a:hover{
  color:Coral;
}

.pri2_txt ul{
  margin-top:20px;
}

.pri2_txt ul li{
  list-style-type:disc;
  list-style-position:inside;
  line-height: 38px;
}

.pri3_1{
  padding-bottom:14px;
}

.pri3_2{
  border:1px solid #c2c3c4;
  margin-top:20px;
  padding:30px;
}

#telfax_space {
  margin-top: 40px;
}

.telfax_1{
  background: #fff;
  width:880px;
  height:200px;
  display:flex;
  justify-content:center;
  align-items: center;
  margin-top: 40px;
}

.telfax_bx2{
  background: #fff;
  width: 48%;
  height: 230px;
  position: relative;
  text-align: center;
  padding: 40px 30px;
  font-weight: 600;
  display: flex;
  justify-content: center;
}

.telfax_bx2 p:first-child{
  font-size: 2.2vw;
  font-size: 22px;
}

.telfax_bx2 .info3{
  margin-top: 15px;
}

.tel_num{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
}

.tel_num img {
  width: 25px;
  margin-right: 1px;
}

.tel_num p{
  font-size: 42px;
  font-weight: 700;
}


/* 問い合わせ */

/******************
フッター
******************/
#footer{
  width: 100%;
}

.footer_box{
  width: 1000px;
  height: auto;
  margin: 0 auto;
  padding: 40px 0 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.ft_cts_box{
  background: #fff;
  width: 32%;
  height: 50px;
  padding: 25px 20px;
  margin-bottom: 20px;
  box-sizing: border-box;
  border:solid 2px #f4f4f4;
  transition:0.4s ease-in-out;
  position: relative;
}

.ft_cts_box:nth-child(3){
  margin-bottom: 0;
}

.ft_cts_box a{
  display: inline-block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  transition:0.4s ease-in-out;
}

.ft_cts_box:nth-child(2) a,
.ft_cts_box:nth-child(3) a{
  color: #9FA0A0;
}

.ft_cts_box a:hover{
  background-color:#ffcbb9;
}

.ft_cts_box a img{
  margin-right: 7px;
  transition-property: all;
  transition:opacity 0.7s ease-in-out;
  height: 15px;
}

/* フッター */
.info_2_1 a, .info_2_2 a, .info_2_3 a{
  color:#000;
  background:red;
}

.info_2_1 img, .info_2_2 img, .info_2_3 img{
  margin-right:8px;
}

.info_2_1_in, .info_2_2_in, .info_2_3_in{
  background:#fff;
  border:solid 2px #f4f4f4;
  width:276px;
  height:46px;
  display:flex;
  justify-content:center;
  align-items:center;
  transition:0.4s ease-in-out;
  padding: 6px 0;
}

.info_2_2_in, .info_2_3_in{
  color:#9fa0a0;
}

.info_2_1_in:hover{
  background-color:#ffcbb9;
  color:#575757;
}

.info_2_2_in:hover{
  background-color:#ffcbb9;
  color:#b7b7b7;
}

.info_2_3_in:hover{
  background-color:#ffcbb9;
  color:#b7b7b7;
}

.info_2_1_in img, .info_2_2_in img, .info_2_3_in img{
  transition-property: all;
  transition:opacity 0.7s ease-in-out;
}

.info_2_1_in:hover img{
  opacity:0.6;
  filter:alpha(opacity=60);
  -ms-filter:"alpha(opacity=60)";
}

.info_2_2_in:hover img{
  opacity:0.6;
  filter:alpha(opacity=60);
  -ms-filter:"alpha(opacity=60)";
}

.info_2_3_in:hover img{
  opacity:0.6;
  filter:alpha(opacity=60);
  -ms-filter:"alpha(opacity=60)";
}


/* アドレス */
address{
  color: #000;
  text-align: center;
  font-style: normal;
  font-size: 14px;
  position: relative;
  bottom: -2px;
  width: calc(100% - 40px);
  height: auto;
  margin: 0 auto;
  background-image: url(image/footer/footer_corn1.svg), url(image/footer/footer_corn1.svg);
  background-position: left bottom, right bottom;
  background-size: 130px;
  background-repeat: no-repeat, no-repeat;
}

address p:nth-child(3){
  padding-bottom: 24px;
}

address a{
  transition:0.4s ease-in-out;
}

address a:hover{
  color:Coral;
}

#copyright{
  background:#00a45b;
  font-size:11px;
  color:#fff;
  text-align:center;
  position:relative;
  padding: 15px 0;
}

/******************
ページトップ
******************/
#wpfront-scroll-top-container img{
  position:fixed;
  bottom:90px;
  right:20px;
}


/******************
ダミー点滅
******************/
.blinking{
  font-weight:bold;
  color:red;
  -webkit-animation:blink 1.5s ease-in-out infinite alternate;
  -moz-animation:blink 1.5s ease-in-out infinite alternate;
  animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

.display_pc{
  display: block;
}

.display_sp{
display: none;
}

.navi_right{
  position: relative;
  top: -3px;
}

.award{
  width: 595px;
  height: 191px;
  position: absolute;
  top: 55px;
  right: 20px;
  border-radius: 20px;
  background: rgba(255,255,255,0.5);
  background: #fff;
  padding: 25px 15px 22px;
}

.award > .title{
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  position: relative;
}

.award > .title::before{
  content: '';
  width: 290px;
  height: 2px;
  background-image: linear-gradient(135deg, #a79756, #faf8c5, #a79756);
  display: block;
  position: relative;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 0 10px;
}

.award > .title::after{
  content: '';
  width: 290px;
  height: 2px;
  background-image: linear-gradient(135deg, #a79756, #faf8c5, #a79756);
  display: block;
  position: relative;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 7px 0 0;
}

.award > .flex{
  display: flex;
  justify-content: center;
  margin: 20px 0 0;
}

.award::before{
  content: '';
  width: 140px;
  height: 38px;
  display: block;
  background: url(image/top/decoration1.png);
  background: url(image/top/decoration_100_top.png);
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  top: -38px;
  left: 50%;
  transform: translateX(-50%);
}

.award::after{
  content: '';
  width: 140px;
  height: 38px;
  display: block;
  background: url(image/top/decoration2.png);
  background: url(image/top/decoration_100_bottom.png);
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  bottom: -38px;
  left: 50%;
  transform: translateX(-50%);
}

.award > .flex > img{
  width: auto;
  height: 70px;
  margin: 0 10px;
}
.nivo-lightbox-theme-default .nivo-lightbox-close{
  background: none !important;
  width: 80px !important;
  height: 80px !important;
  opacity: 1 !important;
  top: 2% !important;
  right: 1.5% !important;
}
.nivo-lightbox-theme-default .nivo-lightbox-close::before{
  content: '';
  background: #fff;
  width: 100%;
  height: 3px;
  position: absolute;
  top: 40px;
  left: 0;
  transform: rotate(45deg);
}
.nivo-lightbox-theme-default .nivo-lightbox-close::after{
  content: '';
  background: #fff;
  width: 100%;
  height: 3px;
  position: absolute;
  top: 40px;
  left: 0;
  transform: rotate(-45deg);
}
.p_top-news{
  width: 860px;
  margin: 40px auto 60px;
}
.p_top-news .ttl-area p{
  font-weight: bold;
  color: #00a45b;
}
.p_top-news .ttl-area .main-ttl{
  font-size: 34px;
  letter-spacing: 0.05em;
}
.p_top-news .ttl-area .sub-ttl{
  font-size: 16px;
  letter-spacing: 0.15em;
  margin-top: 3px;
}
.p_top-news ul{
  margin-top: 40px;
}
.p_top-news ul li{
  border-top: 1px solid rgba(0,0,0,0.2);
}
.p_top-news ul li:last-child{
  border-bottom: 1px solid rgba(0,0,0,0.2);
}
.p_top-news ul li a{
  display: block;
}
.p_top-news ul li a .inner{
  padding: 25px 20px 20px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.p_top-news ul li a .inner::before{
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-top: solid 2px rgba(0,0,0,0.8);
  border-right: solid 2px rgba(0,0,0,0.8);
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  position: absolute;
  top: 46%;
  right: 33px;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.p_top-news ul li a:hover .inner::before{
  border-top: solid 2px #00a45b;
  border-right: solid 2px #00a45b;
}
.p_top-news ul li a:hover .inner{
  transform: translateX(3px);
}
.p_top-news ul li a .inner p{
  -webkit-transition: all .3s;
  transition: all .3s;
}
.p_top-news ul li a:hover .inner p{
  color: #00a45b;
}
.p_top-news ul li a .inner .day{
  margin-right: 30px;
}
.p_top-news .link-btn{
  background-color: #00a45b;
  border: 2px solid #00a45b;
  width: 280px;
  height: 70px;
  font-size: 19px;
  line-height: 1;
  color: #fff;
  text-align: center;
  margin: 50px auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.p_top-news .link-btn:hover{
  background-color: #fff;
  color: #00a45b;
}
.p_top-news .link-btn::before{
  content: '';
  background: url(image/top/arrow-wh.svg) no-repeat center / cover;
  width: 8px;
  height: 16px;
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  -webkit-transition: all .3s;
  transition: all .3s;
}
.p_top-news .link-btn:hover:before{
  background: url(image/top/arrow-gr.svg) no-repeat center / cover;
  -webkit-transform: translate(3px, -50%);
  transform: translate(3px, -50%);
}
.contact_form_4{
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.contact_form_4 span{
  line-height: 1;
  margin: 12px 12px 11px;
  margin-left: 0 !important;
}
.mwform-checkbox-field input, .mwform-radio-field input{
  margin-right: 5px !important;
}
.contact_war_2_inner{
  display: flex;
}
.contact_war_2_inner .submit-btn{
  border: 2px solid #9cdabc;
  background: #9cdabc;
  font-size: 20px;
  color: #797979;
  color: #000;
  width: 250px;
  height: 70px;
  transition: all 0.3s;
  position: relative;
}
.contact_war_2_inner .submit-btn::before{
  content: '';
  display: block;
  width: 9px;
  height: 9px;
  transform: rotate(45deg);
  position: absolute;
  top: 26px;
}
.contact_war_2_inner .submit-btn.soushin::before{
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  right: 18px;
}
.contact_war_2_inner .submit-btn.return::before{
  border-bottom: solid 2px #000;
  border-left: solid 2px #000;
  left: 18px;
}
.contact_war_2_inner .submit-btn input{
  border: none;
  background: none;
  border-radius: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  cursor: pointer;
}
.contact_war_2_inner .submit-btn.return{
  border: 2px solid rgba(255, 127, 80, 0.6);
  background: rgba(255, 127, 80, 0.6);

  border: 2px solid #ffbfa7;
  background: #ffbfa7;
  margin-right: 30px;
}
.contact_war_2_inner .submit-btn:hover{
  background: #fff;
}
/* 入力画面 */
.page-template-page-contact .contact_war_2_inner .submit-btn.return{
  display: none;
}
/* 確認画面 */
.page-template-page-contact-comfirm .contact_war_2_inner .submit-btn.return{
  display: block;
}
/* 完了画面 */
.page-template-page-contact-completion .ns_box{
  padding: 30px 0 35px;
}
.page-template-page-contact-completion .ns_box h2{
  font-size: 21px;
}
.page-template-page-contact-completion .ns_box p{
  margin-top: 20px;
  line-height: 2;
}
.recaptcha-v3-comment span{
  border-bottom: none !important;
  color: #fff !important;
}
.contents_company.p-awards .greeting{
  margin-bottom: 40px;
}
.p-awards__img-body.pt2 {
  display: block;
}
.p-awards__img-body.pt2 .gaiyo_line_jisseki a {
  width: 100%;
}
.p-awards__img-body.pt2 .gaiyo_line_jisseki a img {
   height: auto;
}



/******************

共通 end

******************/



/*****************

調整 1600px start

*****************/
@media screen and (max-width: 1600px){
.award{
  width: 490px;
  height: 164px;
  top: 46px;
}
.award::before,
.award::after{
  width: 100px;
  height: 27px;
}
.award::before{
  top: -26px;
}
.award::after{
  bottom: -26px;
}
.award > .flex > img{
  height: 56px;
}
.award > .title{
  font-size: 17px;
}
.award > .title::before,
.award > .title::after{
  width: 240px;
  margin: 0;
}
.award > .title::before{
  margin-bottom: 7px;
}
.award > .title::after{
  margin-top: 3px;
}



}
/*****************

調整 1600px end

*****************/



/*****************

調整 1400px start

*****************/
@media screen and (max-width: 1400px){
.top_copy{
  top: inherit;
  left: inherit;
  bottom: 16px;
  right: 0;
}
.award{
  right: auto;
  left: 304px;
}



}
/*****************

調整 1400px end

*****************/



/*****************

調整 1200px start

*****************/
@media screen and (max-width: 1200px){
.main_photo{
  margin-top: 250px;
}
.top_copy{
  font-size: 25px;
}



}
/*****************

調整 1200px end

*****************/


/******************

調整 1150px start

******************/

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


}
/******************

調整 1150px end

******************/



/*****************

調整 900px start

*****************/
@media screen and (max-width: 900px){
.main_photo {
  margin-top: 220px;
  margin-top: 260px;
}
.navi_left{
  width: 130px;
}
.top_copy{
  font-size: 23px;
  bottom: 10px;
}
.header{
  height: 66px;
}
.menu ul .li_2 a{
  margin-right: 0.6vw;
  padding: 8px 6px 7px;
}

}
/*****************

調整 900px end

*****************/



/******************

スマホ 調整 768px start

******************/
@media screen and (max-width:768px){
  .main_photo{
    margin-top: 400px;
    padding-top: 64vw;
  }


}
/******************

スマホ 調整 768px end

******************/



/******************

スマホ 調整 750px start

******************/

@media screen and (max-width:750px){
p{
  -webkit-margin-before:0;
  -webkit-margin-after:0;
  -webkit-margin-start:0px;
  -webkit-margin-end:0px;
}

li{
  list-style-type:none;
  padding:0;
  margin:0;
}

.header{
  background: #fff;
  width: 100%;
  height: 60px;
  position: fixed;
  top: 0;
  z-index: 99990;
}

.header li{
  display: block;
}

.navi{
  max-width: 100%;
  height: 100%;
  padding: 0 17px;
  position: relative;
  display: flex;
  justify-content: space-between;
}

.navi_left{
  width: 80px;
  position: relative;
  left: 0px;
}

.navi_left .logo{
  display: flex;
  align-items: center;
}

.navi_left a img{
  width: 170%;
}

.header_entry a{
  position: relative;
  top: 0;
  right: 0;
  width: 100%;
  border-bottom: 1px solid #fff !important;
  font-size: 15px;
  text-align: center;
  color: #fff;
  margin-right: 0.7vw;
  padding: 20px 0;
  display: block;
  transition: 0.4s ease-in-out;
  background: none;
}

.navi_right{
  position: relative;
  bottom: 0px;
  top: 0px;
  width: 50%;
  height: 100%;
}

.menu{
  width: 100%;
  height: 100%;
  background: #00a45b;
  padding: 40px 0 0 0;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition: ease .5s;
  transition: ease .5s;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
}
.menu ul{
  width: 100%;
}

.menu ul .li_2 a{
  width: 100%;
  border-bottom: 1px solid #fff !important;
  font-size: 15px;
  text-align: center;
  color: #fff;
  margin-right: 0.7vw;
  padding: 20px 0;
  display: block;
  transition: 0.4s ease-in-out;
}

.menu ul li:nth-child(6) a{
  color: #fff;
  margin-left: 0;
}

.menu ul li:first-child{
  display: block;
}

#gray_line{
  display: none;
}

.menu ul li a:hover{
  background: #a8cca6;
  border-bottom: none;
}

#container .current a{
  background: #a8cca6;
  width: 100%;
  color: #fff;
  border-bottom: 1px solid;
}

.current4 a{
  border-bottom: 1px solid #fff !important;
}

/******************
ハンバーガー
******************/

.navbar_toggle{
  display: block;
}

.drawer{
  width: 30px;
  height: 30px;
  display: block;
  position: absolute;
  top: 6px;
  right: 0px;
  z-index: 99999;
}

.arrow {
  display:inline-block;
  width:7px;
  height:7px;
  border-top:3px solid #fff;
  border-right:3px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position:relative;
  left:16px;
}

.entry .arrow{
display:none;
}

.breadcrumbs{
  display: none;
}

.bre_in{
  height: auto;
  font-family: HiraginoSans-W3;
  font-size: 12px;
  color: #000;
  z-index: 80;
  line-height: 22px;
  width: auto;
  padding: 8px;
}

.arrow_bre {/* 矢印：うす緑 */
  display:inline-block;
  width:7px;
  height:7px;
  border-top:1px solid #000;
  border-right:1px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position:relative;
  top:-1px;
  margin:0 10px 0 5px;
}

.main_photo{
  position: relative;
  background-position-y: 12vw;
  padding-top: 73%;
}

.top_copy{
  font-size: 22px;
  line-height: 28px;
  top: auto;
  left: 16px;
  bottom: 16px;
}

/******************
トップページ
******************/

#p_top{
  width: 100%;
  height: auto;
  padding: 20px 20px 1px;
}

.p_top_box{
  width: 100%;
  margin: 0;
  display: block;
}

.cts_box{
  width: 100%;
  margin: 0 0 20px;
}

.cts_box h2{
  font-size: 22px;
}

.cts_box .caption{
  margin-top: 0;
  font-size: 14px;
}

/******************
会社案内
******************/

.t_corp{
  padding-top: 40%;
  padding: 31.875% 2rem 0;
}

.wrap_corporate,
.wrap_business,
.wrap_construction,
.wrap_interview,
.wrap_recruit,
.wrap_entry,
.wrap_sitemap,
.wrap_blog,
.wrap_contact,
.wrap_privacy{
  padding: 60px 0 0;
}

.gaiyo_line{
  display: block;
  margin: 24px 0 16px;
  padding: 0 0 6px;
}

.gaiyo_line:nth-child(1){
  margin: 0 0 16px;
}

.gaiyo_a_1,
.shikaku_title{
  width: 100%;
  height:auto;
  font-size:16px;
}

.gaiyo_a_2{
  margin-top: 4px;
}

.gaiyo_a_2, .gaiyo_a_3{
  width:100%;
  height:auto;
  font-size:16px;
  line-height:22px;
  color:#797979;
}

.contents_company{
  padding: 20px 0;
}

.contents_company,
.contents_business{
  background: #eaf5ec;
  width: 100%;
  height: auto;
  padding-bottom: 20px;
  overflow: hidden;
}

.com_box{
  max-width: none;
  width: calc(100% - 40px);
  margin: 0 auto;
  padding: 0;
}

.greeting,
.greeting_3{
  margin:0;
  padding: 30px 20px 20px;
}

.wrap_entry .greeting,
.wrap_entry .greeting_3{
  width: calc(100% - 40px);
  margin: 0 auto 20px;
  padding: 20px;
}

.wrap_entry .greeting_in{
  padding: 0;
}

.wrap_entry .greeting_in_3{
  font-size: 20px;
  display: inline;
}

.wrap_entry .greeting_in_4{
  margin-top: 15px;
  line-height: 24px;
}

.wrap_entry .greeting_in_4 p{
  margin: 14px 0 0;
}

.greeting_in_1{
  padding: 0 0 20px 0;
}

.greeting_in_3{
  margin-top: 20px;
}

.greeting_in_4{
  margin-top: 15px;
}

.greeting_in_5{
  display: block;
  margin-top: 40px;
}

.greeting_in_5 p{
  font-size:18px;
}

.greeting_in_5 p:nth-child(2){
  margin-left: 0;
  margin-top: 5px;
}

.greeting_3{
  margin-top: 20px;
}

.gaiyo_line_shikaku{
  display: block;
  margin: 24px 0 16px;
  padding: 0 0 6px;
}

.gaiyo_a_4{
  width: 100%;
}

.gaiyo_a_4 table tr td:first-child{
  width: 216px;
}

.gaiyo_a_4 table tr td:last-child{
  text-align: left;
  padding-right: 0;
}

.syozai{
  margin: 24px 0 16px;
  padding: 0 0 6px;
}

.ggmap{
  position:relative;
  padding-top:51.5%;
  overflow:hidden;
  margin-top: 10px;
}

.ggmap iframe, .ggmap object, .ggmap embed{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

.title_business{
  padding-top: 40%;
  background-image:url(image/business/title_business.jpg);
  background-repeat:no-repeat;
  background-size: cover;
}

.t_corp2,
.title_construction2,
.title_business2,
.title_interview2,
.title_recruit2,
.title_contact2,
.title_entry2,
.title_privacy2,
.title_sitemap2,
.title_blog2{
  height: 85px;
}

.t_corp3{
  width: calc(100% - 40px);
}

.copy1{
  color: #fff;
  font-size: 22px;
  position: relative;
  top: 20px;
}

.copy2{
  font-size: 12px;
  margin-top: 6px;
}

.contents_business,
.contents_entry,
.contents_construction,
.contents_recruit{
  padding: 20px 0;
}

.bsn_flex2{
  margin:0;
}

.bsn_flex2 ul{
  padding: 0;
}

.bsn_flex2 ul li{
  flex: 0 1 100%;
  margin: 0 0 20px;
  padding: 20px 20px 10px;
}

.bsn_flex2 ul li:nth-child(2){
  margin: 0;
}

.bsn_title_1_2{
  font-size: 20px;
}

.bsn_title_1_3{
  margin: 20px 0 14px 0;
  font-size: 16px;
  line-height: 34px;
}

.title_construction{
  padding-top: 40%;
  background-image:url(image/construction/title_construction.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.jisseki_1{
  background:#fff;
  width:auto;
  height:auto;
  margin:0 0 20px;
  padding: 0;
  position:relative;
}

.jisseki_1:last-child{
  margin:0;
}

.jisseki_in{
  padding: 20px;
}

.gaiyo_line_jisseki{
  width:auto;
  height:auto;
  display: block;
}

.gaiyo_line_jisseki a{
  width: 100%;
}

.gaiyo_line_jisseki a img{
  height: auto;
}

.gaiyo_line_jisseki a:nth-child(2) img{
  margin-top: 10px;
}

.jisseki_comment{
  height:auto;
  font-size:12px;
  color:#797979;
  line-height:18px;
  margin:10px 0 6px 0;
}

.title_interview{
  padding-top:31.9%;
  background-image:url(image/interview/title_interview.jpg);
  background-repeat:no-repeat;
  background-size:contain;
}

.itv{
  background:#eaf5ec;
  width:auto;
  height:auto;
  padding-bottom:20px;
}

.itv_box2{
  background:#fff;
  width:auto;
  height:auto;
  margin:0 20px 20px 20px;
  padding-bottom:20px;
  position:relative;
  top:20px;
}

.intro{
  width:100%;
  height:100%;
  background-image:url(image/damy_interview_1.jpg);
  background-repeat:no-repeat;
  background-size:100%;
}

.intro_corolress{
  background:#f0f0e8;
  width:auto;
  height:auto;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:20px;
}

.intro_name{
  font-size:14px;
  padding-bottom:10px;
}

.intro_text{
  font-size:12px;
  line-height:20px;
}

.question1{
  color:#00a45b;
  font-size:23px;
  display:flex;
  justify-content:space-between;
  margin-top:25px;
}

.question2_1{
  max-width:50px;
  width:100%;
  height:auto;
  display:flex;
  justify-content:center;
  align-items:center;
}

.Q_num{
  background:#00a45b;
  width:50px;
  height:50px;
  border-radius:4px;
  color:#fff;
  display:flex;
  justify-content:center;
  align-items:center;
}

.question2_2{
  width:100%;
  color:#000;
  display:flex;
  align-items:center;
  line-height:32px;
  padding:5px 0 5px 12px;
}

.answer{
  width:100%;
  font-size:15px;
  text-align:justify;
  line-height:26px;
  border-bottom:2px solid #f4f4f4;
  padding:15px 0;
}

.title_recruit{
  padding-top:31.9%;
  background-image:url(image/recruit/title_recruit.jpg);
  background-repeat:no-repeat;
  background-size:contain;
}

.wrap_recruit .greeting{
  padding: 0px 20px;
}
.wrap_recruit .com_box .greeting:first-child{
  padding: 30px;
}

.recruit_copy1{
  padding-top: 0px;
  margin-top: 20px;
}

.recruit_copy2{
  width:100%;
  height:auto;
  margin-bottom:10px;
  font-size:14px;
  text-align:justify;
  line-height:26px;
}

#recruit_info1,
#recruit_info2{
  background:#00a45b;
  height:60px;
  color:#fff;
  font-size:20px;
  line-height:20px;
  padding-left:20px;
  margin-top: 30px;
}

.title_blog{
  padding-top: 40%;
  background-image:url(image/blog/title_blog.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.contents_blog{
  background:#eaf5ec;
  width:100%;
  height:auto;
  display:-webkit-box;
  display:-moz-box;
  display:box;
  -webkit-box-orient:vertical;
  -moz-box-orient:vertical;
  box-orient:vertical;
}

.contents_blog .com_box{
  display: block;
  padding: 20px;
}

.single_contents .com_box{
  flex-wrap: wrap;
}

.blogbox_left{
  width: 100%;
  padding-bottom: 0;
}

.blogbox_right{
  width: 100%;
  padding-left: 0;
}

#blogbox{
  -webkit-box-ordinal-group: 1;
  -moz-box-ordinal-group: 1;
  box-ordinal-group: 1;
  display: block;
}

#blogbox .article{
  width: 100%;
  margin: 0 0 20px 0;
}

#blogbox .article h2 a{
  width:auto;
  height:auto;
  display:inline-block;
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  color:#000;
  font-size:16px;
  line-height:26px;
  margin-top: 14px;
}

.thumb{
  margin:0;
}

.tit_bx, .ca_bx{
  width:100%;
  height:auto;
  margin-top: -10px;
}

.da_box .date{
  font-family: HiraginoSans-W6, sans-serif;
  font-weight: 600;
  font-size: 13px;
  color: #c2c3c4;;
}

.da_box .date img{
  margin-bottom:-2px;
}

.ca_bx{
  margin-top: 10px;
}

.ca_bx ul li{
  display:inline;
}

.ca_bx li a{
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  font-size: 13px;
  padding: 0 6px;
  margin: 10px 4px 0 0;
  border-radius: 5px;
  display: inline-block;
}

.pagination-box{
  margin-top: 20px;
}

.pagination span.page-of{
  margin: 0 20px 0 0;
}

.single_flex{
  width: 100%;
}

.sg_left{
  margin-top: 0;
  padding: 30px;
}

.sg_left h1{
  margin: 0;
}

.sg_left .post-categories{
  padding: 0;
}

.honbun p{
  margin-top: 0;
  font-size: 18px;
  line-height: 2;
}

.page_single{
  margin-top: 30px;
}

#sidebar{
  width:100%;
  height:auto;
  -webkit-box-ordinal-group:3;
  -moz-box-ordinal-group:3;
  box-ordinal-group:3;
  margin-top: 30px;
}

#sidebar h2{
  width:226px;
  border-bottom:2px solid #fff;
  color:#fff;
  font-size:20px;
  padding-bottom:5px;
  margin:30px 0 10px 20px;
}

#sidebar a{
  color:#797979;
  font-size:16px;
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  transition:0.4s ease-in-out;
}

#sidebar li{
  font-weight:600;
  margin: 0 6vw;
  transition:0.4s ease-in-out;
  border-bottom:2px dashed #ededed;
  width: auto;
}

#sidebar .archive{
  margin-bottom: 20px;
}

.b_title{
  font-size: 20px;
  font-weight: 600;
  padding: 16px 0 16px 40px;
}

#sidebar ul span{
  width:auto;
  height:auto;
  border-bottom:2px solid #fff;
  color:#fff;
  font-size:20px;
  padding:10px 0 5px 0;
  margin:0 20px;
  display:block;
}

#sidebar ul .year{
  width:auto;
  height:auto;
  border-bottom:2px dashed #54c18f;
  color:#fff;
  font-size:16px;
  padding:16px 0 10px 0;
  margin:0 20px;
  display:block;
}

#categories-3{
  margin-top:50px;
}

.cat-item{
  margin-bottom:-5px;
color:#fff;
}

#archives-3{
  color:#fff;
}

#searchform{
  margin: 0;
}

.searchform div {
  width: 100%;
  display: flex;
  justify-content: center;
}

#s{
  width: 200px;
  height: 38px;
}

#searchsubmit{
  height: 38px;
  border: 2px solid #fff;
  border: 2px solid #c2c3c4;
  border-left: none;
}

.title_entry{
  padding-top: 40%;
  background-image:url(image/entry/title_entry.jpg);
  background-repeat:no-repeat;
  background-size: cover;
}

#entry_content1, #entry_content2,
#ety_co3, #ety_co4,
.contact_content1{
  font-size: 18px;
  padding: 15px 10px;
  margin: 0;
}

.entry_space1,
.greeting_in{
  padding: 0 20px;
}

.entry_box1{
  display: block;
}

.entry_box2_1{
  width:auto;
  height:auto;
  display:flex;
  align-items:center;
  border-bottom: 2px dashed #f4f4f4;
}

.entry_box2_2_1 {
  width: 100%;
}

.entry_box2_2{
  width:auto;
  height:auto;
  display:flex;
  align-items:center;
  padding:20px 0;
}

.fbox{
  width: 100%;
  padding:14px 0;
  display: flex;
  margin: 0;
}

.contact_form_1,
.contact_naiyo{
  display: block;
}

.contact_form_2{
  width: 100%;
  border-bottom: 2px dashed #f4f4f4;
  padding-bottom: 20px;
}

.contact_form_3{
  display: flex;
  align-items: center;
}

.entry_box2_1_1,
.contact_form_3_1{/* 必須 */
  border-radius: 5px;
  letter-spacing: 1px;
  font-weight: 600;
  margin-right: 10px;
}

.entry_box2_1_2{
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  font-size:16px;
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  margin-top: 2px;
}

.contact_form_3_2 {
  display: flex;
}

.b_na1,
.b_na2,
.bo_ad,
.b_mail{
  width:97%;
  height:34px;
  border-radius: 0;
}

.b_post{
  width:50%;
  height:34px;
  border-radius: 0;
  margin: 20px 20px 0 0;
}

.entry_box_1line1{
  width:100%;
  font-weight:600;
  font-size:16px;
  display:flex;
  align-items:center;
}

.bo_tel{
  width:97%;
  height:34px;
  margin-top: 20px;
}

.ety_co3_wh{
  border-bottom: solid 2px #f4f4f4;
  display: block;
  padding: 0;
}

.ga3_le{
  width:28%;
  display: flex;
  align-items: center;
}

.ga3_le {
    width: 100%;
    display: flex;
    align-items: center;
    border-bottom: 2px dashed #f4f4f4;
    padding: 10px 0;
}

.ga3_le_2_shi{
  width:auto;
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  font-size:16px;
  display:flex;
  align-items: center;
}

.ety_spa5{
  padding: 20px;
  margin-top: 20px;
}

.sou1_pc{
  display:none;
}

.sou1_sp{
  font-weight:600;
  color:#000;
  font-size: 14px;
  line-height: 26px;
  text-align: center;
}

.sou1_pc a, .sou1_sp a{
  color:#00a45b;
  text-decoration:underline;
  transition:0.5s ease-in-out;
}

.sou2{
  font-size:14px;
  line-height: 22px;
  margin-top: 10px;
}

.sou3{
  width: auto;
  height: auto;
  display: flex;
  justify-content: center;
}

.sou3_1, .modoru_btn{
  width: 150px;
  height: 60px;
  border-radius: 10px;
  font-size: 18px;
  display: flex;
  justify-content: center;
  transition: 0.4s ease-in-out;
}

.modoru_btn{
  background:#9fa0a0;
  float:left;
  margin-right:30px;
}

.error{
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  color: red !important;
  margin-top: 20px;
  border-bottom: 2px dashed dodgerblue;
  width: auto;
  padding-bottom: 12px;
  display: inline-block !important;
  font-size: 12px !important;
}

.title_contact{
  padding-top:31.9%;
  background-image:url(image/contact/title_contact.jpg);
  background-repeat:no-repeat;
  background-size:contain;
}

.wrap_contact .com_box{
  display: block;
  padding: 20px;
}

.contents_contact{
  padding-bottom: 0;
}

.cont_bx1,
.telfax_bx1{
  padding: 0;
  display: block;
}

.cont_bx2{
  width: 100%;
  margin: 0;
  padding-top: 28.6%;
}

.cont_bx1 .cont_bx2:nth-child(2){
  margin: 20px 0 0;
}

.contact_right{
  width: 100%;
  padding-top: 20px;
}

.contact_form_4{
  margin-bottom: -20px;
  padding: 10px 0;
  display: flex;
  flex-direction: inherit;
  flex-wrap: wrap;
}
.contact_form_4 span{
  margin: 12px 20px 11px;
  margin-left: 0 !important;
}
.contact_naiyo{
  display: block;
}

.contact_naiyo_2{
  width: 100%;
}

.contact_naiyo_right{
  border-top: 2px dashed #f4f4f4;
  width: 100%;
  margin-top: 20px;
  padding-top: 20px;
}

.contact_war_1{
  display: flex;
  align-items: center;
  line-height: 20px;
  width: 100%;
  margin: 0 auto;
}

.contact_war_1 .wpcf7-form-control-wrap{
  width: 60px;
}

.contact_war_2{
  margin-left: 0;
}

input.spam1 {
  margin-right: 15px;
}

.soushinbtn{
  width: 50%;
  font-size: 20px;
  min-width: 260px;
}

.contact_info1{
  display:none;
}

.contact_info2{
  display:flex;
  justify-content: space-between;
  margin:0 5vw;
}

.contact_info4{
  width:41vw;
  height:18vw;
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  font-size:4vw;
  line-height: 6vw;
  text-align: center;
  background-image:url(image/recruit/contact_back_sp.jpg);
  background-repeat:no-repeat;
  background-size:contain;
  display:flex;
  justify-content:center;
  align-items:center;
  transition:0.5s ease-in-out;
}

.contact_info4:hover{
  background-image:url(image/recruit/contact_back_hover_sp.jpg);
}

#recrui_space{
  margin:20px 0 0;
}

.contact_content1{
  font-size: 18px;
  display: flex;
  align-items: center;
  margin: 0;
  line-height: 22px;
  padding: 14px 10px;
}

.greeting_in{
  width:auto;
  margin: 0;
  padding: 0;
}

.hihyouji{
  display:none;
}

.wrap_entry_done{
  margin: 0 -4vw;
}

.contents_entry2{
  background:#eaf5ec;
  width:auto;
  height:auto;
  padding-bottom:5vw;
  overflow: hidden;
}

.d_box1{
  width: auto;
  height: auto;
  padding: 5vw;
}

.d_box2{
  background: #fff;
  width: auto;
  height: auto;
  margin: 30px 0;
  border-top: 3px solid #ceecdd;
  border-bottom: 3px solid #ceecdd;
}

.d_box3{
  background: #fff;
  padding:7vw 0;
}

.done_com1{
  font-size: 18px;
  color: #00a45b;
  border-bottom: 2px dashed #ceecdd;
  padding-bottom: 20px;
  line-height: 28px;
}

.done_com2{
  padding-bottom: 20px;
}

.done_com4{
  width: auto;
  height: 30px;
  background-image: url(image/entry/corn_entry_done01.svg);
  background-repeat: round;
  position: relative;
  bottom: -8px;
}

.title_sitemap{
  padding-top: 40%;
  background-image:url(image/sitemap/title_sitemap.jpg);
  background-repeat:no-repeat;
  background-size: cover;
}

.contents_sitemap{
  background:#eaf5ec;
  width:auto;
  height:auto;
  overflow: hidden;
  padding: 20px;
}

.map1_in{
  background: #eaf5ec;
  width: auto;
  height: auto;
  font-size: 16px;
  display: flex;
  align-items: center;
  border: 1px solid #eaf5ec;
  transition: 0.4s ease-in-out;
  font-family: HiraginoSans-W6, sans-serif;
  font-weight: 600;
  padding: 26px 0 26px 14px;
}

.map1_child2{
  margin: 4vw 0 4vw 10vw;
}

.map1_in_blog{
  background: #eaf5ec;
  width: auto;
  height: auto;
  font-size: 16px;
  display: flex;
  align-items: center;
  border: 1px solid #eaf5ec;
  transition: 0.4s ease-in-out;
  font-family: HiraginoSans-W6, sans-serif;
  font-weight: 600;
  padding: 26px 0 26px 14px;
  margin:4vw 0;
}

.map1_in:hover{
  background:#fef9f2;
  border:1px solid #d8d9d9;
  color:#777;
}

.map1_child{
  background: #f6fbf7;
  width: auto;
  height: auto;
  border: 1px solid #f6fbf7;
  transition: 0.4s ease-in-out;
  font-family: HiraginoSans-W6, sans-serif;
  font-weight: 600;
  padding: 26px 0 26px 14px;
  margin: 4vw 0 0 10vw;
}

.map1_child:hover{
  background:#fef9f2;
  border:1px solid #d8d9d9;
  color:#777;
}

.site_space1{
  margin: 0;
  padding: 35px;
}

.st_map{
  width: 100%;
}

.st_map .main,
.st_map .sub{
  font-size: 16px;
}

.title_privacy{
  padding-top: 40%;
  background-image:url(image/privacy/title_privacy.jpg);
  background-repeat:no-repeat;
  background-size: cover;
}

.contents_privacy{
  background:#eaf5ec;
  width:auto;
  height:auto;
  padding:5vw;
}

.privacy_space1{
  background:#fff;
  padding:4vw;
}

.pri1{
  width: 100%;
  height: auto;
  margin: 0;
}

.pri1_ti{
  font-family: HiraginoSans-W6, sans-serif;
  font-weight: 600;
  font-size: 20px;
  display: flex;
  align-items: center;
  height: auto;
  line-height: 30px;
  margin-top: 8px;
}

.pri1_txt{
  font-size:16px;
  line-height:28px;
  margin-top:20px;
  text-align: justify;
}

.pri2_ti{
  font-size: 18px;
  margin-top: 40px;
  text-align: justify;
  padding-left: 16px;
  text-indent: -22px;
}

.arrow_gre {
  display:inline-block;
  width:10px;
  height:10px;
  border-top:3px solid #98dabb;
  border-right:3px solid #98dabb;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position:relative;
  top:-2px;
  margin-right:10px;
}

.pri2_txt{
  font-size:16px;
  line-height:28px;
  margin: 16px 14px 0 14px;
}

.pri2_txt ul li{
  list-style-type: disc;
  list-style-position: inside;
  line-height: 30px;
  padding-left: 23px;
  text-indent: -23px;
  margin: 14px 0 0;
}

.pri3_1{
  margin-top:8px;
  padding-bottom:14px;
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
  font-size: 16px;
}

.pri3_2{
  border:1px solid #c2c3c4;
  margin-top:20px;
  padding: 20px;
  font-size: 14px;
}

#telfax_space {
  margin-top: 30px;
}

.telfax_1{
  position:relative;
  top:-5vw;
  padding-bottom: 5vw;
}

.telfax_bx2{
  width:  100%;
  height: auto;
  padding: 20px;
  margin: 0;
}

.telfax_bx2:nth-child(2){
  margin: 20px 0 0;
}

.telfax_bx2 p:first-child{
  font-size: 20px;
}

.telfax_bx2 .info3{
  font-size: 16px;
}

.tel_num img {
  width: 19px;
  margin-right: 5px;
}

.tel_num p{
  font-size: 29px;
  font-weight: 700;
}

.contact_line1 {
  padding: 0 15px;
}

.wrap_contact #footer{
  top: 0;
}

.footer_box{
  width: 100%;
  margin: 0;
  padding: 0;
  padding: 20px;
}
.ft_cts_box{
  width: 100%;
}
.info_2_1 a, .info_2_2 a, .info_2_3 a{
  color:#000;
  background:red;
}

.info_2_1 img, .info_2_2 img, .info_2_3 img{
  margin-right:6px;
}

.info_2_1_in, .info_2_2_in, .info_2_3_in{
  background:#fff;
  border-bottom:solid 2px #f4f4f4;
  width:100%;
  height:46px;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:5px 0;
  transition:0.4s ease-in-out;
}

.info_2_2_in, .info_2_3_in{
  color:#9fa0a0;
}

.info_2_1_in:hover{
  background-color:#ffcbb9;
  color:#575757;
}

.info_2_2_in:hover{
  background-color:#ffcbb9;
  color:#b7b7b7;
}

.info_2_3_in:hover{
  background-color:#ffcbb9;
  color:#b7b7b7;
}

.info_2_1_in img,
.info_2_2_in img,
.info_2_3_in img{
  transition-property: all;
  transition:opacity 0.7s ease-in-out;
}

.info_2_1_in:hover img{
  opacity:0.5;
  filter:alpha(opacity=50);
  -ms-filter:"alpha(opacity=50)";
}

.info_2_2_in:hover img{
  opacity:0.6;
  filter:alpha(opacity=60);
  -ms-filter:"alpha(opacity=60)";
}

.info_2_3_in:hover img{
  opacity:0.6;
  filter:alpha(opacity=60);
  -ms-filter:"alpha(opacity=60)";
}

address{
  width: calc(100% - 20px);
  background-size: 100px;
  padding: 20px 0 25px;
}

#copyright{
  background:#00a45b;
  height:auto;
  font-size:11px;
  color:#fff;
  text-align:center;
  line-height: 16px;
  padding: 10px 0;
}

.wpcf7-mail-sent-ok{
  background: coral;
  width: auto;
  height: 50vw;
  border: none !important;
  margin: 0 !important;
  line-height: 30px;
  display: flex !important;
  justify-content: center;
  align-items: center;
  margin: 0 -4vw !important;
  color: #fff;
  font-family:HiraginoSans-W6, sans-serif;
  font-weight:600;
}

.none{
  display:none;
}

#wpfront-scroll-top-container img{
  bottom: 35px;
}

.blinking{
  font-weight:bold;
  color:red;
  -webkit-animation:blink 1.5s ease-in-out infinite alternate;
  -moz-animation:blink 1.5s ease-in-out infinite alternate;
  animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

.display_pc{
  display: none;
}

.display_sp{
  display: block;
}

.award_sp_outer{
  background: #eaf5ec;
  padding: 100px 20px 40px;
}

.award_sp{
  position: relative;
  border-radius: 20px;
  background: rgba(255,255,255,1.0);
  padding: 20px 15px 18px;
}

.award_sp > .title{
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  position: relative;
}

.award_sp > .title::before{
  content: '';
  width: 215px;
  height: 2px;
  background-image: linear-gradient(135deg, #a79756, #faf8c5, #a79756);
  display: block;
  position: relative;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 0 6px;
}

.award_sp > .title::after{
  content: '';
  width: 215px;
  height: 2px;
  background-image: linear-gradient(135deg, #a79756, #faf8c5, #a79756);
  display: block;
  position: relative;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 3px 0 0;
}

.award_sp > .flex{
  display: flex;
  justify-content: center;
  margin: 15px 0 0;
}

.award_sp::before{
  content: '';
  width: 110px;
  height: 30px;
  display: block;
  background: url(image/top/decoration_sp1.png);
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
}

.award_sp::after{
  content: '';
  width: 110px;
  height: 30px;
  display: block;
  background: url(image/top/decoration_sp2.png);
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
}

.award_sp > .flex > img{
  width: auto;
  height: 130px;
  margin: 0 10px;
}
.p_top-news{
  width: 100%;
  margin: 40px 0 80px;
}
.p_top-news .link-btn:hover{
  background-color: #00a45b;
  color: #fff;
}
.p_top-news .link-btn:hover:before{
  background: url(image/top/arrow-wh.svg) no-repeat center / cover;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.p_top-news ul li a:hover .inner{
  transform: translateX(0);
}
.p_top-news ul li a:hover .inner p{
  color: #000;
}
.contact_war_2_inner{
  width: 100%;
  justify-content: center;
}
.contact_war_2_inner .submit-btn{
  width: calc(50% - 7px);
  max-width: 240px;
  height: 55px;
}
.page-template-page-contact-comfirm .contact_war_2_inner .submit-btn.return{
  margin-right: 14px;
}
.contact_war_2_inner .submit-btn.soushin::before{
  width: 7px;
  height: 7px;
  right: 7px;
  top: 21px;
}
.contact_war_2_inner .submit-btn.return::before{
  left: 9px;
  top: 21px;
}
.contact_war_2_inner .submit-btn input{
  font-size: 16px;
  padding-top: 4px;
}
.sp-br{
 display: none;
}



}
/******************

スマホ 調整 750px end

******************/



/*****************

調整 700px start

*****************/
@media screen and (max-width: 700px){
.main_photo{
  margin-top: 380px;
  margin-top: 400px;
}
.top_copy{
  font-size: 19px;
  left: 14px;
  bottom: 12px;
}



}
/*****************

調整 700px end

*****************/



/*****************

調整 600px start

*****************/
@media screen and (max-width: 600px){
.top_copy{
  /*
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  left: auto;
  right: 24px;
  bottom: auto;
  top: 33px;
  */
}
.top_copy br{
  display: block;
}
.p-awards__img-body.pt2 .gaiyo_line_jisseki a img{
  margin: 0;
}
.main_photo{
  background-position-y: 12vw;
}
  
}
/*****************

調整 600px end

*****************/



/*****************

調整 500px start

*****************/
@media screen and (max-width: 500px){
.main_photo{
  background-size: 131vw;
  padding-top: 100vw;
  background-position-y: 28vw;
}
  
}
/*****************

調整 500px end

*****************/


/*****************

調整 400px start

*****************/
@media screen and (max-width: 400px){
.main_photo{
  padding-top: 110vw;
  background-position-y: 35vw;
}

}
/*****************

調整 400px end

*****************/