/* ----------------------------------------- */
/* 共通
/* ----------------------------------------- */
.body{ font-family:noto-sans-cjk-jp, sans-serif;font-weight:400;font-style:normal; }
body.no_scroll{ position:fixed;left:0;top:0;overflow:hidden; }
a:hover{ opacity:0.8;transition:all 0.2s; }
a{ transition:all 0.2s; }

/* ----------------------------------------- */
/* header
/* ----------------------------------------- */
.header{ background-color:rgba(255, 255, 255, 0.84);width:100%;position:fixed;top:0;z-index:700; }
.header.each{ background-color:#f1f1f3; }
.header_inner{ width:100%;margin:0 auto;padding:22.6px 0.8%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center; }
.header_inner .header_ttl{ width:20%;max-width:291px;min-width:190px;z-index:80;margin-left: 0.7%; }
.header_inner .bt_tel{ width:7%;max-width:48px;margin-left:4vw;z-index:80 }
.nav{ display:block;width:50.1%;margin-left:auto; }
.nav .nav_lists{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end; }
.nav .nav_lists .nav_list{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-right:0;vertical-align:middle;margin-right:6.3%;color:#666;white-space:nowrap; }
.nav .nav_lists .nav_list a{ font-size:14px;color:#666666;position:relative;display:inline-block; }
.nav .nav_lists .nav_list a::after{ position:absolute;bottom:-4px;left:0;content:'';width:100%;height:2px;background:#333;transform:scale(0, 1);transform-origin:left top;transition:transform .3s;background-color:#ffd96f; }
.nav .nav_lists .nav_list a.current::after{ position:absolute;bottom:-4px;left:0;content:'';width:100%;height:2px;background:#333;transform:scale(1, 1);transform-origin:left top;background-color:#ffd96f; }
.nav .nav_lists .nav_list a:hover::after{ transform:scale(1, 1); }
.nav .nav_lists .nav_list:last-of-type{ margin-right:0; }
.hamburger-btn_parts{ display:block;width:100%;height:2px;background-color:#4D4D4D;position:absolute;-webkit-transition:opacity 0.5s, -webkit-transform 0.5s;transition:opacity 0.5s, -webkit-transform 0.5s;transition:transform 0.5s, opacity 0.5s;transition:transform 0.5s, opacity 0.5s, -webkit-transform 0.5s; }
.hamburger-btn_parts.-top{ top:0; }
.hamburger-btn_parts.-middle{ top:0;bottom:0;margin:auto; }
.hamburger-btn_parts.-bottom{ bottom:0; }
.hamburger-btn.close .hamburger-btn_parts.-top{ -webkit-transform:translateY(10px) rotate(-45deg);transform:translateY(13px) rotate(-45deg); }
.hamburger-btn.close .hamburger-btn_parts.-middle{ opacity:0; }
.hamburger-btn.close .hamburger-btn_parts.-bottom{ -webkit-transform:translateY(-4px) rotate(45deg);transform:translateY(-4px) rotate(45deg); }
.hamburger{ display:none; }
.hamburger.active{ -webkit-transform:translateX(0);transform:translateX(0); }
.hamburger-btn{ display:none;position:relative;width:25px;height:16px;z-index:100;cursor:pointer;width:30px;height:20px;display:none; }
.hamburger-btn.close{ position:absolute;top:4%;right:9%; }
.hamburger{display:block;position:fixed;z-index:800;top:0;right:0;width:100vw;max-width:520px;height:100vh;-webkit-transform:translateX(100vw);transform:translateX(100vw);-webkit-transition:all 0.3s;transition:all 0.3s;background-color:#fff; }
.hamburger_lists{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100vw;max-width:220px;height:100vh;margin-left: auto;margin-right: auto; }
.nav_list a{ color:#289c4c;font-size:16px;display:block; }
.nav_list + .hamburger_list{ padding-top:50px; }
.hamburger_link{ text-decoration:none;color:#289c4c; }
.hamburger_bg{ background-color:#000;opacity:0.5;width:100vw;height:100vh;position:fixed;top:0;left:0;z-index:800;display:none; }
.w_wrap{ max-width:1540px;width: 90%;margin-left: auto;margin-right: auto; }
.mid_wrap{ width:90%;max-width:1146px;margin-left: auto;margin-right: auto; }
.narrow_wrap{ width: 85%;max-width:986px;margin-left: auto;margin-right: auto; }
.each_sec{ padding:150px 0; }
.gmap{ height:0;overflow:hidden;padding-bottom:78%;position:relative;margin-top:7%; }
.gmap iframe{ position:absolute;left:0;right:0;height:100%;width:100%; }
.each_sec .ttl{ height:16vw;max-height:110px; }
.each_page .top{ height:64.4vw;max-height:510px; }
.each_page .top>img { top:60%; }
.each_page .narrow_wrap{ margin-top: 51px; }


/* ----------------------------------------- */
/* home
/* ----------------------------------------- */
#home{ background-color:#f1f1f3; }
#home .top{ position:relative; }
#home .top .top_img_sp{ display: none; }
#home .w_wrap{ position:absolute;height: 100%;margin-left: auto;margin-right: auto;left:50%;top:0;transform:translateX(-50%);z-index:400; }
#home .top_note{ width:69%;max-width:575px;margin-top: 25.7%; }
/* #home .top_note{ width:69%;max-width:35vw;margin-top: 25.7vh; } */
#home .scroll_wrap{ position:absolute;bottom:-54px;left:50%;transform:translateX(-50%); width:110px; }
.scroll_down{ height:130px;width:100px;margin:5.4% auto 5% auto;position:relative; }
.scroll_down:before{ content: '';position:absolute;top:0;left:50%;width:1px;height:30px;background-color:#fff;animation:path_move 2s ease-in-out infinite; }
@keyframes path_move{
    0%{ height:0;top:0;opacity:0; }
    30%{ height:50px;opacity:1; }
    100%{ height:0;top:130px;opacity:0; }
}

.page_nation{ text-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:95%;max-width:450px;margin:0 auto;margin-top:115px;font-family:'Noto Sans JP', sans-serif;margin-bottom:20%; }
.page_nation .page_arrow{ width:20px; }
.page_nation .page-numbers{ color:#B1B1B1;font-size:130%; }
.page_nation .page-numbers.current{ color:#000000; }
.no_post_note{ width:100%; }
.no_post_note p{ text-align:center;font-size:130%;margin-top:10%;margin-bottom:16%; }
.footer{ padding-top:110px;padding-bottom:50px;position:relative;background-color:#f1f1f3; }
.footer .bg{ position:absolute;top:0;transform:translateY(-99%);width: 100%;z-index:-1; }
.footer *{ color:#289c4c; }
.footer_upper{ position:relative; }
.footer_logo{ display:block;width:26.5%;position:absolute;left:0;top:0; }
.footer_nav_wrap{ width: 50%;max-width:500px;margin-left: auto;margin-right: auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding-left: 4.8%;padding-top: 1.1%; }
.footer_nav_wrap ul:first-of-type{ margin-right:25.8%; }
.footer_nav_wrap li{ margin-bottom:29px; }
.footer_nav_wrap li a{ letter-spacing:1px; }
.footer .bottom{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-top: 40px;  }
.footer_copy{ font-size: 12.4px; }
.footer .privacy{ font-size: 12.2px;letter-spacing: 1px; }


/* ----------------------------------------- */
/* 各ページ
/* ----------------------------------------- */
.each_top{ height:34.5vw;max-height:663px;min-height:320px; }
#contact .each_top{ background:url(../img/bg_top_contact.png) no-repeat bottom center/cover; }
.service_page .each_top{ background:url(../img/bg_top_service.png) no-repeat bottom center/cover; }
.vehicle_page .each_top{ background:url(../img/bg_top_vehicle.png) no-repeat bottom center/cover; }
.recruit_page .each_top{ background:url(../img/bg_top_recruit.png) no-repeat bottom center/cover; }
.production_page .each_top{ background:url(../img/bg_top_production.png) no-repeat bottom center/cover; }
.company_info_page .each_top{ background:url(../img/bg_top_company_info.png) no-repeat bottom center/cover; }
.privacy_protection_page .each_top{ background:url(../img/bg_top_privacy_protection.png) no-repeat bottom center/cover; }
.news_page .each_top{ background:url(../img/bg_top_news.png) no-repeat bottom center/cover; }
.th_wrap{ position:relative;height: 100%; }
.th_wrap{ position:relative;height: 100%; }
.each_top .th{ position:absolute;left:0.5%;top: 39.2%; }
.each_top .th img{ height:10vh;max-height:56px; }
.breadcrumb{ display:block;transform:translateY(-70%);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom: 109px; }
.breadcrumb .arrow_bread{ display:block;width:7px; }
.breadcrumb .th{ margin-right:10px; }
.breadcrumb .th.news{ white-space: nowrap; }
.th_mid{ font-size: 256%;letter-spacing:-2.5px;font-weight:normal;margin-bottom: 2%; }


/* ----------------------------------------- */
/* home
/* ----------------------------------------- */
.policy_jpg{ width: 50%; margin-top: 0.8%; }
#about{ padding-top: 17.8%; }
#home{ overflow: hidden; }
#home .top .top_img{ vertical-align: top; }
#home .top + .wrap{ position:relative; }
.wrap .bg_line_body{ position:absolute;left:50%;top:0;transform:translateX(-50%);width:100vw; }
.about_flex{ display: flex; justify-content: space-between; align-items: flex-start; }
.adoption{ text-align: center; }
.adoption img{ margin: 0 auto; }
.policy_relative{ position: relative; }
.policy_back_img{ position: absolute; width: 30vw;max-width:507px; top: 18%; left: 23%; z-index: 500; }
.news_flex{ display: flex; }
.news_inner_left{ width:235px;margin-right: 42px; }
.news_inner_left .bt_news{ width:100%; }
.news_inner_left .bt_news.pc{ display:block; }
.news .bt_news.sp{ display:none; }
.news_inner_right{ width: 50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;margin-top: 1.2%; }
#home .news{ margin-bottom:12.2%;position:relative; }
#home .news .bg_news{ position:absolute;top:50%;left:50%;transform:translate(-50%, -52%);width: 100vw;min-width:1750px;z-index:-1; }
#home .news .th{ font-size: 236%;margin-bottom: 8%;font-weight:normal; }
.news .row{ border-bottom:1px solid #3e3a39;display:block;position:relative;padding-right:40px;padding-bottom:4.8%;margin-bottom: 4.8%; }
.news .row::after{ content:"";position:absolute;right:1.2%;bottom:39px;background:url(../img/arrow_right.svg) no-repeat center center/contain;width:30px;height:20px; }
.news .row .date{ font-size:82%;font-weight:bold;margin-bottom: 3.1%;display:block; }
.news .row p{ font-size: 90%;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.detail_flex{ display: flex; }
.service_btn{ width: 80%; z-index: 501;position:relative; }
.service_relative{ position: relative;z-index:300; }
.japan_back_img{ width: 150%; position: absolute; top: -3.5%; right: -1%; z-index: -1; }
.policy_h2{ font-size: 243%; line-height: 155%; font-weight: 200; margin-bottom: 9%; z-index: 501; }
.policy_p{ font-size:95%; line-height: 247%; font-weight: 200; z-index: 501; }
.policy{ margin-bottom: 30.4%; }
.policy_jpg{ margin-right: 10%; }
.service_jpg{ width: 50%; margin-top: 3.3%; }
.service_jpg{ margin-left:5%; }
.service_jpg, .policy_jpg, .service_jpg{ -ms-flex-negative:1;flex-shrink:1; }
.policy_relative, .service_relative, .vehicle_caption{ -ms-flex-negative:0;flex-shrink:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width: 46%; }
.service_h2{ font-size: 243%; line-height: 155%; font-weight: 200; margin-bottom: 3.5%; }
.service_p{ font-size:95%; line-height: 247%; font-weight: 200; z-index: 501; margin-bottom: 8%; }
.service{ margin-bottom: 28.5%; }
.service_jpg{ width: 50%; margin-top: 3.3%;margin-left: 5%; }
.vehicle_h2{ font-size: 243%; line-height: 155%; font-weight: 200; margin-bottom: 1.9%; }
.vehicle_p{ font-size:95%; line-height: 247%; font-weight: 200; z-index: 501; margin-bottom:11.9%; }
#home .vehicle{ margin-bottom: 41.1%; }
.vehicle_btn{ width: 75%; z-index: 501; }
.vehicle_caption{ width: 46%;transform:translateX(4%); }
.vehicle .policy_jpg{ margin-right: 3%; }
#home .detail{ margin-bottom:19.4%;position:relative;z-index:250; }
#home .detail_inner_left{ width: 32%; }
#home .detail_inner_left img{ vertical-align: top; }
#home .detail_inner_right{ position:relative;width:68%;display:-webkit-box;display:-ms-flexbox;display:flex; }
#home .detail_inner_right .note{ position:absolute;left:0;top:0;width: 62%; }
#home .detail_inner_right .img{ width:60%;margin-left:auto; }
#home .detail_inner_right .bt{ position:absolute;right:4.1%;bottom:6.7%;width: 31.4%; }
.adoption{ padding-bottom:15.9%;position:relative;z-index:200; }
.adoption h2{ font-size: 229%; font-weight: 230; margin-bottom: 1.3%; color: #fff;}
.adoption p{ font-size: 93%; line-height: 250%; color: #fff; margin-bottom: 5.1%; }
.adoption_btn{ width: 34%;min-width:320px; }
#home .bg_adoption{ position:absolute;width:100vw;min-width:1490px;bottom:0;left:50%;transform:translateX(-50%);z-index:-1; }

/* ----------------------------------------- */
/* service
/* ----------------------------------------- */
.service_inner_flex{ display: flex; justify-content: space-between; align-items: flex-start; }
.service_inner_h2{ line-height: 159%; font-weight: 200; margin-bottom: 6.6%; }
.service_inner_h2, .service_inner_sec2 .service_inner_h2{ font-size:clamp(160%, 3.1vw, 250%);line-height: 159%; font-weight: 200; margin-bottom: 6.6%; }
.service_inner_sec2 .service_inner_h2 br{ display:none; }
.service_inner_p{ font-size:95%; line-height: 265%; font-weight: 200; }
.service_inner_jpg{ width:calc(100% - 528px - 2%);margin-top: 1.1%;-ms-flex-negative:1;flex-shrink:1; }
.service_inner_sec2 .service_inner_h2{ line-height: 155%; font-weight: 200; margin-bottom: 2.5%; text-align: center; }
.service_inner_sec2 .service_inner_p{ font-size:95%; line-height: 247%; font-weight: 200; text-align: center; }
.service_inner_sec1{ margin-bottom: 12.4%; }
.service_inner_sec1 .caption{ -ms-flex-negative:0;flex-shrink:0;margin-right: 2%;width:528px; }
.service_inner_sec2{ margin-bottom: 12%; }
.service_inner_sec3 .caption{ width: 50%; }
.service_inner_sec3 .policy_jpg{ margin-right: 5.7%; }

/* ----------------------------------------- */
/* vehicle
/* ----------------------------------------- */
.vehicle_page .truck{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;background-color:#f1f1f1;padding:6.2% 4% 4.5% 4%;margin-top: 3.9%;margin-bottom: 7.1%;border-radius:8px; }
.vehicle_page .truck figure{ display:block;width: 28%;max-width:333.4px; }
.vehicle_page .truck figcaption{ text-align: center;font-size: 116%;margin-top: 5%;font-feature-settings:"palt"; }
.vehicle_page .safety_wrap{ display:-webkit-box;display:-ms-flexbox;display:flex; }
.vehicle_page .safety_wrap .th_mid{ margin-bottom: 2.3%; }
.vehicle_page p{ line-height:258%;text-align:justify; }
.vehicle_page .safety_wrap .note_wrap{ width: 70%; }
.vehicle_page .safety_wrap .note{ width:100%;margin-right: 10%; }
.vehicle_page .safety_wrap .safety_img{ width: 13.9%;margin-left: auto;margin-right: 9.3%; }
.vehicle_page #vehicle_info{ margin-bottom: 39.9%; }
/* .enclosure{ border: solid 2px #000; padding: 0.5% 1.5%; } */
.enclosure{ padding: 0.5% 1.5%; }

/* ----------------------------------------- */
/* news
/* ----------------------------------------- */
.news_page .each_top .th img{ height:clamp(24px, 4vw, 47px); }
.news_page .breadcrumb{ margin-bottom: 3.6%; }
.news_page .wrap{ max-width:500px; }
.news_page .row{ display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;padding:4% 7% 4% 0.8%;padding-right: 7%; }
.news_page .news .row::after{ right:2.5%; }
.news_page .row .date{ width:140px;font-size:104%;font-weight:bold;margin-bottom: 0; }
.news_page .row .note{ font-size: 106%;font-weight:bold; }
.news_page .page_nation{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center; }
.news_page .page_nation .page-numbers{ display:block;width: 50px; }
.cont_wrap.rows{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:1004px;margin-bottom: 14.1%; }
.cont_wrap.rows .cont{ width:100%;display:-webkit-box;display:-ms-flexbox;display:flex; }
.cont_wrap.rows .cont .note{ width:60%; }
.cont_wrap.blocks{ margin-top:20px;margin-bottom:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap; }
.cont_wrap.blocks .cont{ width:calc( 33.333333% - 10%/3 );margin-right:5%;margin-bottom:2.7%; }
.cont_wrap.blocks .cont:nth-of-type(3n){ margin-right:0; }
.cont_wrap.blocks .cont .img_wrap img{ object-fit:cover; }
#single_page .breadcrumb{ margin-bottom: 4.1%; }
#single_page .cont .th{ font-size: 239%;margin-bottom:5.2%; }
#single_page .cont .date{ font-size:130%;font-weight:bold;display:block;margin-bottom:6%; }
#single_page .cont a{ text-decoration: underline;color:#289c4c; }
#single_page .cont p{ line-height:260%; }
#single_page .cont .note{ margin-bottom:200px; }

/* ----------------------------------------- */
/* news_inner
/* ----------------------------------------- */
.news_inner{ width: 91%; margin: 0 auto; padding-bottom: 80%; }
.news_inner h3{ font-size: 220%; line-height: 159%; font-weight: 600; margin-bottom: 5.2%; }
.news_inner span{ font-size:110%; font-weight: 600; margin-bottom: 5.4%; display: inline-block; }
.news_inner p{ font-size:95%; line-height: 247%; font-weight: 200; }

/* ----------------------------------------- */
/* recruit
/* ----------------------------------------- */
.recruit_page .breadcrumb{ margin-bottom: 1.4%; }
#recruit{ margin: 0 auto; }
#recruit .th_mid{ display:block;margin:0 auto;text-align: center;margin-bottom:2.9%; }
.flex_wrap{ display: flex; flex-wrap: wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between; }
.text_align_center{ text-align: center;line-height: 250%;margin-bottom: 2.5%; }
#recruit .introduction .th_mid{ margin-bottom: 5%; }
.introduction_wrap{ width: 30%;margin-bottom: 4.1%; }
.introduction_wrap img{ margin-bottom: 3%; }
.introduction_wrap .occupation, .introduction_wrap p{ padding-left:3%;margin-bottom: 1%; }
.introduction_wrap .name{ font-size: 230%;padding-left: 2%; color: #289C4C; }
.introduction_wrap p{ line-height:173%;text-align: justify;font-size: 97%; }

/* ----------------------------------------- */
/* production
/* ----------------------------------------- */
.production_inner_flex{ display: flex; justify-content: space-between; align-items: flex-start;margin-bottom: 33.1%; }
.production_inner_h2{ font-size:clamp(160%, 3.1vw, 250%); line-height: 172%; font-weight: 200; margin-bottom: 5.4%; }
.production_inner_p{ font-size:96%; line-height: 266%; font-weight: 200; text-align: justify; }
.production_inner_jpg{ width: 50%; margin-top: 1.1%; }
.production_inner_flex .caption{ width:47%; }

/* ----------------------------------------- */
/* company_info
/* ----------------------------------------- */
.company_info_page .breadcrumb{ margin-bottom: 0%; }
.company_info_jpg{ margin-bottom: 8.3%; }
.company_info_page .row{ border-top:1px solid #000;display:-webkit-box;display:-ms-flexbox;display:flex;padding:3.1% 0; }
.company_info_page .row .note.pc{ display:block; }
.company_info_page .row .note.sp{ display:none; }
.company_info_page .row:last-of-type{ border-bottom:1px solid #000; }
.company_info_page .row .th, .company_info_page .row .note{ font-size: 126%;line-height:167%; }
.company_info_page .row .th{ min-width:261px; }
.company_info_page .detail_wrap{ margin-bottom:27.9%; }


/* ----------------------------------------- */
/* privacy_protection
/* ----------------------------------------- */
.privacy_protection_page .breadcrumb{ margin-bottom: 4%; }
.privacy_protection_page .th_mid{ font-weight: bold;font-size: 240%;letter-spacing:1px;padding-left:4px;margin-bottom: 2.8%; }
.privacy_protection_page #company_info{ margin-bottom: 8.6%; }
.privacy_protection_page p{ line-height:250%; text-align: justify; }
.privacy_protection_page .intro_note{ padding-left: 3.9px;margin-bottom: 6%; }
.privacy_protection_page .row{ border-top:1px solid #000;padding:4.7% 0;font-size: 92%;font-weight:normal; }
.privacy_protection_page .row:last-of-type{ border-bottom:1px solid #000; }
.privacy_protection_page .row h4{ font-size: 160%;margin-bottom: 2.6%; }
.privacy_protection_page .no_mb{ margin-bottom: 0.5%; }
.privacy_protection_page li{ margin-bottom: 1%;margin-bottom: 1.5%; }

/* ----------------------------------------- */
/* 問い合わせ
/* ----------------------------------------- */
.form-control{ display: flex;text-align: center;justify-content: center;margin-bottom: 7%; }
.contact form input[type="submit"]{ border: none; }
input[type="image" i]{ width:90%;max-width:375px;margin: 0 auto; }
.contact_btn_img{ text-align: center;-webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;display:-webkit-box;display:-ms-flexbox;display:flex; }

/* フォオームリセット */
input:focus{ outline:none; }
.textarea_text:focus{ outline:none; }
.text_contact{ -moz-appearance:none;-webkit-appearance:none;appearance:none;background-color:#F3F3F3;background-image:none;border:none;border-radius:0;color:inherit;font-family:inherit;font-size:1em;padding:0.4em 0.8em;width:100%;box-sizing:border-box;min-height:40px; }
.text_contact:focus { border:1px solid rgba(0, 0, 0, 0.32);box-shadow:none;outline:none; }
.textarea_text { -moz-appearance:none;-webkit-appearance:none;appearance:none;background-color:#F3F3F3;background-image:none;border:none;border-radius:0;color:inherit;font-family:inherit;font-size:1em;height:30vw;max-height:280px;padding:0.4em 0.8em;width:100%;resize:none;box-sizing:border-box; }
.textarea_text:focus { box-shadow:none; }
.contact form{ width:100%;margin-bottom:130px; }
.wrap_confirm{ width:70%;max-width:485px;margin:0 auto; }
.contact .contact_hr{ height:1px;width:80%;max-width:982px;background-color:#BDBDBE;border:none;margin-top:5.7%; }
.contact .contact_hr:last-of-type{ margin-top:6.7%; }
.contact .conf_ttl{ text-align:center;font-size:20px;display:none;margin-top:5%; }
.contact  table{ width:100%;margin-bottom:30px;word-break:break-all;border-collapse:collapse; }
.contact input[type="image"]{ opacity:1;transition: opacity .3s;cursor: pointer; }
.contact input[type="image"]:hover{ opacity:0.8;transition: opacity .3s; }
.contact input[name="bt_back"]{ margin-bottom:3%;display:block; }
.contact .bt_wrap{ position:relative;width:260px;display:block;margin-left:auto;margin-right:auto; }
.contact .bt_wrap.next:after{ content:'';background:url(../img/arrow_icon.svg) no-repeat center center/contain;width:20px;height:20px;position:absolute;right:30px;top:50%;transform:translateY(-50%); }
.contact .bt_wrap.back{ margin-bottom:5%; }
.contact .contact_bottom_part{ display:block;margin:0 auto;width:55%;border-top:1px solid #BDBDBE;width:100%;padding-top:6.2%;margin-bottom:13%;margin-top:7%; }
.contact .contact_bottom_part .contact_bottom{ width:30.8%;max-width:440px;display:block;margin:0 auto; }
.contact form table .conf_text{ font-size:18px!important;height:30px; }
.contact form table .conf_text span{ color:#999; }
.contact form table .conf_text.conf_textarea{ height:auto;margin-top:10px; }
.contact form table .radio_option{ margin-bottom:8px; }
.errors{ margin-bottom: 5%; }
.errors span{ color:#b50009;padding:4px;border:1px solid #b50009;background-color:#ffd9db;border-radius:3px;line-height:164%;display:block;margin-bottom:8px;padding-left:30px;position:relative; }
.errors span:before{ content:'※';position:absolute;left:11px;top:5px; }
.contact form.confirm table th{ width:46px; }
.contact form.confirm table p{ min-height:18px;white-space:pre-wrap; }
.confirm_note .th{ color:#acacac; }
.contact form.confirm .form_title{ color:#acacac;display:block;font-size:16px; }
.contact form.confirm .form_row.flex{ -webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row; }
.contact .breadcrumb{ margin-bottom: 5%; }
.contact .narrow_wrap .top_note{ margin-bottom:10%;line-height: 258%; }
.contact form{ position:relative; }
.contact input[type="text"],.contact input[type="tel"],.contact input[type="email"],.contact textarea, .contact select{ width: 100%;margin-bottom:3%;padding:19px;border:2px solid #289c4c;box-sizing:border-box;background-color:#fff;border-radius: 6px; }
.contact input[type="radio"]{ margin-right: 0; }
.contact input[name="check"]{ cursor:pointer; }
.contact input[name="bt_confirm"]{ opacity:0.6;pointer-events: none; }
.contact input[name="bt_confirm"].on{ opacity:1;transition:opacity .3s;pointer-events: auto;cursor: pointer; }
.contact input[name="bt_confirm"].on:hover{ opacity:0.8;transition:opacity .3s;pointer-events: auto;cursor: pointer; }
.contact .select_wrap{ width:60%;position:relative;cursor: pointer; }
.contact .select_wrap::after{ content:'';position:absolute;right:24px;top:25%;display: inline-block;vertical-align: middle;color:#289c4c;line-height: 1;width: 1em;height: 1em;border: 0.1em solid currentColor;border-left: 0;border-bottom: 0;box-sizing: border-box;transform:rotate(135deg);pointer-events:none; }
.contact select{ -webkit-appearance: none;appearance: none; }
select::-ms-expand{ display: none; }
.contact input,.contact textarea,.contact .th,.subject_type .text,.confirm_note,select{ font-size:18px; }
.input_wrap .confirm_note{ margin-bottom:5px; }
.confirm_note{ min-height:18px;white-space:pre-wrap;word-break:break-word; }
.contact .row .th{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom: 6px;letter-spacing:-1px;font-size: 154%;margin-bottom: 1.1%; }
.contact .must .th .require{ display:block;width:48px;padding-left:10px; }
.contact .row{ margin-bottom:3.4%; }
.contact .subject_type{ margin-right:4px; }
.contact .link{ color:#289c4c;text-decoration: underline; }
.confirm .mid_th{ font-size: 170%;display:block;text-align: center;margin-bottom:5%; }
.confirm .row{ margin-bottom:30px; }
.confirm .row .th{ color:#acacac;margin-bottom: 3px;font-size: 135%; }
.complete_note_wrap{ text-align:center;font-size:22px;margin:130px 0 110px 0;font-weight:bold; }
.complete_note_wrap .note{ margin-bottom:3%; }
.complete_note_wrap .note.sub{ font-size:16px;font-weight:normal; }
.complete_note_wrap a{ color:#ff4bb4;text-decoration:underline; }

#entry404{ padding:100px 0;text-align: center; }
#entry404 *{ text-align: center;margin:0 auto;margin-top:15px; }
#entry404 .e_head{ margin-bottom: 30px; }

.complete_note{ display: block;position:relative;z-index:500;width:80%;margin-left: auto;margin-right: auto;margin-top: 200px;text-align: center;margin-bottom:10%; }
.complete_note span{ display:block;font-size:20px;line-height:200%; }
.complete_note .th{ font-weight:bold;font-size:25px;margin-bottom: 5%; }

@media screen and (max-width:1600px){
    .policy, .service, #home .vehicle{ margin-bottom: 25%; }
    .top_img_sp{ display: none; }
}
@media screen and (max-width:1470px){
    #home .top_note{ margin-top: 18.7%; max-width: 400px;}
}
@media screen and (max-width:1200px){
    /* .nav{ display:none; }0116_ryuji */
    /* .nav_list a{ padding:3vh 0; } */
    /* .hamburger-btn{ display:block; }0116_ryuji */
    .service_p br.middle{ display:none; }
    .footer .footer_upper .comp_info_wrap{ width:31%; }
    .footer .footer_upper .comp_info_wrap .footer_logo{ width:100%; }
    .footer .footer_upper .comp_info_wrap .footer_addr, .footer_upper .footer_tel{ font-size:12px; }
    .footer .footer_upper .footer_nav_wrap ul li{ margin-bottom:10px; }
    .footer .footer_upper .footer_nav_wrap ul li a{ font-size:14px; }
    .footer .footer_upper .comp_info_wrap_sp .footer_logo{ width:100%; }
    .footer .footer_upper .comp_info_wrap_sp .footer_addr, .footer_upper .footer_tel{ font-size:12px; }

    /* ----------------------------------------- */
    /* home
    /* ----------------------------------------- */
    .policy_back_img{ width:80%; }
    .policy_jpg, .service_jpg{ width: 48%; }

    /* ----------------------------------------- */
    /* news
    /* ----------------------------------------- */
    .news .row::after{ top:50%;transform:translateY(-50%); }
}
@media screen and (max-width:1000px){
    .service_inner_sec1 .caption{ width: 50%; }
    .service_inner_jpg{ width: 46%; }
    .service_inner_sec1 .caption br.middle{ display:none; }
    .nav .nav_lists .nav_list a { font-size: 12px; }
}
@media screen and (max-width:930px){
    .nav .nav_lists .nav_list a { font-size: 9px; }
}
@media screen and (max-width:820px){
.nav .nav_lists .nav_list { margin-right: 5.3%; }
}
@media screen and (max-width:767px){
    .nav{ display:none; }  /* 0116_ryuji */
    .nav_list{ text-align:center;border-bottom:1px solid #289c4c;width: 100%; }
    .nav_list:first-of-type a{ border-top:1px solid #289c4c;width: 100%; }
    .nav_list a{ padding:3vh 0; }
    .hamburger-btn{ display:block; }  /* 0116_ryuji */
    .hamburger{ max-width:100vw; }
    .footer{ padding-top: 12%;padding-bottom: 5%; }
    .footer .footer_upper{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse; }
    .footer_logo{ position:relative;margin-left: auto;margin-right: auto; }
    .footer .footer_upper .footer_nav_wrap{ margin:0 auto;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:80%;max-width:310px;margin-bottom: 6%; }
    .footer .footer_upper .comp_info_wrap .footer_addr, .footer_upper .footer_tel{ font-size:15px; }
    .footer .footer_upper .comp_info_wrap{ display:none; }
    .footer .footer_upper .comp_info_wrap.sp{ display:block;margin:0 auto;width:270px;margin-top:7%; }
    .footer .footer_upper .comp_info_wrap .footer_logo{ width:70%;margin:0 auto;margin-bottom:10px; }
    .footer .footer_upper .comp_info_wrap .footer_addr, .footer_upper .footer_tel{ font-size:13px;text-align:center; }
    .footer .footer_copy{ text-align:center; }
    .cont_wrap.blocks .cont{ width: 48%;margin-right:4%;margin-bottom:2.7%; }
    .cont_wrap.blocks .cont:nth-of-type(2n){ margin-right: 0; }
    .cont_wrap.blocks .cont .ttl{ margin-top:4.3%; }
    .cont_wrap.blocks .cont .note p{ margin-top:0;line-height:170%; }

    /* ----------------------------------------- */
    /* home
    /* ----------------------------------------- */
    .wrap .bg_line_body{ display: none; }
    #home .top .top_img{ display: none; }
    #home .top .top_img_sp{ display: block;height:500px;object-fit:cover; }
    #home .top_note{ margin-top: 31.7%; }

    /* ----------------------------------------- */
    /* 問い合わせ
    /* ----------------------------------------- */
    .wrap_form{ width:80%; }
    .contact .contact_bottom_part .contact_bottom{ width:80%; }
    .text_contact{ width:90%; }
    .textarea_text{ width:90%; }
    .contact .error_note{ padding-left:10px; }
    .contact .row .th{ font-size: 18px; }
    .contact .contact_info_wrapper .contact_number{ width:50%; }
    .contact .complete_note_sub{ text-align:left;font-size:14px;margin:20px auto;width:80%; }
    .contact table td .form_title,.contact table .radio .text{ font-size:16px; }
    .contact table td .form_row.flex{ -webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start; }
    .contact table td .form_row.flex .form_title{ line-height:40px; }
    .confirm .form-control{ margin-top:16%; }

    /* ----------------------------------------- */
    /* header
    /* ----------------------------------------- */
    #about{ text-align: center; }
    .policy, .service, .vehicle{ margin-bottom: 20%; }
    .policy_relative, .service_relative, .vehicle_caption{ width: 100%; }
    .vehicle_caption{ width: 100%;margin:0 auto; }
    .about_flex{ max-width:580px;margin-left: auto;margin-right: auto; }
    .about_flex.policy, .about_flex.vehicle{ -webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column; }
    .about_flex.service{ -webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse; }
    .news_inner_right{ margin: 0 auto; }
    .policy_jpg, .service_jpg{ margin:0 auto;margin-bottom: 5%;width: 100%; }
    .policy_back_img{ width: 50%; }
    .japan_back_img{ width: 70%; right: 16%;}
    .vehicle_p, .service_p{ margin-bottom: 5%; }
    .service_btn, .vehicle_btn{ max-width:350px; }
    .news_inner_left{ width: 195px; }
    #home .vehicle{ margin-bottom: 20%; }
    #service_inner{ text-align: center; }
    .service_inner_flex.service_inner_sec1{ -webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse; }
    .service_inner_jpg, .service_inner_sec1 .caption{ width: 100%; }
    .service_inner_flex.service_inner_sec3{ -webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column; }
    .service_inner_sec1, .service_inner_sec2{ margin-bottom: 23%; }

    /* ----------------------------------------- */
    /* 各ページ
    /* ----------------------------------------- */
    .each_top{ height:42vh; }
    .each_top .th img{ height:clamp(30px, 4vw, 35px); }

    /* ----------------------------------------- */
    /* news
    /* ----------------------------------------- */
    .news_page .row{ padding-top: 7%;padding-bottom: 7%; }
    #single_page .cont .th{ font-size: 160%; }

    /* ----------------------------------------- */
    /* service
    /* ----------------------------------------- */
    .service_page .wrap{ max-width:580px; }
    .service_inner_h2, .service_inner_sec2 .service_inner_h2{ font-size: 210%;margin-bottom: 4%; }
    .service_inner_jpg{ margin-bottom: 5%; }
    .service_inner_p, .service_inner_sec2 .service_inner_p{ text-align: justify; }
    .service_inner_sec3 .caption{ width: 100%; }

    /* ----------------------------------------- */
    /* vehicle
    /* ----------------------------------------- */
    .vehicle_page .truck{ -webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column; }
    .vehicle_page .truck figure{ width:100%;margin:0 auto 9% auto; }
    .vehicle_page .truck figure.t_3{ margin-bottom: 0; }

    /* ----------------------------------------- */
    /* recruit
    /* ----------------------------------------- */
    #recruit .text_align_center{ margin-bottom: 9%; }
    .introduction_wrap{ width: 46%;margin-bottom: 10%; }
    .production_inner_flex{ -webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse; }
    .production_inner_jpg{ width: 100%;margin-bottom: 5%; }
    .production_inner_flex .caption{ width: 100%; }
    .production_page .wrap{ max-width:580px; }

    /* ----------------------------------------- */
    /* company_info
    /* ----------------------------------------- */
    .company_info_page .row{ -webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column; }
    .company_info_page .row .th{ margin-bottom: 2%;font-size: 155%; }

}
@media screen and (max-width:575px){
    .footer_logo{ width:80%;max-width:220px; }
    .footer .footer_upper .footer_nav_wrap{ margin-bottom: 9%; }
    .footer .footer_upper .footer_nav_wrap .footer_nav_inner ul:last-of-type{ display:none; }
    .footer .footer_upper .footer_nav_wrap .footer_nav_inner{ display:none; }
    .footer .footer_upper .footer_nav_wrap .footer_list_sp{ display:block;display: -webkit-box;display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;width:90%;margin:0 auto;margin-top:9%; }
    .footer .footer_upper .footer_nav_wrap ul li a{ font-size:16px; }
    .footer .footer_upper .footer_nav_wrap ul li .round::before{ width:16px;height:16px; }
    .footer .footer_upper .footer_nav_wrap ul li .round::after{ left:0; }
    .footer .footer_upper .footer_nav_wrap ul li .no_round::before{ left:0; }
    .arrow::before{ left:-4px; }
    .footer .bottom{ -webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse; }
    .footer .privacy{ margin-bottom: 4%;text-align: center;font-size: 11px; }
    .footer_copy{ font-size: 11px; }
    .cont_wrap.rows .cont{ -webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column; }
    .cont_wrap.blocks{ max-width:360px;margin:0 auto; }
    .cont_wrap.blocks .cont{ width: 100%;margin-right: auto;margin-bottom: 11%; }
    .cont_wrap.blocks .cont:nth-of-type(2n){ margin-right: auto; }

    /* ----------------------------------------- */
    /* home
    /* ----------------------------------------- */
    #home .top_note{ margin-top: 49.7%; }
    .policy_h2, .service_h2, .vehicle_h2{ font-size: 190%;margin-bottom: 3.5%; }
    /* .policy_p, .service_p, .vehicle_p{ text-align: justify; } */
    .policy_p br.sp, .vehicle_p br.sp{ display:none; }
    #home .vehicle{ margin-bottom: 25%; }
    #home .news{ margin-bottom: 20%; }
    .news_flex{ -webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column; }
    .news_inner_left{ width: 100%;margin-right: auto; }
    #home .news .th{ display:block;text-align: center;width: 100%; }
    .news_inner_left .bt_news.pc{ display:none; }
    .news_inner_right{ width: 100%;margin-bottom: 6%; }
    .news .row::after{ bottom:20px; }
    .news .bt_news.sp{ display:block;max-width:220px;margin-left: auto;margin-right: auto; }
    #home .detail{ -webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column; }
    #home .detail_inner_left{ width: 100%;display:-webkit-box;display:-ms-flexbox;display:flex; }
    #home .detail_inner_left .box{ width: 50%; }
    #home .detail_inner_right{ width: 100%; }
    #home .detail_inner_right .note{ width: 65.4%; }
    #home .detail_inner_right .img{ width: 64.9%; }
    #home .detail{ margin-bottom: 40%; }
    .adoption p{ text-align: justifys; }

    /* ----------------------------------------- */
    /* お問い合わせ
    /* ----------------------------------------- */
    .wrap_form{ width:95%; }
    .wrap_confirm{ width:90%; }
    .contact .contact_hr{ width:90%; }
    .contact .text_contact{ width:100%; }
    .contact input[type="text"], .contact input[type="tel"], .contact input[type="email"], .contact textarea, .contact select{ padding:12px; }
    .contact input, .contact textarea, .subject_type .text, .confirm_note, select{ font-size: 16px; }
    .contact .select_wrap::after{ width:10px;height:10px; }
    .contact .th{ font-size: 120%; }
    .contact .must .th .require{ width:35px; }
    .contact form table{ margin:0 auto;margin-bottom:33px;width:100%; }
    .contact table td, .contact table th{ padding:10px 0; }
    .contact form table th{ margin-right:4px;font-size:14px; }
    .contact form table td{ display:block;padding-top:2px; }
    .contact form table td, form table p{ font-size:16px; }
    .contact form table td .form_row.name.comp{ margin-top:25px; }
    .contact form table .conf_text{ font-size:16px!important; }
    .contact form table .contact_email th { margin-top:7px; }
    .contact form table .contact_email td{ padding-top:2px; }
    .contact form table .radio.bottom th{ margin-top:30px; }
    .contact form table .radio.bottom td{ padding-top:2px; }
    .textarea_text{ width:100%; }
    .contact form .contact_caution { font-size:11px; }
    .contact form .bt_confirm{ font-size:14px;padding:10px 0;width:220px; }
    .contact table th .tag_require{ padding-bottom: 0; }
    .contact form table .radio.bottom th{ margin-top: 7px; }
    .contact .mid_th{ font-size: 160%;margin-bottom:12%;text-align: center;display:block; }
    .contact .contact_bottom_part{ width:90%; }
    .contact .contact_bottom_part p{ font-size:17px; }
    .contact .complete_note{ font-size:16px;margin:90px auto 50px auto;width:80%; }
    .contact table .radio.bottom .subject_type{ margin-bottom:6%; }
    .complete_note{ display: block;position:relative;z-index:500;width:80%;margin-left: auto;margin-right: auto;margin-top: 200px;text-align: center; }
    .complete_note span{ display:block;font-size:16px;line-height:200%; }
    .complete_note .th{ font-weight:bold;font-size:18px }

    /* ----------------------------------------- */
    /* 各ページ
    /* ----------------------------------------- */
    .breadcrumb{ margin-bottom: 10%; }
    .each_top{ height:280px; }
    .each_top .th img{ height:30px; }

    /* ----------------------------------------- */
    /* news
    /* ----------------------------------------- */
    .news_page .row{ padding-top: 10%;padding-bottom: 10%; }

    /* ----------------------------------------- */
    /* service
    /* ----------------------------------------- */
    .service_inner_h2, .service_inner_sec2 .service_inner_h2{ font-size: 150%; }
    .service_inner_sec2 .service_inner_h2 br{ display:block; }

    /* ----------------------------------------- */
    /* vehicle
    /* ----------------------------------------- */
    .vehicle_page .safety_wrap{ -webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column; }
    .vehicle_page .truck{ padding:8% 7% 18% 7%; }
    .vehicle_page .truck figure{ margin-bottom: 15%; }
    /* .vehicle_page .truck figure.t_2{ margin-bottom: 6%; } */
    .vehicle_page .safety_wrap .note_wrap{ width: 100%; }
    .vehicle_page .safety_wrap .safety_img{ width: 140px;margin-right: auto;margin-left: auto;margin-top: 6%; }

    /* ----------------------------------------- */
    /* recruit
    /* ----------------------------------------- */
    #recruit .text_align_center{ text-align:left; }
    .introduction_wrap{ width:100%;max-width:340px;margin-right:auto;margin-left: auto;margin-bottom: 16%; }
    #recruit .text_align_center{ margin-bottom: 18%; }

    /* ----------------------------------------- */
    /* company_info
    /* ----------------------------------------- */
    .company_info_page .row{ padding:5.2% 0; }
    .company_info_page .row .note.pc{ display:none; }
    .company_info_page .row .note.sp{ display:block;display:-webkit-box;display:-ms-flexbox;display:flex; }


}
