/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/
/*COMMON*/
/*FONTS*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP&display=swap');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1:wght@100..900&display=swap');
/*FONTS*/
body{
 line-break: strict !important;
 word-break: break-word !important;
 overflow-wrap: break-word !important;
 word-wrap: break-word !important;
 font-family: 'Noto Sans JP', sans-serif;
 font-size:1.13rem;
 line-height:1.6;
 background-color:#f5f5f5;
}
.entry-meta{display:none;}
/*HEADER*/
.header_scrolled .header-top, .header_scrolled .site-header-logo, .header_scrolled .site-header-sub, .header_scrolled .vk-campaign-text{
 display:block;
}
.header_scrolled.admin-bar .site-header{
 background:rgba(245,245,245,0.8);
}
#site-header{
 height:80px;
 box-shadow:none;
}
.site-header-logo{
 padding-top:16px;
 margin-bottom:5px;
}
.site-header-logo img{
 width:300px;
}
.site-header-logo a{
 position:relative;
 display:block;
 padding-bottom:20px;
}
.site-header-logo a:before{
 position:absolute;
 content:"愛知県知事許可（般-31）第67578号";
 bottom:-7px;
 left:40px;
 font-size:10px;
}
.home .site-body{
 padding-top:0;
}
.global-nav-list li .global-nav-name{
 font-size:16px;
 transition-duration: .3s;
}
.global-nav-list li .global-nav-name:hover{
 color:#6a258a;
}
/*FOOTER*/
.site-footer{
 background-color:#e6e6e6;
}
.site-footer-content .row .col-lg-4:nth-child(1){
 max-width:100%;
 flex:none;
 display:none;
 text-align:center;
}
.site-footer-content .row {
 justify-content:center;
 gap:2rem
}
.widget_media_image{
 text-align:left;
 margin:0;
}
.footer-logo{
 margin:0 0 2px;
 max-width:500px;
 width:100%;
 max-height:52px;
}
.footer-parmission-no{
 margin:0 0 5px;
 padding:0 0 0 4rem;
 font-size:13px;
}
.site-footer-content .row .col-lg-4:nth-child(2), .site-footer-content .row .col-lg-4:nth-child(3){
 max-width:calc((100% - 40px) / 2);
 flex:0 0 calc((100% - 40px) / 2);
 font-size:1.13rem;
}
.site-footer-copyright p:nth-child(2) {
 display:none!important;
}
.site-footer .address, .site-footer .phone, .site-footer .instagram, .site-footer .x{
 position:relative;
 display:block;
 padding:10px 0 10px 40px;
}
.site-footer .address::before{
 position:absolute;
 content:"";
 top:calc(50% - 15px);
 left:0;
 width:30px;
 height:30px;
 background-image:url(../../uploads/footer-address.svg);
}
.site-footer .phone::before{
 position:absolute;
 content:"";
 top:calc(50% - 15px);
 left:0;
 width:30px;
 height:30px;
 background-image:url(../../uploads/footer-phone.svg);
}
.site-footer .instagram::before{
 position:absolute;
 content:"";
 top:calc(50% - 15px);
 left:0;
 width:30px;
 height:30px;
 background-image:url(../../uploads/footer-instagram.svg);
}
.site-footer .x::before{
 position:absolute;
 content:"";
 top:calc(50% - 10px);
 left:3px;
 width:24px;
 height:24px;
 background-image:url(../../uploads/x-icon.svg);
}
.site-footer .footer-contact, .site-footer .footer-line{
 display:block;
}
.site-footer .footer-contact a{
 display:block;
 position:relative;
 width:100%;
 margin:0 auto 20px;
 padding:18px 60px 18px 80px;
 font-size:1.75rem;
 font-weight:bold;
 color:#6a258a;
 text-align:center;
 border:4px solid #fff;
 background-color:#f2f2f2;
 border-radius:20px;
 transition-duration: .5s;
}
.site-footer .footer-contact a:hover, .site-footer .footer-line a:hover{
 border:4px solid #6a258a;
}
.site-footer .footer-contact a p, .site-footer .footer-line a p{
 display:block;
 margin:0 auto;
 padding:0;
 font-size:1rem;
 color:#6a258a;
 text-align:center;
}
.site-footer .footer-contact a::before{
 position:absolute;
 display:block;
 content:"";
 top:calc(50% - 14px);
 left:30px;
 width:40px;
 height:28px;
 background-image:url(../../uploads/footer-contact-mail.svg);
}
.site-footer .footer-line a{
 display:block;
 position:relative;
 width:100%;
 margin:0 auto;
 padding:14px 60px 14px 80px;
 font-size:1.25rem;
 font-weight:bold;
 color:#6a258a;
 text-align:center;
 border:4px solid #fff;
 background-color:#f2f2f2;
 border-radius:20px;
 transition-duration: .5s;
}
.site-footer .footer-line a::before{
 position:absolute;
 display:block;
 content:"";
 top:calc(50% - 20px);
 left:30px;
 width:40px;
 height:40px;
 background-image:url(../../uploads/line-icon.svg);
background-repeat:no-repeat;
}
.site-footer .footer-line a figure{
 margin:0 auto;
 padding:0;
 width:60px;
 height:60px;
}
.site-footer a{
 color:#333;
}
@media (max-width: 1119px) {
.home .entry-body{
 padding:0 20px;
}
.site-header-logo a:before{
 left:2.5rem;
}
}
@media (max-width: 991px) {
.site-header-logo a:before{
 left:0;
 width:100%;
 text-align:center;
}
}
@media (max-width: 767px) {
#vk-mobile-nav-menu-btn{
 top:18px;
 left:auto;
 right:10px;
 border-color:#6a258a;
 color:#6a258a;
}
#vk-mobile-nav-menu-btn ul li a {
 color:#6a258a;
}
.site-header-logo img{
 padding-right:20px;
}
.site-footer-content .row .col-lg-4:nth-child(2), .site-footer-content .row .col-lg-4:nth-child(3){
 max-width:100%;
 flex:none;
}
}
/*トップに戻るボタン*/
.page_top_btn{
 bottom:0;
 width:60px;
 height:70px;
 border-top-left-radius:30px;
 border-top-right-radius:30px;
box-shadow:none;
}
/*TOPPAGE*/
body.home{
 background-color:#f5f5f5;
}
.home .site-body-container{
 padding:0;
}
.home .site-body-container, #site-header-container{
 width:100%;
 max-width:100%;
}
.home .toppage-main-box{
 margin:0 auto;
 padding:0 2rem;
 width:100%;
}
.home .toppage-main{
 display:block;
 position:relative;
 margin:0 auto;
 max-width:100%;
 width:100%;
 height:850px;
 overflow:hidden;
 border-radius:100px;
 background-color:#c1e6fa;
}
.home .toppage-main .top-animation-box{
 display:block;
 position:absolute;
 top:0;
 right:0;
 width:1498px;
 max-width:1498px;
height:731px;
}
.home .toppage-main .top-animation-box .image-front, .home .toppage-main .top-animation-box .image-back{
 display:block;
 position:absolute;
 top:0;
 right:0;
 width:100%;
}
.home .toppage-main .top-animation-box .train{
 position:absolute;
 top:-150px;
 left:-135px;
 width:120px;
 animation: moveTrain 20s linear infinite;
}
.home .toppage-main .top-animation-box .train2{
 position:absolute;
 top:420px;
 left:750px;
 width:120px;
 animation: moveTrain2 20s linear infinite;
}
@keyframes moveTrain {
  0% {
    transform: translate(0, 0);
  }
  30%, 100% {
    transform: translate(850px, 510px);
  }
}
@keyframes moveTrain2 {
  0%, 50% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(1000px, -570px);
  }
}
.home .toppage-main .top-animation-box .car1{
 position:absolute;
 top:412px;
 right:-50px;
 width:25px;
 animation: moveCarDown 20s linear infinite;
}
.home .toppage-main .top-animation-box .car2{
 position:absolute;
 top:412px;
 right:-50px;
 width:25px;
 animation: moveCarDown 20s linear infinite;
 animation-delay: 7s;
}
@keyframes moveCarDown {
  0%{
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-800px, -453px);
  }
}
.home .toppage-main .top-animation-box .car3{
 position:absolute;
 top:-50px;
 left:740px;
 width:25px;
 animation: moveCarUP 20s linear infinite;
 animation-delay: 1s;
}
.home .toppage-main .top-animation-box .car4{
 position:absolute;
 top:-50px;
 left:732px;
 width:33px;
 animation: moveCarUP 20s linear infinite;
 animation-delay: 5s;
}
.home .toppage-main .top-animation-box .car5{
 position:absolute;
 top:-50px;
 left:740px;
 width:26px;
 animation: moveCarUP 20s linear infinite;
 animation-delay: 10s;
}
@keyframes moveCarUP {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(800px, 460px);
  }
}
.home .toppage-main .top-animation-box .boat{
 position:absolute;
 top:-50px;
 left:300px;
 width:60px;
 animation: moveBoat 30s linear infinite;
}
@keyframes moveBoat {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-600px, 360px);
  }
}
.home .toppage-main .image-front img, .home .toppage-main .image-back img{
width:100%;
}
.toppage-main-text-ja{
 display:block;
 position:absolute;
 top:40%;
 left:3rem;
 font-size:2rem;
 font-family: "M PLUS 1", sans-serif;
 font-weight: 400;
 font-style: normal;
}
.toppage-main-text-en{
 display:block;
 position:absolute;
 top:60%;
 left:3rem;
 color:#fff;
 font-size:1.5rem;
 font-family: "Poppins", sans-serif;
 font-weight:600;
 line-height:1.4;
}
.toppage-main-news{
 display:block;
 position:absolute;
 bottom:100px;
 left:0;
 max-width:800px;
 width:100%;
 background-color:#f5f5f5;
 border-top-right-radius:42px;
 border-bottom-right-radius:42px;
}
.home .toppage-main-news li{
 display:block;
 position:relative;
 margin-left:130px!important;
 border:none;
}
.home .toppage-main-news li::before{
 display:block;
 position:absolute;
 content:"お知らせ";
 top:calc(50% - 23px);
 left:-130px;
 width:110px;
 height:45px;
 text-align:center;
 color:#6a258a;
 font-size:16px;
 font-weight:bold;
 border-right:1px solid #6a258a;
}
.home .toppage-main-news li::after{
 display:block!important;
 position:absolute;
 content:"NEWS";
 top:34px!important;
 left:-130px!important;
 width:110px;
 color:#e3dfed;
 font-family: "Poppins", sans-serif;
 font-weight:600;
 font-size:22px;
 text-align:center;
}
.toppage-main-news .wp-block-latest-posts__post-title{
 margin-bottom:4px!important;
}
.toppage-company-text-box{
 position:relative;
 margin:6rem auto 5rem!important;
 max-width:1200px;
 padding:2rem;
 width:100%;
 background-color:#fafafa;
 background: linear-gradient(to right, #f1f1ed, #edeff6);
 border-radius:40px;
 opacity:0;
}
.toppage-company-text-box.show{animation:shooseimg .8s linear forwards;}
.toppage-company-text-box .wp-block-column{
 max-width:calc((100% - 24px) / 2);
 flex:0 0 calc((100% - 24px) / 2);
}
.toppage-company-text-box h3{
 color:#6a258a;
 font-size:2rem;
}
.toppage-company-text-box .toppage-top-drone{
 position:absolute;
 top:-2rem;
 right:0;
 width:350px;
 height:200px;
}
.toppage-top-bridge{
 margin:0 auto;
 width:350px;
 height:200px;
}
.toppage-company-text-box .wp-block-button{
 position:absolute;
 bottom:0;
 right:0;
 color:#6a258a;
 font-size:2rem;
}
.toppage-company-text-box .wp-block-button::before{
 position:absolute;
 content:"";
 bottom:0;
 left:-80px;
 width:80px;
 height:80px;
 background-repeat:no-repeat;
 background-position:bottom left;
 background:url(../../uploads/toppage-top-h3-left.svg);
}
.toppage-company-text-box .wp-block-button::after{
 position:absolute;
 content:"";
 top:-40px;
 right: 0;
 width:40px;
 height:40px;
 background-repeat:no-repeat;
 background-position:bottom left;
 background:url(../../uploads/toppage-top-h3-right.svg);
}
.toppage-company-text-box .wp-block-button a{
 height:80px;
 padding:20px 140px 20px 0;
 font-size:1.25rem;
 color:#6a258a;
 background-color:#f5f5f5;
}
.toppage-company-text-box .wp-block-button a::before{
 position:absolute;
 content:"";
 top:10px;
 right: 20px;
 width:60px;
 height:60px;
 background:url(../../uploads/toppage-company-arrow.svg);
 background-repeat:no-repeat;
 transition-duration: .5s;
}
.toppage-company-text-box .wp-block-button a:hover{
 filter:none!important;
}
.toppage-company-text-box .wp-block-button a:hover::before{
 transform:rotate(-45deg);
}
.home h2{
 margin:0 auto!important;
 padding:0;
 color:#6a258a;
 text-align:center;
 font-size:1.25rem;
 font-weight:bold;
}
.toppage-h2-en{
 margin: 0 auto 3rem!important;
 text-align:center;
 color:#e6e6e6;
 font-size:5rem;
 font-family: "Poppins", sans-serif;
 font-weight:700;
 line-height:.9;
}
.toppage-company-text-box h2{
 font-size:2rem;
 font-weight:bold;
 color:#6a258a;
}
.toppage-works{
 position:relative;
 padding:3rem 0;
}
.toppage-works figure{
 text-align:center;
}
.toppage-works figure img{
 margin:0 auto;
}
.toppage-works .wp-block-buttons{
 display:flex;
 justify-content:right;
}
.toppage-works .wp-block-buttons .link{
 display:flex;
 position:relative;
}
.toppage-works .wp-block-buttons .link a{
 height:80px;
 padding:20px 160px 20px 20px;
 font-size:1.25rem;
 color:#6a258a;
 background-color:#f5f5f5;
 border:1px solid #6a258a;
 border-radius:46px;
}
.toppage-works .wp-block-buttons .link a::before{
 position:absolute;
 content:"";
 top:calc(50% - 30px);
 right: 14px;
 width:60px;
 height:60px;
 background:url(../../uploads/toppage-company-arrow.svg);
 background-repeat:no-repeat;
 transition-duration: .5s;
}

.toppage-works .wp-block-buttons .link a:hover{
 filter:none!important;
}
.toppage-works .wp-block-buttons .link a:hover::before{
 transform:rotate(-45deg);
}
.home .toppage-main .drone-animation {
 position: absolute;
 width:160px;
 left: 2%;
 top: 15%;
 display: inline-block; /* アニメーションさせる要素に合わせて調整 */
 animation: floatAnimation 10s ease-in-out infinite alternate;
}
@keyframes floatAnimation {
  0% {
    transform: translate(0, 0); 
  }
  25% {
    transform: translate(20px, 40px); 
  }
  50% {
    transform: translate(40px, 0); 
  }
  75% {
    transform: translate(20px, 40px); 
  }
  100% {
    transform: translate(0, 0); 
  }
}
.toppage-video-section{
 position:relative;
 margin:0 auto;
 padding:160px 0 160px;
 background-color:#fff;
 clip-path: polygon(0 100px, 100% 0, 100% calc(100% - 100px), 0 100%);
}
.toppage-video-block{
 display:flex;
 flex-flow:wrap;
}
.toppage-video-col{
 flex-basis: calc((100% - 40px) / 4);
}
.toppage-video-section .is-provider-youtube iframe{
 height:100%!important;
}
.toppage-link-button{
 margin:3rem auto!important;
 width:100%;
 padding:3rem 20px;
}
.toppage-link-button figure{
 margin:0 auto;
 width:120px;
 height:120px;
}
.toppage-link-button .title-ja{
 margin:0 auto!important;
 padding:0 0 4px;
 font-size:1.5rem;
}
.toppage-link-button .title-en{
 margin:0 auto!important;
 padding:0 0 20px;
 color:#4d4d4d;
 font-size:4rem;
 font-family: "Poppins", sans-serif;
 font-weight:700;
 line-height:.9;
}
.toppage-link-overview{
 position:relative;
 padding:50px 30px 60px;
 text-align:center;
 background-color:#abc8ea;
 border-radius:40px;
 opacity:0;
}
.toppage-link-works{
 position:relative;
 padding:50px 30px 60px;
 text-align:center;
 background-color:#ccccf1;
 border-radius:40px;
 opacity:0;
}
.toppage-link-works figure{
 margin:0 auto;
 padding:30px 0;
 width:160px;
 height:120px;
}
.toppage-link-drone{
 position:relative;
 padding:50px 30px 60px;
 text-align:center;
 background-color:#ddddb0;
 border-radius:40px;
 opacity:0;
}
.toppage-link-overview .link-button, .toppage-link-works .link-button, .toppage-link-drone .link-button{
 position:absolute;
 bottom:0;
 right:0;
 width:60px;
 height:80px;
 color:#6a258a;
 font-size:2rem;
 background-color:#f5f5f5;
}
.toppage-link-overview .link-button::before, .toppage-link-works .link-button::before, .toppage-link-drone .link-button::before{
 position:absolute;
 content:"";
 bottom:0;
 left:-80px;
 width:80px;
 height:80px;
 background-repeat:no-repeat;
 background-position:bottom left;
 background:url(../../uploads/toppage-top-h3-left.svg);
}
.toppage-link-overview .link-button::after, .toppage-link-works .link-button::after, .toppage-link-drone .link-button::after{
 position:absolute;
 content:"";
 top:-40px;
 right: 0;
 width:40px;
 height:40px;
 background-repeat:no-repeat;
 background-position:bottom left;
 background:url(../../uploads/toppage-top-h3-right.svg);
}
.toppage-link-button .toppage-link-overview .link-button img, .toppage-link-button .toppage-link-works .link-button img, .toppage-link-button .toppage-link-drone .link-button img{
 transition-duration: .5s;
}
.toppage-link-button .toppage-link-overview:hover .link-button img, .toppage-link-button .toppage-link-works:hover .link-button img, .toppage-link-button .toppage-link-drone:hover .link-button img{
 transform:rotate(-45deg);
}

.toppage-link-overview .link-button img, .toppage-link-works .link-button img, .toppage-link-drone .link-button img{
 position:absolute;
 bottom:10px;
 right:20px;
 width:60px;
 height:60px;
}
.toppage-link-button.show .toppage-link-overview{animation:shooseimg .8s linear forwards;}
.toppage-link-button.show .toppage-link-works{animation:shooseimg .8s linear forwards; animation-delay: 0.2s;}
.toppage-link-button.show .toppage-link-drone{animation:shooseimg .8s linear forwards; animation-delay: 0.4s;}
@keyframes shooseimg {
  0% {
    opacity: 0;
    transform: translateY(10%);
  }
  30% {
    opacity: 0;
    transform: translateY(10%);
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}
@keyframes bubble-popup {
  0% {
    transform: translateY(0) scale(0.3);
    opacity: 0;
  }
  100% {
    transform: translateY(0) scale(1.0);
  }
  80%, 100% {
    opacity: 1;
  }
}
@media (max-width: 1799px) {
.home .toppage-main{
 margin:0 20px;
 height:800px;
}
}
@media (max-width: 1699px) {
.home .toppage-main .top-animation-box{
 display:block;
 position:absolute;
 top:0;
 right:0;
 width:1000px;
 max-width:1000px;
 height: 488px;
}
.home .toppage-main .top-animation-box .train{
 top:-110px;
 left:-110px;
 width:80px;
}
.home .toppage-main .top-animation-box .train2{
 top:275px;
 left:510px;
 width:80px;
}
@keyframes moveTrain {
  0% {
    transform: translate(0, 0);
  }
  30%, 100% {
    transform: translate(560px, 330px);
  }
}
@keyframes moveTrain2 {
  0%, 50% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(600px, -344px);
  }
}
.home .toppage-main .top-animation-box .car1{
 top:276px;
 right:-50px;
 width:18px;
}
.home .toppage-main .top-animation-box .car2{
 top:276px;
 right:-50px;
 width:18px;
}
@keyframes moveCarDown {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-660px, -374px);
  }
}
.home .toppage-main .top-animation-box .car3, .home .toppage-main .top-animation-box .car5{
 top:-50px;
 left:475px;
 width:18px;
}
.home .toppage-main .top-animation-box .car4{
 top:-50px;
 left:468px;
 width:21px;
}
@keyframes moveCarUP {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(580px, 330px);
  }
}
.home .toppage-main .top-animation-box .boat{
 top:-50px;
 left:200px;
 width:44px;
}
@keyframes moveBoat {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-780px, 360px);
  }
}
}
@media (max-width: 1119px) {
 .home .toppage-main-box{
 padding:0;
}
 .home .toppage-main{
 border-radius:60px;
}
.toppage-main-text-ja{
 top:auto;
 bottom:280px;
 left:2rem;
 font-size:1.5rem;
}
.toppage-main-text-en{
 top:auto;
 bottom:200px;
 left:2rem;
 font-size:1.25rem;
}
 .home .toppage-main-news {
 bottom:60px;
}
.home .toppage-main .drone-animation {
 width:100px;
 top:20%;
 left:200px;
}
.toppage-video-col{
 flex-basis: calc((100% - 40px) / 2);
}
.toppage-video-col iframe{
 width:100%;
 max-width:100%;
 max-height:400px;
}
}
@media (max-width: 899px) {
.toppage-main-text-ja{
 top:auto;
 bottom:220px;
 left:2rem;
 font-size:1.5rem;
}
.toppage-main-text-en{
 top:auto;
 bottom:160px;
 left:2rem;
 font-size:1.25rem;
}
}
@media (max-width: 767px) {
.home .toppage-main{
 margin:0 20px;
 height:600px;
 border-radius:40px;
}
.home .toppage-main .top-animation-box{
 width:500px;
 max-width:500px;
 height: 300px;
}
.home .toppage-main .top-animation-box .train{
 top:-83px;
 left:-93px;
 width:40px;
 animation: moveTrain 20s linear infinite;
}
.home .toppage-main .top-animation-box .train2{
 top:142px;
 left:245px;
 width:40px;
 animation: moveTrain2 20s linear infinite;
}
@keyframes moveTrain {
  0% {
    transform: translate(0, 0);
  }
  30%, 100% {
    transform: translate(343px, 208px);
  }
}
@keyframes moveTrain2 {
  0%, 50% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(280px, -160px);
  }
}
.home .toppage-main .top-animation-box .car1, .home .toppage-main .top-animation-box .car2{
 top:132px;
 right:-30px;
 width:9px;
}
@keyframes moveCarDown {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-300px, -170px);
  }
}
.home .toppage-main .top-animation-box .car3, .home .toppage-main .top-animation-box .car5{
 top:-28px;
 left:250px;
 width:9px;
}
.home .toppage-main .top-animation-box .car4{
 top:-28px;
 left:245px;
 width:12px;
}
@keyframes moveCarUP {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(280px, 163px);
  }
}
.home .toppage-main .top-animation-box .boat{
 top:300px;
 left:auto;
 right:-50px;
 width:30px;
}
@keyframes moveBoat {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-380px, 260px);
  }
}
.home .toppage-main .image-front, .home .toppage-main .image-back{
 width:100%;
}
.toppage-main-news{
 bottom:60px;
}
.home .toppage-main-news li{
 margin-left:90px!important;
}
.home .toppage-main-news li::before{
 top:calc(50% - 18px);
 left:-100px;
 width:80px;
 height:36px;
 font-size:12px;
 font-weight:bold;
 border-right:1px solid #6a258a;
}
.home .toppage-main-news li::after{
 top:30px!important;
 left:-100px!important;
 width:80px;
 font-size:16px;
}
.toppage-company-text-box{
 padding:6rem 20px 4rem;
}
.toppage-video-col{
 flex-basis: 100%;
}
.toppage-link-button .title-en{
 font-size:3rem;
}
 .toppage-company-text-box .wp-block-columns{
 display:block;
}
.toppage-company-text-box .wp-block-button a{
 padding:20px 100px 20px 0;
}
.toppage-company-text-box .wp-block-column{
 display:block;
 max-width:100%;
 width:100%;
}
.toppage-company-text-box .toppage-top-drone{
 width:220px;
}
.toppage-link-works iframe{
 max-height:360px;
}
.wp-embed-responsive .wp-embed-aspect-9-16 .wp-block-embed__wrapper:before{
 padding-top:100%;
}
.home .toppage-main .drone-animation {
 width:80px;
 top:20%;
 left:20%;
}
}
/*第二階層*/
.container{max-width:1200px;
width:100%;
}
.site-body{
 background-color:#f5f5f5;
}
.page-header .page-header-inner{
max-width:1800px;
}
.current-menu-item{
 border-bottom: 1px solid #6a258a;
}
.vk-mobile-nav .current-menu-item{
 border-bottom: none;
}
.breadcrumb{
 background-color:#f5f5f5;
}
.h2-2nd-page{
 display:flex;
 position:relative;
 align-items:center;
 margin:0;
 margin-left:0!important;
 padding:10px 30px 10px 10px;
 width:fit-content;
 height:80px;
 background-color:#f5f5f5;
}
.h2-2nd-page::before{
 position:absolute;
 content:"";
 bottom:-30px;
 left:0;
 width:30px;
 height:30px;
 background-image:url(../../uploads/h2-corner-left.svg);
 background-repeat:no-repeat;
 background-position:bottom left;
}
.h2-2nd-page::after{
 position:absolute;
 content:"";
 bottom:0;
 right:-30px;
 width:60px;
 height:80px;
 background-image:url(../../uploads/h2-corner-right.svg);
 background-repeat:no-repeat;
 background-position:top right;
}
.h2-2nd-page .h2-ja{
 margin:0!important;
 height:60px;
 color:#6a258a;
 font-weight:bold;
 font-size:1.25rem;
 line-height:60px;
 white-space:nowrap;
}
.h2-2nd-page .h2-en{
 margin:0;
 padding:0 0 0 24px;
 font-size:3.5rem;
 color:#e3dfed;
 font-family: "Poppins", sans-serif;
 font-weight:700;
 line-height:.9;
}
.page-header-title{text-align:left;}
.caution{
 display:block;
 margin:5px 0 0!important;
 position:relative;
 padding: 0 0 0 20px;
}
.caution::before{
 position:absolute;
 content:"＊";
 top:0;
 left:0;
}
@media (max-width: 999px) {
.h2-2nd-page .h2-en{
 font-size:3rem;
}
}
@media (max-width: 767px) {
.h2-2nd-page{
 display:block;
 height:60px;
 padding:5px 30px 5px 10px;
}
.h2-2nd-page::before{
 bottom:-20px;
 width:20px;
 height:20px;
 background-image:url(../../uploads/h2-corner-left-mobile.svg);
}
.h2-2nd-page::after{
 right:-20px;
 width:40px;
 height:60px;
 background-image:url(../../uploads/h2-corner-right-mobile.svg);
}
.h2-2nd-page .h2-ja{
 padding-bottom:3px;
 height:auto;
 line-height:1;
}
.h2-2nd-page .h2-en{
 padding:0;
 font-size:3rem;
}
.recruit-info-box .recruit-info-col{
gap:0!important;
}
.recruit-info-col .wp-block-column{
 padding:20px;
}
}
/*会社概要*/
.overview-outline-box, .overview-bank-box, .overview-partner-box, .overview-permission-box, .overview-certification-box{
 margin-bottom:4rem;
 padding:0 0 2rem;
 background-color:#fff;
 border-radius:30px;
}
.outline-table table{
 margin:0 auto;
 max-width:900px;
 width:100%;
 margin-top:1rem;
}
.outline-table table td{
 font-size:1.13rem;
 border:none;
 border-bottom:1px solid #aaa;
}
.outline-table table tr td:nth-child(1){
 width:30%;
 border:none;
 border-bottom:1px solid #6a258a;
}
.overview-service-list, .overview-certification-list{
 display:flex;
 flex-wrap:wrap;
 margin:1rem auto 0!important;
 max-width:1000px;
 width:100%;
}
.overview-service-list li, .overview-certification-list li{
 position:relative;
 display:block;
 padding:0 0 0 20px;
 max-width:calc((100% - 20px) / 3);
 flex:0 0 calc((100% - 20px) / 3);
}
.overview-service-list li::before, .overview-certification-list li::before{
 position:absolute;
 content:"";
 top:calc(50% - 5px);
 left:0;
 width:10px;
 height:10px;
 border-radius:5px;
 background-color:#e3dfed;
}
.overview-bank-list, .overview-partner-list, .overview-permission-list{
 display:flex;
 flex-wrap:wrap;
 margin:1rem auto 0!important;
 max-width:1000px;
 width:100%;
}
.overview-bank-list li, .overview-partner-list li{
 position:relative;
 display:block;
 margin:1rem auto 0!important;
 padding:0 0 0 20px;
 max-width:calc((100% - 20px) / 2);
 flex:0 0 calc((100% - 20px) / 2);
}
.overview-bank-list li::before, .overview-partner-list li::before, .overview-permission-list li::before{
 position:absolute;
 content:"";
 top:8px;
 left:0;
 width:10px;
 height:10px;
 border-radius:5px;
 background-color:#e3dfed;
}
.overview-map-box{
 margin-bottom:3rem;
 padding:0;
}
.overview-permission-list li{
 position:relative;
 display:block;
 margin:1rem auto 0!important;
 padding:0 0 0 20px;
 max-width:100%;
 width:100%;
}
.overview-map-box .overview-google-map{
 margin:0 auto;
 max-width:100%!important;
 width:100%!important;
}
.overview-map-box .overview-google-map iframe{
 max-width:100%!important;
 width:100%;
 height:500px!important;
 border-radius:30px;
 overflow:hidden;
}
.overview-map-box .h2-2nd-page{
 position:absolute;
 top:0;
 right:0;
 margin:0;
 margin-left:0!important;
 padding:20px 50px 10px 10px;
 width:fit-content;
 height:80px;
 color:#6a258a;
 font-weight:bold;
 font-size:1.25rem;
 background-color:#f5f5f5;
}
.overview-map-box .h2-2nd-page::before{
 position:absolute;
 content:"";
 bottom:-30px;
 left:auto;
 right:0;
 width:30px;
 height:30px;
 background-image:url(../../uploads/h2-corner-right-left.svg);
 background-repeat:no-repeat;
 background-position:bottom left;
}
.overview-map-box .h2-2nd-page::after{
 position:absolute;
 content:"";
 top: 0;
 left:-60px;
 width:60px;
 height:80px;
 background-image:url(../../uploads/h2-corner-right-right.svg);
 background-repeat:no-repeat;
 background-position:top right;
}
@media (max-width: 1199px) {
.overview-service-list li, .overview-certification-list li{
 max-width:calc((100% - 20px) / 2);
 flex:0 0 calc((100% - 20px) / 2);
}
.overview-bank-list li, .overview-partner-list li{
 max-width:calc((100% - 20px) / 1);
 flex:0 0 calc((100% - 20px) / 1);
}
}
@media (max-width: 767px) {
.overview-outline-box, .overview-bank-box, .overview-partner-box, .overview-permission-box, .overview-certification-box{
 border-radius:20px;
}
.outline-table{
 padding:20px;
}
 .outline-table table tr td:nth-child(1){
 display:block;
 width:100%!important;
 color:#6a258a;
 font-weight:600;
 border-bottom:none;
}
.outline-table table tr td{
 display:block;
 width:100%!important;
 border-bottom:1px solid #6a258a;
}
.overview-service-list li, .overview-certification-list li{
 max-width:calc((100% - 20px) / 1);
 flex:0 0 calc((100% - 20px) / 1);
}
}
/*ドローン*/
.drone-top-read{
 margin-bottom:4rem;
}
.drone-top-read figure{
 max-width:200px;
 width:100%;
}
.drone-top-read .prevent-danger{
 display:flex;
}
.drone-top-read .prevent-danger p{
 display:flex;
 align-items:center;
 padding:0 1rem;
 font-size:1.25rem;
}
.drone-advantage-box, .drone-inspection-box{
 margin-bottom:4rem;
 padding:0 0 2rem;
 background-color:#fff;
 border-radius:30px;
}
.drone-advantage-box .first-p{
 padding:2rem;
 max-width:100%;
}
.drone-inspection-box .wp-block-columns{
 margin:2rem;
}
.drone-specification table th{
 width:29%;
}
.drone-specification table td{
 width:21%;
}
.drone-video-box{
 margin-bottom:4rem;
 padding:2rem;
 background-color:#fff;
 border-radius:30px;
}
.drone-video-box figure, .drone-video-box p{
 max-width:100%;
}
.drone-video-box iframe{
 margin-bottom:0!important;
 max-width:560px;
 width:100%;
}
.drone-video-box h3{
 max-width:100%;
}
.drone-video-box h3.subtitle{
 max-width:100%;
 padding:5px 16px;
 background-color:#f5f5f5;
border-radius:20px;
}
.drone-video-box .margin-bottom3{
 margin-bottom:3rem!important;
}
.drone-video-box .margin-bottom4{
 margin-bottom:4rem!important;
}
.drone-video-box .drone-video{
 max-width:560px;
 width:100%;
}
.drone-video-box table{
margin:0!important;
width:100%;
 max-width:100%;
}
.drone-video-box table tr th{
 padding:5px 10px;
 font-size:1rem;
 text-align:left;
 background-color:#e3dfed;
}
.drone-video-box table tr td{
 font-size:1rem;
 background-color:#fff;
}
.drone-plan-table{
 margin:2rem!important;
 max-width:100%;
}
.drone-plan-table th{
 padding:5px 10px;
 font-size:1.5rem;
 text-align:left;
 background-color:#e3dfed;
}
.drone-video-box .drone-machine-image{
margin-left:0!important;
margin-right:0!important;
max-width:560px;
width:100%;
}
.drone-video-box .wp-block-columns{
 max-width:100%;
}
.drone-drone-type-block{
 display:flex;
 flex-flow:wrap;
 justify-content:flex-start!important;
 max-width:100%;
 gap: 16px;
}
.drone-drone-type-col{
 margin:0;
 width: calc((100% - 20px * 3) / 4);
 text-align:center;
}
.drone-drone-type-col img{
 margin:0 auto!important;
 max-width:240px;
 width:100%;
}
.drone-type-name{
 margin:0 0 5px!important;
 text-align:center;
 font-weight:600;
}
.drone-drone-type-col .bt-drone-detail{
 display:block;
 margin:0 auto;
}
.drone-drone-type-col .bt-drone-detail a{
 display:block;
 position:relative;
 margin:0 auto;
 padding:5px 20px;
 color:#6a258a;
 text-align:center;
 border: 1px solid #6a258a;
 border-radius:21px;
 transition: all 0.3s ease-in-out;
}
.drone-drone-type-col .bt-drone-detail a:hover{
 color:#fff;
 border: 1px solid #6a258a;
 background-color:#6a258a;
}
.drone-drone-battery-block{
 display:flex;
 flex-flow:wrap;
 justify-content:flex-start!important;
 max-width:100%;
 gap: 16px;
}
.drone-drone-battery-col{
 width: calc((100% - 16px * 6) / 7);
 margin:0;
 padding:10px;
 background-color:#e3dfed;
 border-radius:10px;
}
.drone-drone-battery-col img{
 margin:0 auto;
 max-width:60px;
 width:100%;
}
.drone-drone-battery-col{
 margin:0!important;
 text-align:center;
}
.drone-drone-battery-col p{
 margin:0!important;
 padding:0;
 text-align:center;
 font-size:15px;
}
.drone-disaster-logo{
margin:0 auto;
width:200px;
}
.drone-battery-number{
font-size:2rem;
}
.drone-inspection-col .drone-inspection-subtitle{
font-size:1.5rem;
 font-weight:600;
 text-align:center;
}
.drone-inspection-col p{
 padding:0 10px;
}
.drone-image-name{
 margin:0!important;
 padding:2px 10px;
 width:fit-content;
 color:#fff;
 background-color:#6a258a;
 border-top-left-radius:10px;
 border-top-right-radius:10px;
}
.drone-font-small{
 font-size:12px;
}
.drone-video-box h4{
 max-width:100%;
}
.drone-battery-time-table{
 margin-bottom:0!important;
}
.drone-battery-time-table table tr th{
 font-weight:normal;
}
.drone-battery-time-table table tr td{
 font-size:1.5rem;
 font-weight:600;
}
.drone-contact{
 display:inline-block;
 margin-left:20px;
 width:fit-content;
 padding:4px 16px;
 font-size:1rem;
 color:#6a258a;
 background-color:#fff;
 border: 2px solid #6a258a;
 border-radius:18px;
 transition: all 0.3s ease-in-out;
}
.drone-contact:hover{
 color:#fff;
 background-color:#6a258a;
}
.drone-video-box figure.drone-certifitaion-image{
max-width:300px;
width:100%;
}
.dji-power2000-img .wp-block-column{
display:block;
}
.dji-power2000-img .wp-block-column figure{
padding-top:20px;
text-align:center;
}
.dji-power2000{
 margin-bottom:4rem!important;
}
.dji-power2000-text{
 display:flex;
}
.dji-power2000-img{
 max-width:200px;
 width:100%;
}
.dji-power2000-text p{
 display:flex;
 align-items:center;
}
.drone-certification-security .wp-block-column{
 text-align:center;
}
.drone-certification-security .wp-block-column img, .drone-certification-security .wp-block-column figure{
margin:0 auto;
}
@media (max-width:  1199px) {
.drone-drone-battery-col{
 width: calc((100% - 16px * 4) / 5);
}
.drone-drone-battery-col p{
 font-size:12px;
}
.drone-battery-number{
font-size:1.5rem;
}
.drone-advantage-box p, .drone-advantage-box .first-p{
 max-width:100%;
 width:100%;
 margin:0;
 padding:10px 20px;
}
}
@media (max-width: 767px) {
.drone-top-read figure{
 margin:0 auto;
}
.drone-drone-type-col{
 width: calc((100% - 20px * 1) / 2);
}
.drone-drone-battery-col{
 width: calc((100% - 16px * 1) / 2);
}
.drone-inspection-col p{
 padding:0 20px;
}
.drone-video-box table tr th, .drone-video-box table tr td{
 display:block;
 width:100%;
}
.dji-power2000{
 justify-content:center;
}
.dji-power2000-img figure{
 justify-content:center;
 text-align:center;
}
.dji-power2000-img img{
 margin:0 auto;
}
.drone-specification table th, .drone-specification table td{
display:block;
 width:100%;
}
}
/*採用情報*/
.recruit-info-box, .recruit-outline-box{
 margin-bottom:4rem;
 padding:0 0 2rem;
 background-color:#fff;
 border-radius:30px;
}
.recruit-info-box .recruit-info-col{
 margin: 2rem auto;
 gap:3rem;
 font-size:1.25rem;
}
.recruit-info-box .recruit-info-col figure{
 border-radius:40px;
 overflow:hidden;
} 
.recruit-outline-box dl{
 margin-top:2rem;
 vertical-align:top;
}
.recruit-outline-box dl dt{
 display:inline-block;
 margin-bottom:0!important;
 padding:10px 10px 20px 20px;
 width:20%;
 vertical-align:top;
}
.recruit-outline-box dl dt h3{
 margin-bottom:0!important;
 padding:6px 10px;
 width:160px;
 height:38px;
 color:#6a258a;
 font-size:1.13rem;
 text-align:center;
 background-color:#e3dfed;
 border-radius:19px;
}
.recruit-outline-box dl dd{
 display:inline-block;
 padding:10px 0 20px 10px;
 width:70%;
 line-height:1.8;
}
.recruit-outline-box dl dd ul{
 margin:0;
 padding:0;
 list-style:none;
}
.recruit-outline-box dl dd li{
 display:block;
 position:relative;
 margin: 5px 0 0;
 padding:0 0 0 25px;
}
.recruit-outline-box dl dd li::before{
 display:block;
 position:absolute;
 content:"●";
 top:0;
 left:0;
 color:#e3dfed;
}
.recruit-outline-box .recruit-small-box{
 margin-right:8px;
 padding:0 5px;
 color:#6a258a;
 font-size:1rem;
 border:1px solid #6a258a;
}
.recruit-icons{
 margin-top:20px;
}
.recruit-icons figure{
 display:inline-block;
 margin-right:5px;
 width:70px;
 height:70px;
 padding:5px;
 border:1px solid #6a258a;
 border-radius:8px;
}
.recruit-icons figure img{
 width:60px;
 height:60px;
}

@media (max-width: 1199px) {
.recruit-outline-box dl{
 max-width:100%;
 width:100%;
}
.recruit-outline-box dl dt h3{
 width:120px;
}
}
@media (max-width: 767px) {
.recruit-info-box, .recruit-outline-box{
 border-radius:20px;
}
.recruit-outline-box dl dt h3{
 height:30px;
 border-radius:15px;
}
.recruit-outline-box dl dt{
 display:block;
 width:100%;
 padding:5px 0 5px 20px;
}
.recruit-outline-box dl dd{
 display:block;
 width:100%;
 padding:5px 20px 20px 20px;
}
.recruit-icons figure{
 width:60px;
 height:60px;
}
.recruit-icons figure img{
 width:50px;
 height:50px;
}
}

/*採用情報共通CTA*/
.recruit-cta-box{
 position:relative;
 margin-bottom:0;
 padding:2rem 0;
 gap:3rem;
}
.site-body-bottom .container{
 max-width:100%;
 width:100%;
}
.site-body-bottom .recruit-cta-box .wp-block-columns{
 max-width:1200px;
 width:100%;
}
.site-body-bottom .recruit-cta-box:hover .recruit-cta-arrow{
 right:0;
}
.site-body-bottom{
 position:relative;
 border-top-left-radius:60px;
 border-top-right-radius:60px;
 background-color:#6a258a;
}
.site-body-bottom .recruit-cta-arrow{
 position:absolute;
 bottom:0;
 right:4rem;
 max-width:500px;
 width:100%;
 transition-duration: .5s;
}
.site-body-bottom .container .widget_block, .site-body-bottom .widget_media_image figure{
 margin:0!important;
}
.recruit-cta-title-ja{
 margin-bottom:0!important;
 color:#fff;
 font-size:1.25rem;
}
.recruit-cta-title-en{
 margin-bottom:0!important;
 color:#ccc;
 font-size:6rem;
 font-family: "Poppins", sans-serif;
 font-weight: 600;
 font-style: normal;
 line-height:.9;
}
.recruit-cta-read{
 margin-bottom:0!important;
 padding:0 0 10px 0;
 color:#eadbff;
 font-size:2rem;
}
.recruit-cta-text{
 margin-bottom:0!important;
 color:#fff;
 font-size:1.13rem;
}
.recruit-cta-img, .recruit-cta-text-box{
background-color:transparent;
}
.recruit-cta-box .recruit-cta-img{
 max-width:500px;
 width:100%;
 border-radius:40px;
 overflow:hidden;
}
.recruit-cta-text-box{
 padding:5px 20px 80px;
}
@media (max-width: 767px) {
.site-body-bottom{
 border-top-left-radius:40px;
 border-top-right-radius:40px;
}
.recruit-cta-box{
 padding-top:15px;
}
.recruit-cta-box .recruit-cta-img{
 border-radius:32px;
}
.recruit-cta-img, .recruit-cta-img img{
 margin:0 auto!important;
}
}
/*投稿ページ*/
.page-header, .single-news .page-header{
 height:500px; background-color:#c1e6fa; background-image:url(../../uploads/header-background.svg);
 background-repeat:no-repeat;
 background-size:1680px;
 background-position:top right;
}
.category-blog .wp-block-query-pagination-next{
display:none;
}
.vk_post_btnOuter{
position:absolute;
 top:10px;
 right:10px;
}
.single-post .site-body .wp-block-column-is-layout-flow{
 background-color:#fff;
}
/*一覧*/
.category-blog .post-list .vk_post, .tag .post-list{
 margin:0!important;
 border:none!important;
 gap:20px;
}
.category-blog .vk_post_title_new, .category-blog .media-text, .category-blog .media-date {
display:none;
}
.category-blog .main-section .post-list .vk_post, .tag .post-list .vk_post{
 display:block;
 margin:0;
 max-width: calc((100% - 20px * 2) / 3);
 flex:0 0 calc((100% - 20px * 2) / 3);
 border:none;
}
/*.entry-body>.vk_posts>.media.vk_post-col-sm-12:first-child, .main-section>.vk_posts>.media.vk_post-col-sm-12:first-child*/
body.category-blog .post-list .vk_post:first-child{
 border:none;
}
.category-blog .main-section .post-list .media-img, .tag .post-list .media-img{
width:100%!important;
}
.category-blog .main-section .post-list .media-body, .tag .post-list .media-body{
width:100%!important;
 height:auto;
 padding:10px 40px 10px 20px;
 background-color:#fff;
}
body.category-blog .btn-sm, .tag .btn-sm{
 position:relative;
 padding:4px!important;
 width:24px;
 height:24px;
 color:#fff;
 font-size:1px!important;
 border:1px solid #6a258a;
}*
.category .btn-sm:hover, .tag .btn-sm:hover{
 background-color:#fff;
 border:1px solid #6a258a;
 background-color:#6a258a;
 color:#6a258a;
}
.tag .btn-sm::before{
 position:absolute;
 content:"";
top:calc(50% - 6px);
right:calc(50% - 11px);
border:6px solid transparent;
border-left:8px solid #6a258a;
}
.category-blog .btn-sm:hover::before, .tag .btn-sm:hover::before{
border-left:8px solid #fff;
}
.category-blog .vk_posts-mainSection{
 margin:0!important;
 gap:20px;
}
.category-blog .tag-maintenance .media-img, .category-blog .tag-bridge .media-img, .tag .post-list .media-img, .category-blog.tag-bridge .media-img, .category-blog.tag-maintenance .media-img{
 position:relative;
}
.category-blog .tag-maintenance .media-img::after, .blog .tag-maintenance .media-img::after, .category-blog.tag-maintenance .media-img::after{
 position:absolute;
 content:"保全・補修工事";
 top:0;
 right:0;
 padding:2px 10px;
 width:fit-content;
 height:23px;
 font-size:12px;
 color:#6a258a;
 text-align:center;
 background-color:#e3dfed;
}
.category-blog .tag-bridge .media-img::after, .blog .tag-bridge .media-img::after, .category-blog.tag-bridge .media-img::after{
 position:absolute;
 content:"橋梁架設工事";
 top:0;
 right:0;
 padding:2px 10px;
 width:fit-content;
 height:23px;
 font-size:12px;
 color:#6a258a;
 text-align:center;
 background-color:#e3dfed;
}
.category-blog .vk_post_imgOuter_singleTermLabel{
 display:none!important;
}
.category-blog .container{
 position:relative;
}
.category-blog .sub-section, .tag .sub-section{
 position:absolute;
 top:0;
 left:0;
 width:100%;
}
.category-blog .main-section, .tag .main-section{
 padding-top:100px;
}
.category-blog .tag-cloud-link, .tag .tag-cloud-link{
display:inline-block;
padding:5px 20px;
max-width:580px;
width:580px;
 text-align:center;
 background-color:#fff;
border:1px solid #6a258a;
vertical-align:top;
}
.category-blog .sub-section .wp-block-tag-cloud, .tag .sub-section .wp-block-tag-cloud{
 width:100%;
vertical-align:top;
text-align:center;
}
ul.page-numbers li span.page-numbers.current{
 background-color:#6a258a;
}
/*上部カテゴリーボタン*/
.category-blog .sub-section{
 width:100%;
}
.sub-section .blog-top-tag-buttons{
 gap:20px;
}
.category-blog .blog-top-tag-buttons .wp-block-buttons, .category-blog .blog-top-tag-buttons .wp-block-button, .tag .blog-top-tag-buttons .wp-block-button{
 width:100%;
}
.category-blog .blog-top-tag-buttons .wp-block-button a, .tag .blog-top-tag-buttons .wp-block-button a{
 background-color:#6a258a;
}
.sub-section .btn-works-left a, .sub-section .btn-works-right a{
 color:#6a258a;
 background-color:#fff!important;
 border: 1px solid #6a258a;
}
.tag-maintenance  .sub-section .btn-bridge .wp-block-button a, .tag-bridge .sub-section .btn-maintenance .wp-block-button a{
 color:#6a258a;
 background-color:#fff;
 border:1px solid #6a258a;
}
.tag-bridge .sub-section .btn-bridge .wp-block-button, .tag-maintenance .sub-section .btn-maintenance .wp-block-button{
display:block;
position:relative;
}
.tag-bridge .sub-section .btn-bridge .wp-block-button::before, .tag-maintenance .sub-section .btn-maintenance .wp-block-button::before{
position:absolute;
content:"";
bottom:-28px;
left:calc(50% - 16px);
border: 16px solid transparent;
border-top: 16px solid #6a258a;
}
/*
.category .btn-works-left, .category .btn-works-right{
 display:none; 
}
.tag-maintenance .sub-section .btn-works-left, .tag-maintenance .sub-section .btn-maintenance{
 display:none;
}
.tag-maintenance .sub-section .btn-works-right{
 display:block;
}
.tag-bridge .sub-section .btn-works-right, .tag-bridge .sub-section .btn-bridge{
 display:none;
}
.tag-bridge .sub-section .btn-works-left{
 display:block;
}*/
@media (max-width: 1699px) {
.page-header, .single-news .page-header{
 height:400px;
 background-size:cover;
 background-position:top right -200px;
}
}
@media (max-width: 1199px) {
.page-header, .single-news .page-header{
 height:300px;
}
.sub-section{
 padding:0 10px;
}
}
@media (max-width: 781px) {
.category-blog .main-section .post-list .vk_post, .tag .post-list .vk_post{
 max-width: calc((100% - 20px * 1) / 2);
 flex:0 0 calc((100% - 20px * 1) / 2);
}
/*.category-blog .wp-block-columns:not(.is-not-stacked-on-mobile) .wp-block-column, .tag .wp-block-columns:not(.is-not-stacked-on-mobile) .wp-block-column*/
.category-blog .blog-top-tag-buttons .wp-block-column, .tag .blog-top-tag-buttons .wp-block-column{
 max-width: calc((100% - 20px * 1) / 2);
 flex:0 0 calc((100% - 20px * 1) / 2);
}
.page-header, .single-news .page-header{
 height:200px;
}
}
@media (max-width: 499px) {
.category-blog .main-section .post-list .vk_post, .tag .post-list .vk_post{
 max-width: 100%;
 width:100%;
}
.page-header, .single-news .page-header{
 height:200px;
 background-position:top right -300px;
}
.category-blog .vk_posts-mainSection{
 margin:0 auto!important;
 gap:0;
 display:block;
}
.blog .media-img{
padding-top:20px;
}
.category-blog .tag-maintenance .media-img::after, .blog .tag-maintenance .media-img::after, .category-blog .tag-bridge .media-img::after, .blog .tag-bridge .media-img::after{
 width:100px;
 font-size:10px;
 text-align:center;
}
}
/*お知らせ一覧*/
.category-news .sub-section{
 display:none;
}
.category-news .vk_post .media-img{
 display:none;
}
.category-news .vk_post .media-body{
 padding-bottom:10px;
 width:100%;
}
.category-news .vk_post_btn{
 color:#6a258a;
 background-color:#fff;
 border:1px solid #6a258a;
}
.category-blog .vk_post_btn{
 color:#fff;
 background-color:#fff;
 border:1px solid #6a258a;
}
.category-blog .btn-sm::before{
 position:absolute;
 content:"";
top:calc(50% - 6px);
right:calc(50% - 11px);
border:6px solid transparent;
border-left:8px solid #6a258a;
}
.category-news .vk_post_btn:hover{
 color:#fff;
 background-color:#6a258a;
 border:1px solid #6a258a;
}
.category-blog .vk_post_btn{
 color:#fff;
 background-color:#fff;
 border:1px solid #6a258a;
}
.blog .btn-sm::before{
 display:none;
}
.blog .vk_post_btnOuter, .category-news .vk_post_btnOuter{
 top:auto;
 bottom:0;
 height:30px;
}
.vk_post-btn-display.media .vk_post_body{
 padding-bottom: 30px;
}
/*お知らせ一覧元ページ*/
.blog .media-img{
 width:25%;
}
.blog .sub-section{
 display:none;
}
/*施工事例一覧*/
.tag .page-header-title, .blog-section .page-header-title{
 display:none;
}
/*施工事例詳細*/
.next-prev.vk_posts, .entry-footer{display:none!important;}
.works-detail-box table tr:nth-child(odd) td{
 background-color:#e3dfed;
}
.single-post .site-body .wp-block-column-is-layout-flow{
 background-color:transparent;
}
.works-detail-box{
 padding:20px;
 background-color:#fff;
}
.category-blog .entry-header{
 display:block;
 position:relative;
 padding:10px 20px 10px 200px;
 background-color:#e3dfed;
}
.category-blog .entry-header h1{
 font-size:24px;
}
.category-blog.tag-bridge .entry-header::before{
 position:absolute;
 content:"橋梁架設工事";
 top:0;
 left:0;
 padding:2px 10px;
 width:180px;
 height:100%;
 font-size:20px;
 font-weight:600;
 color:#fff;
 text-align:center;
 background-color:#6a258a;
 line-height:50px;
}
.category-blog.tag-maintenance .entry-header::before{
 position:absolute;
 content:"保全・補修工事";
 top:0;
 left:0;
 padding:2px 10px;
 width:180px;
 height:100%;
 font-size:20px;
 font-weight:600;
 color:#fff;
 text-align:center;
 background-color:#6a258a;
 line-height:50px;
}
.news-template-default .entry-body img{width:100%!important;}
.wp-block-vk-blocks-slider{
 height:480px;
}
.vk_slider_item.vk_valign-center{
 align-items:top;
 height:480px;
}
.works-back2list{
 justify-content:center;
}
/*お問い合わせ*/
.contact-box{
 background-color:#fff; border-radius:30px;
}
.contact-form-box{
 padding:3rem; padding-top:1.5rem;
}
.contact-box .wpcf7-submit{
 margin:0 auto;
 padding:6px 40px;
 height:60px;
 font-size:1.25rem;
 font-weight:bold;
 border-radius:30px;
 background-color:#6a258a;
}
.contact-box .text-box{
 padding:0 0 1rem;
 font-size:1.13rem;
 text-align:left;
}
.required-caution{
 position:relative;
 padding: 0 0 0 50px;
}
.contact-box form{
 margin-top:2rem!important;
}
.required-caution::before{
 position:absolute;
 content:"必須";
 top:calc(50% - 11px);
 left:0;
 padding:4px;
 width:40px;
 height:22px;
 color:#fff;
 font-size:12px;
 text-align:center;
 font-weight:600;
 line-height:1;
 background-color:#ff0000;
 border-radius:4px;
}
.contact-box .submit-button{
 text-align:center;
}
.contact-box dl{
 margin:0;
 margin-bottom:0!important;
}
.contact-box dt{
 display:inline-block;
 margin:0;
 padding:4px 50px 4px 4px;
 height:36px;
 width:230px;
 vertical-align:top;
}
.required{
 position:relative;
}
.required::before{
 position:absolute;
 content:"必須";
 top:calc(50% - 11px);
 right:10px;
 padding:4px;
 width:40px;
 height:22px;
 color:#fff;
 font-size:12px;
 text-align:center;
 line-height:1;
 background-color:#ff0000;
 border-radius:4px;
}
.contact-box dd{
 display:inline-block;
 width: calc(100% - 250px);
}
.wpcf7-spinner{
 display:none;
}
.contact-box .policy{
 padding:20px 0 0;
}
.contact-box .policy .contents{
font-size:.9rem;
padding:1rem;
border:solid 1px #ccc;
max-height:250px;
overflow:auto;
}
.policy-check{
 padding:2rem 0;
 text-align:center;
}
.contact-box p{
 margin-bottom:0!important;
}
.contact-box h3{
 margin:10px 0 5px;
 font-size:1rem;
}
.contact-box h4{
 margin:10px 0 5px;
 font-size:.9rem;
}
@media (max-width: 959px) {
html {
 font-size: calc((100vw - 800px) / 140 + 15px);
}
.contact-box dt{
 display:block;
 width:fit-content;
 padding:4px 60px 4px 4px;
 vertical-align:top;
}
.required::before{
 right:0;
}
.contact-box dd{
 display:block;
 width: 100%;
}
}
@media (max-width: 767px) {
.contact-box{
 border-radius:20px;
}
.contact-form-box{
 padding:1.5rem;
}
.entry-body{
 padding:0;
}
}