@charset "UTF-8";
@import url("reset.css");
/*reset.css読込*/
body {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif !important; }

.inner {
  width: 1000px;
  margin-left: auto;
  margin-right: auto; }

.top_banner {
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  height: 80px; }

.heading {
  display: flex;
  align-items: center; }
  .heading a {
    display: flex;
    align-items: center;
    text-decoration: none; }

.heading img {
  margin: 0 10px 0 20px;
  width: 70px; }

.heading h1 {
  color: #129760;
  font-weight: bold;
  font-size: 24px; }

.navigation {
  display: flex;
  align-items: center;
  height: 100%; }

.navigation nav ul {
  display: flex;
  align-items: center;
  height: 80px; }

.navigation nav ul li {
  height: 100%;
  display: flex;
  align-items: center;
  transition-duration: .5s; }
  .navigation nav ul li:hover {
    background-color: #fdef92; }

.navigation nav ul li a {
  text-decoration: none;
  color: #000;
  margin: 0 20px;
  font-size: 16px;
  display: flex;
  align-items: center;
  height: 100%; }

.navigation nav ul li a::after {
  content: '';
  display: inline-block;
  vertical-align: 30%;
  width: 5px;
  height: 5px;
  margin: 0 0 0 10px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  transform: rotate(45deg); }

.inquiry {
  width: 235px;
  height: 100%;
  margin: 0 0 0 130px;
  background: #01ae75; }

.inquiry a {
  justify-content: center;
  align-items: center;
  display: flex;
  height: 100%;
  width: 100%;
  text-decoration: none;
  color: aliceblue;
  font-size: 16px;
  transition-duration: .5s; }
  .inquiry a:hover {
    background-color: rgba(255, 255, 255, 0.3); }

.p_banner_image {
  background-repeat: no-repeat;
  height: 870px;
  position: relative;
  background-size: cover;
  margin: 80px 0 0 0; }

/*.p_banner_image .slider div{
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 870px;
  text-decoration: none;
}*/
/*.p_banner_image .img01{
  background: url(../img/common/main_img1.jpeg) no-repeat;
}
.p_banner_image .img02{
  background: url("../img/common/main_img2.jpeg") no-repeat;
}
.p_banner_image .img03{
  background: url(../img/common/main_img3.jpeg) no-repeat;
}
.p_banner_image .img04{
  background: url(../img/common/main_img4.jpeg) no-repeat;
}
.p_banner_image .img05{
  background: url(../img/common/main_img5.jpeg) no-repeat;
}*/
.p_banner_image .slick-dots {
  bottom: 4%;
  z-index: +1; }

.center_p_img {
  position: absolute;
  top: 22%;
  left: 0;
  right: 0;
  text-align: center; }

.p_banner_image p {
  font-size: 24px;
  color: #fff;
  text-align: center;
  letter-spacing: 5px;
  text-shadow: 2px 2px 2px #666; }

main {
  margin: 50px 0 0 0; }

.section_aboutus {
  position: relative;
  height: 585px;
  background: url(../img/common/concrete.jpeg) no-repeat right top transparent; }

.bg_about {
  background: url("../img/common/bg_about.jpg") no-repeat left top transparent;
  width: 80%;
  height: 274px;
  position: absolute;
  top: 0;
  left: 0; }

.greenback_mixercar {
  position: relative;
  text-align: center; }

.section_aboutus h2 {
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  padding: 35px 0 45px 0; }

.section_aboutus h2::before {
  content: '';
  background: url("../img/common/icon_mixcer.png") no-repeat 0 0 transparent;
  width: 56px;
  height: 38px;
  display: block;
  margin: 0 auto 1rem; }

.section_aboutus .island_img {
  display: flex;
  align-items: center;
  background-color: #fff;
  border: solid 1px #fff;
  height: 245px;
  box-shadow: 0 0 8px gray; }

.island_img img {
  max-width: 277px;
  width: 100%;
  height: auto; }

.section_p_h3 {
  margin: 0 30px; }

.section_p_h3 h3 {
  font-size: 24px;
  margin: 15px 0; }

.section_p_h3 p {
  font-size: 16px;
  line-height: 2;
  text-align: justify; }

.section_attempt {
  position: relative;
  height: 710px;
  background: url("../img/common/operator.jpeg") no-repeat left top transparent; }

.construction {
  border: 1px solid #fff;
  background: #fff;
  box-shadow: 0 0 8px gray;
  width: 282px;
  overflow: hidden;
  transition-duration: .5s; }
  .construction a {
    text-decoration: none;
    color: #000; }
  .construction:hover {
    background-color: #efefef; }

.construction img {
  max-width: 277px;
  width: 100%;
  height: auto;
  transition-duration: .5s; }

.construction a:hover img {
  transform: scale(1.1); }

.construction h3 {
  margin: 20px 20px 0 20px;
  font-size: 18px;
  font-weight: bold; }

.construction p {
  font-size: 15px;
  margin: 20px 20px 20px 20px;
  line-height: 1.5; }

.bg_attempt {
  background: url("../img/common/bg_yerrowmixercar.jpg") no-repeat right top transparent;
  width: 80%;
  height: 274px;
  position: absolute;
  top: 0;
  right: 0; }

.section_attempt h2 {
  color: #129760;
  font-size: 20px;
  font-weight: bold;
  padding: 35px 0; }

.section_attempt h2::before {
  content: '';
  background: url("../img/common/icon_operator.jpg.png") no-repeat 0 0 transparent;
  width: 56px;
  height: 38px;
  display: block;
  margin: 0 auto 1rem;
  padding: 0 0 20px 0; }

.yerrowback_operator {
  position: relative;
  text-align: center; }

.section_attempt .concrete_construction_images {
  display: flex;
  text-align: center;
  justify-content: space-between; }

.section_introduction {
  position: relative;
  height: 670px;
  background: url("../img/common/bridge.jpeg") no-repeat right top transparent;
  box-shadow: 0px 10px 10px #ccc; }

.bg_introduction {
  background: url("../img/common/bg_green_introduction.jpg") no-repeat left top transparent;
  width: 80%;
  height: 274px;
  position: absolute;
  top: 0;
  left: 0; }

.company_profile {
  position: relative;
  text-align: center; }

.section_introduction h2 {
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  padding: 35px 0 40px 0; }

.section_introduction h2::before {
  content: '';
  background: url("../img/common/icon_rogo.jpg.png") no-repeat 0 0 transparent;
  width: 56px;
  height: 48px;
  display: block;
  margin: 0 auto 1rem; }

.some_corporate {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 26px; }

.section_introduction h3 {
  margin: 35px 0 25px 0;
  line-height: 25px;
  font-size: 16px; }

.section_introduction p {
  margin: 15px 0 35px 0;
  font-size: 16px; }

.h3_p_phoneno {
  width: 230px;
  background: #fff;
  border-left: 10px solid;
  box-shadow: 0 0 8px gray; }
  .h3_p_phoneno img {
    width: 24px; }

.h3_p_phoneno:nth-of-type(1) {
  border-left-color: #0aaf6b; }

.h3_p_phoneno:nth-of-type(2) {
  border-left-color: #0cb2b4; }

.h3_p_phoneno:nth-of-type(3) {
  border-left-color: #c2a9cc; }

.h3_p_phoneno:nth-of-type(4) {
  border-left-color: #f29fab; }

.h3_p_phoneno:nth-of-type(5) {
  border-left-color: #e38987; }

.h3_p_phoneno:nth-of-type(6) {
  border-left-color: #f3bf96; }

.h3_p_phoneno:nth-of-type(7) {
  border-left-color: #f2e487; }

footer {
  display: block;
  font-size: 0; }

iframe {
  width: 100%;
  height: 400px; }

.company_info {
  text-align: center;
  margin: 0 auto;
  padding: 30px 0 0 0;
  background: #666; }

.company_info img {
  width: 70px;
  height: 50px;
  margin: 0 0 20px 0; }

.company_info h2 {
  font-weight: bold;
  font-size: 24px;
  margin: 0 0 20px 0;
  color: #fff;
  font-style: normal;
  letter-spacing: 2px; }

.company_info a {
  color: #fff;
  font-style: normal;
  font-size: 20px;
  text-decoration: none;
  pointer-events: none; }

.company_info .company_name p {
  margin: 0 0 20px 0;
  color: #fff;
  font-style: normal;
  font-size: 16px;
  letter-spacing: 2px; }

.company_info .company_address p {
  margin: 0 0 20px 0;
  color: #fff;
  font-style: normal;
  font-size: 16px; }

.company_info .copyright {
  padding: 60px 0 30px 0;
  display: block;
  align-items: center; }

.company_info .copyright p {
  color: #fff;
  font-style: normal;
  font-size: 12px; }

/*------------ここから與那覇---------------*/
.container {
  width: 1080px;
  margin: 0 auto; }

.img-fluid {
  width: 100%;
  height: auto; }

nav .current {
  background-color: #fdef92; }

.fl_box {
  display: flex; }

.subpage_main {
  margin-top: 80px;
  background: url("../img/common/main_company.jpg") no-repeat center center transparent;
  height: 365px;
  background-size: cover;
  border-bottom: 10px solid #fce549;
  position: relative; }
  .subpage_main h2 {
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    font-weight: bold; }
    .subpage_main h2 span {
      background-color: #fce549;
      color: #02ba7d;
      padding: .8em 1.5em;
      font-size: 30px;
      display: inline-block; }

#company .inner {
  width: 880px;
  margin: 0 auto;
  padding-top: 30px; }
  #company .inner .info {
    margin: 50px 0; }
    #company .inner .info dl {
      width: 100%;
      line-height: 1.7; }
      #company .inner .info dl dt, #company .inner .info dl dd {
        padding: 2rem; }
      #company .inner .info dl dt {
        border-bottom: 1px solid #01a36d;
        width: 30%;
        display: flex;
        align-items: center;
        justify-content: center; }
      #company .inner .info dl dd {
        border-bottom: 1px solid #000;
        width: 70%;
        padding-left: 5rem; }

#group .subpage_main {
  background: url("../img/common/main_group.jpg") no-repeat center center transparent; }
#group .group_head {
  background-color: #666;
  color: #fff;
  padding: 3rem;
  font-size: 17px;
  line-height: 2;
  margin-bottom: 4rem; }
#group .group_box {
  border-top: 1px solid #000;
  padding: 1.5rem 0; }
  #group .group_box dl {
    border-left: 5px solid #02b97c;
    padding: 2rem 3rem;
    line-height: 1.7;
    font-size: 17px; }
    #group .group_box dl dt {
      text-align: center;
      width: 30%;
      margin-right: 3rem;
      font-weight: bold; }
      #group .group_box dl dt a {
        pointer-events: none;
        text-decoration: none;
        color: #000;
        font-weight: normal; }

#product .subpage_main {
  background: url("../img/common/main_product.jpg") no-repeat center center transparent; }
#product h3.title_center {
  text-align: center;
  font-size: 26px;
  font-weight: bold;
  line-height: 1.5;
  margin: 1.5rem 0 3rem; }
  #product h3.title_center span {
    border-bottom: 5px solid #02bb7d;
    padding-bottom: .5rem; }
#product .product_box {
  max-width: 1000px;
  margin: 0 auto 50px;
  line-height: 2.3; }
  #product .product_box .fl_box {
    justify-content: space-between; }
  #product .product_box .text_box {
    padding: 1rem 2rem;
    box-sizing: border-box;
    max-width: 530px; }
    #product .product_box .text_box h4 {
      font-size: 24px; }
#product .product_illust {
  margin: 0 auto 50px;
  max-width: 1000px;
  text-align: center;
  line-height: 2.3; }
  #product .product_illust p {
    line-height: 2;
    margin-bottom: 1rem; }
  #product .product_illust img.sp_none {
    max-width: 800px; }
#product .img_left .img_box {
  margin-right: 3rem;
  margin-bottom: 1rem;
  width: 410px; }
#product .img_left .text_box {
  border-left: 5px solid #fce549; }
#product .img_right .img_box {
  margin-left: 3rem;
  width: 410px; }
  #product .img_right .img_box img {
    margin-bottom: .5rem; }
#product .img_right .text_box {
  border-left: 5px solid #fce549; }

#catalog .subpage_main {
  background: url("../img/common/main_catalog.jpg") no-repeat center center transparent; }
#catalog .catalog_img {
  margin-bottom: 50px; }
  #catalog .catalog_img .img_box {
    max-width: 300px;
    margin-right: 3rem; }
    #catalog .catalog_img .img_box img {
      border: 1px solid #efefef;
      box-shadow: 3px 3px 7px #8f8f8f; }
  #catalog .catalog_img .text_box {
    border-left: 5px solid #fce549;
    padding: 1rem 2rem; }
    #catalog .catalog_img .text_box p {
      margin-bottom: 2rem; }
    #catalog .catalog_img .text_box h4 {
      font-size: 20px;
      font-weight: bold;
      margin-bottom: 2rem; }
    #catalog .catalog_img .text_box .dl_btn {
      display: inline-block;
      padding: 1rem 3rem;
      background-color: #01ae75;
      color: #fff;
      text-decoration: none;
      border-radius: 5px;
      transition-duration: .5s; }
      #catalog .catalog_img .text_box .dl_btn:hover {
        opacity: .7; }
#catalog h3.title_center {
  text-align: center;
  font-size: 26px;
  font-weight: bold;
  line-height: 1.5;
  margin: 1.5rem 0 3rem; }
  #catalog h3.title_center span {
    border-bottom: 5px solid #02bb7d;
    padding-bottom: .5rem; }

.pc_none {
  display: none; }

.navigation nav ul li.pc_none {
  display: none; }

#group .group_box dl dt .tel_link {
  display: flex;
  justify-content: center;
  align-items: center; }
  #group .group_box dl dt .tel_link::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f095";
    margin-right: 1rem; }

#inquiry {
  line-height: 1.7; }
  #inquiry h3.title_center {
    text-align: center;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.5;
    margin: 1.5rem 0 3rem; }
    #inquiry h3.title_center span {
      border-bottom: 5px solid #02bb7d;
      padding-bottom: .5rem; }
  #inquiry form table {
    width: 100%;
    margin-bottom: 2rem; }
    #inquiry form table td, #inquiry form table th {
      padding: 1rem; }
    #inquiry form table th {
      border-bottom: 1px solid #02bb7d;
      vertical-align: middle; }
    #inquiry form table td {
      border-bottom: 1px solid #ccc; }
  #inquiry form input,
  #inquiry form textarea {
    padding: .5rem;
    border-radius: 5px;
    border: 2px solid #ccc;
    font-size: 16px; }
  #inquiry form .submit_btn {
    padding: 1rem 3rem;
    display: block;
    margin: 30px auto;
    background-color: #02bb7d;
    color: #fff; }
  #inquiry .inner {
    width: 700px;
    margin: 0 auto; }

#thanks {
  line-height: 1.7;
  margin-bottom: 50px; }
  #thanks h3.title_center {
    text-align: center;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.5;
    margin: 1.5rem 0 3rem; }
    #thanks h3.title_center span {
      border-bottom: 5px solid #02bb7d;
      padding-bottom: .5rem; }
  #thanks p {
    text-align: center; }

.map {
  display: flex; }

#group .group_box dl dd {
  width: 70%; }

/*#group .group_box dl dd.web {
	position: relative;
	display: flex;
	justify-content: space-between;
	&::after {
		content: '';
		background: url("../img/common/group_web.png") no-repeat center center transparent;
		width: 70px;
		height: 70px;
		background-size: 100%;
		display: block;
	}
}*/
h3.title_center {
  font-weight: bold; }

.namacon {
  flex-wrap: wrap; }
  .namacon .item_box {
    width: 32%;
    margin-bottom: 1rem; }
    .namacon .item_box h5 {
      font-size: 1.1rem;
      font-weight: bold;
      text-align: center; }
