@charset "utf-8";
/* ===========================================================
 *
 * 髙砂工業 スタイルシート
 * Last UpDate : 2026/6/26 *
=========================================================== */

/* ----------------------------------------------------------
	style.css
---------------------------------------------------------- */

/* ----------------------------------------------------------
 common
---------------------------------------------------------- */


html {
  font-feature-settings: "palt";
}

body {
color: #222;
background-color: #fff;
font-family: "Noto Sans JP","source-han-sans-japanese","Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", serif;
font-weight: 400;
font-style: normal;
letter-spacing: 1px;
}

.noto-sans-jp-uniquifier{
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.google-sans-flex {
  font-family: "Google Sans Flex", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings:
    "slnt" 0,
    "wdth" 100,
    "GRAD" 0,
    "ROND" 0;
}

.roboto-uniquifier {
  font-family: "Roboto", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

.special-gothic-expanded-one-regular {
  font-family: "Special Gothic Expanded One", sans-serif;
  font-weight: 400;
  font-style: normal;
}


/*
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .h2Wrap{ line-height: 1.7 !important; }

}
*/

a{transition: .5s;}
a:hover{transition: .5s;}

img{max-width: 100%; height: auto;}

:root{
	--main-color: #D30000;
  --orange: #EC7C51;
}


/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/*a:link		{ color: #fff; text-decoration: none; }
a:visited	{ color: #333; text-decoration: none; }
a:hover		{ color: #425a9f; text-decoration: none; }
a:active	{ color: #425a9f; text-decoration: none; }*/



/* ----------------------------------------------------------
 header
---------------------------------------------------------- */

header{position: fixed; width: 100%; height: 100px; z-index: 999; overflow: hidden;}
.header_sec{ margin: 0 0 0 auto; display: flex; height: 100px; align-items: center;}

.header_logo01{background-color: #fff; width: 23%; max-width: 440px; text-align: center; border-bottom-right-radius: 10px;}
.header_logo01 a{display: block; width: 100%; height: 100px; position: relative; padding: 25px;}
.header_logo01 img{width: 100%; max-width: 359px; height: auto;}
.header_logo01 a:hover{transition: .5s; opacity: 0.7;}

.header_right{margin: 0 0 0 auto; background-color: #fff; height: 100px; display: flex; align-items: center; border-bottom-left-radius: 10px;}
.header_navi{ padding: 0 30px;}
.header_navi ul{display: flex; gap: 25px;}
.header_item a{padding: 36px 0 30px; font-size: 1.7rem; font-weight: 500; display: block;}
.header_item a::after{content:""; display: block; width: 0; height: 3px; background-color: #F29216; margin-top: 5px; transition: .5s;}
.header_item a:hover::after{width: 100%; transition: .5s;}
.header_item02{display: block; font-family: "Roboto", serif; font-weight: 400; font-size: 1.2rem; text-align: center;}

.header_tel{padding: 27px 15px; margin-right: 15px;}
.header_tel01{font-family: "Roboto", serif; font-weight: 700; font-style: normal; font-size: 2.8rem; color: #0A0B0A; display: block; line-height: normal; letter-spacing: 0;}
.header_tel i{color: #fff; background-color: var(--main-color); margin-right: 5px; font-size: 2rem; padding: 8px; border-radius: 100%;}
.header_tel02{display: block; font-weight: 400; font-size: 1.2rem; text-align: right; color: #999;}

.header_contact{width: 200px; text-align: center;}
.header_contact a{color: #fff; background-color: var(--main-color); border: 1px solid var(--main-color); font-size: 1.7rem; display: flex; align-items: center; justify-content: center; gap: 15px; padding: 25px 0 25px; transition: .5s;}
.header_contact i{ font-size: 3.5rem;  display:block; margin-bottom: 3px;}
.header_contact a:hover{background-color: #fff; color: var(--main-color); transition: .5s;}


/***************************************
サブメニュー
***************************************/
.has-child{position: relative;}


ul.submenu {
  position: absolute;
  top: 60px;
  left: 50%;
  transform: translate(-50% , 0);
  width: 230px;
  
  margin: 0;
  text-align: center;
  z-index: 99999;
  display: block;
  box-shadow: 0px 8px 10px -6px rgba(0,0,0,0.3);
}


.submenu a{padding: 15px 0; display: block; color: #222;  background-color: #fff; font-size: 1.5rem; border-bottom: 1px solid #004A84;}
.submenu a:hover{background-color: #004A84; color: #fff;}
.submenu li{opacity: 0; height: 0; transition: .3s;  color: transparent; visibility: hidden;}
.submenu li:last-child a{border: none;}

ul.submenu li:first-child {
  border: 0 none; 
}
.has-child:hover .submenu li{visibility: visible; height: 50px; transition: .3s;  opacity: 1; visibility: visible;}

.header_item ul.submenu a::after{display: none;}


/*▲ メニューカスタマイズ (ここまで) ▲ */


/*ACCORDION toggle*/
 
	.accordion_logo{width: 80%; margin: 0 auto 30px; text-align: center;}
.toggle p{
    position: absolute;
    color: #2B4F91;
    left: 50%;
    bottom: 27px;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    transform: translate(-50%, 0);}

	.toggle{
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1000;
    margin: 0;
    padding: 0;
    width: 100px;
    height: 100px;
    border: none;
    transition: background-color 0.2s ease;
    cursor: pointer;
    background-color: #004A84;}
	
	.toggle::before, .toggle::after {
    content: "";
    background-color: #000;
    transition: background-color 0.3s ease;
}
	
	.toggle > span, .toggle:before, .toggle:after{
	  display: block;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 48%;
    width: 35px;
    height: 2px;
    margin: -2px 0 0 -15px;}
	.toggle:before{transform: translateY(-9px); background-color: #fff;}
	.toggle:after{transform: translateY(9px); background-color: #fff;}


.toggle {
  position: fixed;

}



.accordion_menu_list {
 	display: none; 
	position: fixed;
	width: 100%;
	height: 100vh;
	margin: 0;
	list-style: none;
	top: 0;
	left: 0;
	padding: 60px 25px;
  	background-color: #fff;
  
    }
.toggle[aria-expanded=true] > span {
  opacity: 0;
}
.toggle[aria-expanded=true]::before, .toggle[aria-expanded=true]::after {

}
.toggle[aria-expanded=true]::before {
  animation: 0.3s ease closeBar1 forwards;
}
.toggle[aria-expanded=true]::after {
  animation: 0.3s ease closeBar2 forwards;
}
.toggle.-close::before {
  animation: 0.3s ease closeBar1Rev forwards;
}
.toggle.-close::after {
  animation: 0.3s ease closeBar2Rev forwards;
}

@keyframes closeBar1 {
  0% {
    transform: translateY(-10px);
  }
  50% {
    transform: translateY(0) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(45deg);
  }
}
	
@keyframes closeBar2 {
  0% {
    transform: translateY(10px);
  }
  50% {
    transform: translateY(0) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(-45deg);
  }
}
@keyframes closeBar1Rev {
  0% {
    transform: translateY(0) rotate(45deg);
  }
  50% {
    transform: translateY(0) rotate(0);
  }
  100% {
    transform: translateY(-10px);
  }
}
@keyframes closeBar2Rev {
  0% {
    transform: translateY(0) rotate(-45deg);
  }
  50% {
    transform: translateY(0) rotate(0);
  }
  100% {
    transform: translateY(10px);
  }
}
.nav {
	position: fixed;
	top: 0;
    right: 0;
	z-index: 100;
	width: 100%;
	height: 100%;
	padding: 60px 40px;
    border: 1px solid #fff;
	justify-content: center;
	align-items: center;
	overflow: scroll;
	background: rgba(255, 102, 0, 0.9);
	color: #333;
	transition: opacity 0.3s ease, visibility 0.3s ease;
    /* スクロールバー非表示 */
    /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
  -ms-overflow-style: none;
  /*Firefoxへの対応*/
  scrollbar-width: none;
}

 /*Google Chrome、Safariへの対応*/
.nav::-webkit-scrollbar{
  display: none;

}

.nav[aria-hidden=true] {
  	visibility: hidden;
  	opacity: 0;
 	pointer-events: none;
    
}
.nav[aria-hidden=false] {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
    overflow: scroll;
}

.accordion_menu li {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.5;
}
.accordion_menu li a {
	color: #fff;
	transition: .5s;
	border-bottom: 1px solid #c6c6c6;
	display: block;
	padding: 12px 0;
  font-weight: 700;
}

.accordion_menu i{margin-left: 10px;}
.accordion_menu li a:hover{ transition: .5s; opacity: 0.8;}
.accordion_menu_sub li{line-height: 2rem;}
.accordion_menu_sub li a{font-size: 1.5rem; padding: 8px 20px; border-bottom: none; position: relative;}
.accordion_menu_sub li a:after{content: ""; padding: 1.5px; position: absolute; top: 17px; left: 12px; background-color: #333; border-radius: 100%;}

.accordion_menu i{margin-left: 10px;}
.accordion_menu li a:hover{ transition: .5s; opacity: 0.7;}
.accordion_menu_sub li{line-height: 2rem;}
.accordion_menu_sub li a{font-size: 1.5rem; padding: 8px 20px; border-bottom: none; position: relative;}
.accordion_menu_sub li a:after{content: ""; padding: 1.5px; position: absolute; top: 17px; left: 12px; background-color: #333; border-radius: 100%;}
/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
.bottom_contact_wrapper{width: 100%; position: relative; padding: 50px 0; background-color: #eee;}
.bottom_contact_sec{}
.bottom_contact_inner{}
.bottom_contact_head{font-family: "Special Gothic Expanded One", sans-serif; text-align: center; color: var(--main-color); font-size: 8rem; font-weight: 700; position: absolute; left: 50%;top: -60px; transform: translateX(-50%); white-space: nowrap;}
.bottom_contact_txt{color: #222; text-align: center; font-size: 2rem; font-weight: 400; margin-bottom: 30px;}

.bottom_contact_flex{display: flex; align-items: center; gap: 35px; justify-content: center; width: 100%; margin: 0 auto;}
.bottom_contact_number{ font-family: "Roboto", serif; font-weight: 700; font-style: normal; font-size: 4rem; line-height: normal;}
.bottom_contact_number i{color: #fff; background-color: var(--main-color); margin-right: 10px; font-size: 2.8rem; padding: 10px; border-radius: 100%;}
.bottom_contact_number span{display: block; font-weight: 400; font-size: 1.5rem; text-align: right; font-family: "Noto Sans JP", serif;}
.bottom_contact_btn{width: 300px; text-align: center; }
.bottom_contact_btn a{display: block; color: #fff; background-color: var(--orange);  font-weight: 700; padding: 20px 0; font-size: 1.8rem; border: 1px solid var(--orange);}
.bottom_contact_btn a:hover{color: orange; background-color: #fff;}
.bottom_contact_btn i{font-size: 2.5rem; margin-right: 5px; vertical-align: bottom; display: inline-block;}

.bottom_link_wrapper{width: 100%; margin-bottom: 30px; font-size: 1.6rem;}
.bottom_link_wrapper ul{display: flex; gap: 20px; justify-content: center; flex-wrap: wrap;}
.bottom_link_wrapper li{color: #fff;  font-weight: 400; font-size: 1.5rem; position: relative;}
.bottom_link_wrapper li:after{content: "|"; position: absolute; color: #fff; right: -13px;}
.bottom_link_wrapper li:last-child::after{display: none;}

footer{width: 100%; text-align: center; padding: 50px 0 0px; background-color: #510E0E;}
.footer_logo{ text-align: center; margin-bottom: 30px;}
.footer_logo a{transition: .5s;}
.footer_logo a:hover{transition: .5s; opacity: .5;}
.footer_info{ font-weight: 400; font-size: 1.6rem; color: #fff; margin-bottom: 30px; line-height: 25px;}


.footer_recruit_btn{width: 400px; text-align: center; margin: 0 auto;}
.footer_recruit_btn a{display: block; color: #006A84; background-color: #fff; border-radius: 5px; border: 1px solid #fff; padding: 20px 0; font-size: 2.2rem; font-weight: 700;}
.footer_recruit_btn a:hover{color: #fff; background-color: #006A84;}
.footer_copyright{font-size: 1.2rem; font-weight: 400; color: #fff;  text-align: center; margin-top: 30px; padding: 20px 0;}


/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.wrapper{ position: relative;}
.contents{background-color: #fff;}
.notfound_sec{max-width: 1100px; margin: 0 auto; padding: 80px 0; font-size: 2rem; width: 90%;}

.anchor{ padding-top: 100px; margin-top: -100px; display: inline-block; position: absolute;}

/* lnavi */
.lnavi{ max-width: 800px; margin: 30px auto 0; padding: 12px 40px; background-color: #eee; color: #222; width: 90%;}
.lnavi ul{ display: flex; gap: 30px;   justify-content: center;}
.lnavi ul li{position: relative; font-size: 1.4rem;  font-weight: 700;}
.lnavi ul li:before{content: "/"; font-size: 1.4rem; position: absolute; top: 0px; left: -20px;}
.lnavi ul li:first-child::before{display: none;}
.lnavi ul a{transition: .5s;}
.lnavi ul a:hover{opacity: 0.6; transition: .5s;}

.lnavi_bottom .lnavi_list{margin-bottom: 0;}

/* トップページ */
.top_wrapper{padding-top: 0;}
.top_first_wrapper{width: 100%;  position: relative; }
.top_first_img{width: 100%; position: relative;}
.top_first_img img{width: 100%; height: auto; z-index: 0;}
.top_first_img::after{content: ""; position: absolute; width: 100%; height: 100%; left: 0; top: 0; background-color: #999; opacity: 0.3; mix-blend-mode: multiply;}
.top_first_txt{ position: absolute;  color: #fff; z-index: 2; left: 5%; bottom: 20%; text-shadow: 0px 1px 5px rgba(0, 0, 0, 0.4);}
.top_first_txt01{font-weight: 700; font-style: normal; font-size: clamp(6rem, 9vw, 11rem); text-align: left;}
.top_first_txt01 span{font-size: clamp(7rem, 8vw, 9rem);}

.top_first_img video{display: block; max-width: 100%;}

.top_news_wrapper{position: absolute; right: 0; bottom: -55px; width: 1560px; max-width: 100%; padding: 30px; background-color: #fff;}
.top_news_sec{margin: 0 ; display: flex;  align-items: center; gap: 50px;}
.top_news_head{font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400; font-style: normal; font-size: 4.5rem; color: var(--main-color);}
.top_news_item{display: flex; align-items: center; gap: 40px; }
.top_news_date{font-size: 1.5rem;}
.top_news_tit{font-size: 2rem;}
.top_news_tit a:hover{opacity: .7; }

.top_since_wrapper{background: url(/info/wp-content/uploads/img_since_bg01.jpg); padding: 100px 0 80px; background-size: cover;}
.top_since_sec{width: 90%; max-width: 1600px; margin: 0 0 0 auto; display: flex; gap: 80px;}
.top_since_left{max-width: 560px; width: 50%;}
.top_since_head{margin-bottom: 20px; font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400;}
.top_since_head01{ margin-right: 20px; font-size: 5.4rem;}
.top_since_head02{font-size: 9rem; color: var(--main-color);}
.top_since_sec p{font-size: 2.5rem; font-weight: 400; line-height: 4.5rem; margin-bottom: 50px;}
.top_since_btn{width: 500px; max-width: 100%; margin: 0 0 0 auto; transform: translateX(200px); text-align: center;}
.top_since_btn a{display: block; color: #fff; background: linear-gradient(90deg, #b73c45 30%, #881818 110%); padding: 20px 0; font-size: 2rem;}
.top_since_btn a:hover{opacity: 0.6;}
.top_since_right{}

.top_business_wrapper{background: url(/info/wp-content/uploads/img_top_business01-1.jpg); background-repeat: no-repeat; background-size: cover;}
.top_business_sec{ padding: 50px 0; width: 90%; max-width: 1600px; margin: 0 0 0 auto; color: #fff; position: relative;}
.top_business_head{margin-bottom: 20px;}
.top_business_head01{position: relative; font-size: 2.5rem; display: inline-block; text-align: center;}
.top_business_head01:after{content: ""; width: 200px; height: 2px; background-color: #fff; display: inline-block; vertical-align: middle; margin-left: 30px;}
.top_business_head02{font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400; font-size: clamp(7rem, 8vw, 10rem); line-height: 1; display: block;}
.top_business_sec p{font-size: 2.5rem; color: #fff; max-width: 550px; line-height: 4.5rem; margin-bottom: 30px; letter-spacing: 2px;}
.top_business_btn{width: 500px; max-width: 100%; text-align: center; position: absolute; left: 0; bottom: -35px; z-index: 1;}
.top_business_btn a{display: block; color: #fff; background: linear-gradient(90deg, #b73c45 30%, #881818 110%); padding: 20px 0; font-size: 2rem;}
.top_business_btn a:hover{opacity: 0.6;}

.top_equipment_wrapper{background: url(/info/wp-content/uploads/img_since_bg01.jpg); padding: 100px 0 120px; position: relative; background-size: cover; background-repeat: no-repeat;}
.top_equipment_sec{width: 90%; max-width: 1670px; margin: 0 auto 0 0; display: flex; gap: 80px;}
.top_equipment_right{width: 50%;}
.top_equipment_head{margin-bottom: 20px;}
.top_equipment_head01{position: relative; font-size: 2.5rem; display: inline-block; color: #333;}
.top_equipment_head01:after{content: ""; width: 200px; height: 2px; background-color: #222; display: inline-block; vertical-align: middle; margin-left: 30px;}
.top_equipment_head02{font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400; font-size: clamp(7rem, 8vw, 10rem); color: var(--main-color); line-height: 1; display: block;}
.top_equipment_sec p{font-size: 2.5rem; line-height: 4.5rem; letter-spacing: 2px; margin-bottom: 20px; max-width: 550px;}

.top_equipment_btn{width: 500px; max-width: 100%; text-align: center;}
.top_equipment_btn a{display: block; color: #fff; background: linear-gradient(90deg, #b73c45 30%, #881818 110%); padding: 20px 0; font-size: 2rem; }
.top_equipment_btn a:hover{opacity: 0.6;}

.top_equipment_slide{width: 90%; max-width: 1920px; left: 50%; bottom: -140px; transform: translateX(-50%); position: absolute;}
.top_equipment_slide ul{display: flex; gap: 20px;}

.top_products_wrapper{background-color: #080B12;}
.top_products_sec{width: 90%; max-width: 1700px; margin: 0 0 0 auto; padding: 200px 0 50px; display: flex; background: url(/info/wp-content/uploads/img_top_bg_truck_resize01.jpg); background-repeat: no-repeat; background-position-x: right; background-position-y: bottom; background-size: cover;}
.top_products_txt{color: #fff;}
.top_products_head{margin-bottom: 20px;}
.top_products_head01{position: relative; font-size: 2.5rem; display: inline-block;}
.top_products_head01::after{content: ""; width: 200px; height: 2px; background-color: #fff; display: inline-block; vertical-align: middle; margin-left: 30px;}
.top_products_head02{font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400; font-size: clamp(7rem, 8vw, 10rem); display: block; line-height: 1;}
.top_products_txt p{font-size: 2.5rem; margin-bottom: 25px; line-height: 4.5rem; letter-spacing: 2px; max-width: 550px;}
.top_products_btn{width: 500px; max-width: 100%; text-align: center;}
.top_products_btn a{display: block; color: #fff; background: linear-gradient(90deg, #b73c45 30%, #881818 110%); padding: 20px 0; font-size: 2rem;}
.top_products_btn a:hover{opacity: 0.7;}

.top_products_figure{display: none;}

.top_recruit_wrapper{background: url(/info/wp-content/uploads/img_top_recruit_bg01-1.jpg); background-size: cover; background-repeat: no-repeat;}
.top_recruit_wrapper a{padding: 170px 0 100px; display: block;}
.top_recruit_wrapper a:hover{opacity: 0.6;}
.top_recruit_inner{width: 90%; max-width: 1600px; margin: 0 auto;}
.top_recruit_inner{color: #fff;}
.top_recruit_inner01{font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400; font-size: clamp(7rem, 8vw, 10rem); display: block; line-height: 1; margin-bottom: 20px;}
.top_recruit_inner02{font-size: 2.5rem; display: block;}
.top_recruit_inner03{display: inline-block; margin-top: 20px; position: relative;}
.top_recruit_inner03::after{content: "";  width:0;  height:0; border-style:solid; border-width: 6px 0 6px 10.4px; border-color: transparent transparent transparent #FFFFFF; position: absolute; top: 50%; right: -20px; transform: translateY(-50%);}

.top_column_wrapper{padding: 80px 0 100px; background-color: #fff;}
.top_column_sec{max-width: 1600px; width: 90%; margin: 0 auto;}
.top_column_head{margin-bottom: 30px;}
.top_column_head01{position: relative; font-size: 2.5rem; display: inline-block;}
.top_column_head01::after{content: ""; width: 200px; height: 2px; background-color: #222; display: inline-block; vertical-align: middle; margin-left: 30px;}
.top_column_head02{font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400; font-size: clamp(7rem, 8vw, 10rem); display: block; line-height: 1; color: var(--main-color);}
.top_column_list{max-width: 950px; margin: 0 auto; display: flex; flex-direction: column;}
.top_column_list li{padding: 15px 0; display: flex; gap: 12px; align-items: center; border-bottom: 1px solid #ccc;}
.top_column_info{display: flex; align-items: center; gap: 30px;}
.top_column_cat{text-align: center; min-width: 150px;}
.top_column_cat a{display: block; color: #fff; background-color: var(--orange); padding: 3px 10px; border-radius: 30px;}
.top_column_date{font-size: 1.5rem;}
.top_column_tit{font-size: 2rem;}

.top_advantage_wrapper{width: 100%; padding: 300px 0 80px; background-color: #333;}
.top_advantage_sec{ max-width: 1600px; width: 90%; margin: 0 auto; color: #fff;}
.top_advantage_head{margin-bottom: 60px; position: relative; margin-bottom: 10px;}
.top_advantage_head02{font-weight: 500; font-size: 6rem; display: block; position: relative; z-index: 1;}
.top_advantage_head_bg{position: absolute; font-family: "Roboto", serif; font-weight: 700; color: #484848; top: -60px; left: 0; line-height: 1; font-size: 15rem; letter-spacing: 0px;}
.top_advantage_list{display: flex; gap: 50px;}
.top_advantage_list li{width: calc((100% - 100px)/3);}
.top_advantage_topic{color: #fff; font-weight: 700; font-size: 3rem; margin-bottom: 10px;}
.top_advantage_img{margin-bottom: 10px;}
.top_advantage_term{font-size: 2.2rem; font-weight: 700; color: #fff; margin-bottom: 15px;}
.top_advantage_item p{font-size: 1.7rem; font-weight: 400; line-height: 3.2rem; color: #fff;}

.page_top_link{
	position: fixed;
	right: 5%;
	bottom: 10%;
	z-index: 1;
	max-width: 130px;
	text-align: center;
	cursor: pointer;

	opacity: 0;
	visibility: hidden;
	transform: translateY(20px);
	transition: opacity 0.4s ease, transform 0.4s ease, visibility 0.4s ease;
	pointer-events: none;
}

/* 表示時 */
.page_top_link.is-show{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.page_top_link_inner{
	position: relative;
}

/* ホバー時：全体をふわふわ動かす */
.page_top_link.is-show:hover .page_top_link_inner{
	animation: pageTopFloat 2.4s ease-in-out infinite;
}

/* ホバー時：車輪を回転 */
.page_top_link.is-show:hover .page_top_link_wheel{
	animation: pageTopRotate 2.8s linear infinite;
}

.page_top_link_txt{
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}

.page_top_link_wheel img,
.page_top_link_txt img{
	max-width: 100%;
	height: auto;
	display: block;
}

@keyframes pageTopFloat{
	0%{
		transform: translateY(0);
	}
	50%{
		transform: translateY(-7px);
	}
	100%{
		transform: translateY(0);
	}
}

@keyframes pageTopRotate{
	0%{
		transform: rotate(0deg);
	}
	100%{
		transform: rotate(360deg);
	}
}


/* h1見出し */
.h1_wrapper{width: 100%; padding: 180px 0 40px; background: url(/info/wp-content/uploads/img_h1_bg01.jpg); background-repeat: no-repeat; background-size: cover;}
.h1_tit_item{width: 90%; max-width: 1200px; margin: 0 auto;}
.h1_tit_inner{display: inline-block;}
.h1_tit_item h1{position: relative;}
.page_tit01{text-transform: uppercase; font-family: "Special Gothic Expanded One", sans-serif; font-style: normal; font-size: 7rem; color: var(--main-color); line-height: 1; display: block; text-align: left;}
.page_tit02{color: #222; font-weight: 700; font-style: normal; font-size: 2.5rem; display: block;}


/* ぱんくず */
.breadcrumbs_wrapper{}
.breadcrumbs{font-size: 1.5rem;  font-weight: 500; display: flex; gap: 5px; flex-wrap: wrap; justify-content: end;}  
.breadcrumbs > ol{display: flex;} 
.breadcrumbs > ol > li{ display: inline-block; position: relative; }
.breadcrumbs > ol > li:before{ content: "/"; display: block; position: absolute; top: 4px; left: 6px;  font-size: 1.1rem; }
.breadcrumbs > ol > li:first-child:before{ content: ""; font-size: 1.7rem;}
.breadcrumbs > ol > li a{ font-size: 1.1rem; margin: 0 0 0 20px; }
.breadcrumbs > ol > li:first-child a{ margin: 0 0 0 0; }
.breadcrumbs > ol > li a:hover{ opacity: 0.6; }
.breadcrumbs ol span a{margin: 0 8px 0 8px;}
.breadcrumbs ol span:first-child a{margin: 0 8px 0 0;}


/* セカンドページ共通 */
.page_wrapper{padding: 80px 0 100px;}
.page_sec{width: 90%; margin: 0 auto; max-width: 1400px;}
.page_sec p{ font-weight: 400; font-size: 1.8rem; line-height: 3.2rem; letter-spacing: 2px; text-align: left;}
.page_sec p strong{font-weight: bold;}
.page_sec h2{margin-bottom: 20px;}
.h2_tit01{color: var(--main-color); font-size: 1.8rem; display: inline-block; font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400;}
.h2_tit01::before{content: ""; width: 55px; height: 2px; background-color: var(--main-color); display: inline-block; vertical-align: middle; margin-right: 15px;}
.h2_tit02{font-size: 4.8rem; font-weight: 900; display: block;}
.page_sec h3{font-weight: 700; font-size: 3.5rem; padding-bottom: 5px; border-bottom: 2px solid var(--orange); margin-bottom: 20px; text-align: left;}
.page_term{margin-bottom: 50px;}

/* お知らせ */
.news_wrapper{background-color: #fff;}
.news_sec{width: 90%; max-width: 1200px; margin: 0 auto; }
.news_inner{}

.contents .wp-pagenavi{margin-top: 30px;}
.contents .wp-pagenavi a, 
.contents .wp-pagenavi span.current{border: 1px solid #bfbfbf;}
.contents .wp-pagenavi a:hover{background-color: #F29216; border: 1px solid #bfbfbf;}

.news_list{display: flex; flex-direction: column;}
.news_item{display: flex; align-items: center; gap: 30px; padding: 15px 0; border-bottom: 1px solid #ccc;}
.news_date{font-weight: 400; font-size: 1.5rem;}
.news_tit{font-weight: 400; font-size: 2rem;}



/*お知らせ詳細*/
.rp4wp-related-posts ul{float: none!important;}
.wp-pagenavi{display: flex; gap: 10px; justify-content: center; margin-top: 50px; display: flex; gap: 10px; text-align: center; line-height: 2; justify-content: center; }
.wp-pagenavi a{width: 38px; height: 38px; font-size: 1.7rem; line-height: 2; display: inline-block; color: #333; border: 1px solid #333; text-align: center; border-radius: 100%;}
.wp-pagenavi a:hover{color: #fff; background-color: #333;}
.wp-pagenavi span{font-size: 1.7rem; line-height: 2; color: #fff; background-color: #F29216; display: inline-block; width: 40px; height: 40px; border: 1px solid #F29216; border-radius: 100%;}
  
.news_single_detail{ }
.news_single_info{display: flex; gap: 10px;}
.news_single_date{font-size: 1.5rem; font-weight: 400;}
.news_single_cat ul{display: flex; gap: 5px;}
.news_single_cat ul li{ min-width: 150px; text-align: center; }
.news_single_cat ul a{ display: block; font-weight: 700; font-size: 1.2rem; color: #fff; background-color: #F29216; padding: 3px 0; border-radius: 12px;}
.news_single_tit{ color: #F29216; font-weight: 700; font-size: 3rem; margin-bottom: 40px; text-align: left;}
.news_single_txt h2{ font-size: 2.2rem; color: #fff; background-color: #F29216; padding: 10px 10px; font-weight: 700; border-radius: 5px; margin-bottom: 20px;}
.news_single_txt h3{font-size: 2rem; font-weight: 700; margin-bottom: 20px; padding-bottom: 8px; border-bottom: 1px solid #ccc;}
.news_single_txt h4{font-size: 1.8rem; margin-bottom: 10px;}
.news_single_txt p{font-size: 1.6rem; font-weight: 400; line-height: 3.5rem; margin-bottom: 40px;}
.news_single_txt figure{text-align: left; margin-bottom: 30px!important;}
.news_single_txt ul{font-size: 1.6rem; line-height: 3.5rem; list-style: disc; margin-bottom: 15px;}
.news_single_txt ul li{margin-left: 25px;}


/* 髙砂工業の強み */
.advantage_sec{width: 94%; max-width: initial;}
.advantage_flex{display: flex; gap: 50px; max-width: 1560px; margin: 0 0 80px auto;}
.advantage_flex02{margin: 0 auto 80px 0;}
.advantage_head01{font-size: 2rem; font-family: "Special Gothic Expanded One", sans-serif; color: var(--orange);}
.advantage_head01 span{font-size: 3.1rem; margin-left: 10px;}
.advantage_head02{font-weight: 700; font-size: 5rem; margin-bottom: 20px; color: var(--main-color);}
.advantage_flex p{font-size: 2.5rem; line-height: 4.5rem;}
.advantage_btn{width: 500px; max-width: 100%; text-align: center;}
.advantage_btn a{display: block; color: #fff; background: linear-gradient(90deg, #b73c45 30%, #881818 110%); padding: 20px 0; font-size: 2rem;}
.advantage_btn a:hover{opacity: 0.6;}

.advantage_item{ max-width: 1400px; padding: 50px 20px; border-bottom: 1px solid #ccc;}
.advantage_item_last{border-bottom: none;}
.advantage_item .advantage_head01{font-size: 2.2rem;}
.advantage_item_txt{font-size: 1.7rem;}
.advantage_item_txt_strong{font-weight: 700; font-size: 2.2rem;}

/* 事業内容 */
.business_sec{max-width: 1200px;}
.business_list p strong{font-size: 2.7rem; font-weight: 700; margin-bottom: 5px;}
.business_list figure{margin-bottom: 10px;}
.business_list figure img{width: 100%; height: auto; border-radius: 10px;}
.business_list p{font-size: 1.8rem; line-height: 3.5rem;}

/* 製品実績 */
.products_Sec{max-width: 1200px; margin: 0 auto;}
.products_list{display: flex; gap: 30px; flex-wrap: wrap;}
.products_list li{width: calc((100% - 60px)/3);}
.products_name{font-size: 1.5rem;}
.products_name .products_size{font-size: 1.3rem; margin-left: 5px;}

/* 工場設備 */
.equipment_sec{max-width: 1200px;}
.equipment_tabs input[type="radio"]{ display: none; }
.equipment_term_list{ display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 30px;}
.equipment_term_btn{width: calc((100% - 90px)/4); display: inline-block; padding: 12px 20px; border: 1px solid var(--main-color); border-radius: 25px; background: #fff; color: var(--main-color); cursor: pointer; transition: 0.3s; text-align: center; font-weight: 700;}
.equipment_term_btn:hover{ background: var(--main-color); color: #fff;}

.equipment_contents{ width: 100%; }

.equipment_content{ display: none; }

#equipment_tab01:checked ~ .equipment_contents .equipment_content01,
#equipment_tab02:checked ~ .equipment_contents .equipment_content02,
#equipment_tab03:checked ~ .equipment_contents .equipment_content03,
#equipment_tab04:checked ~ .equipment_contents .equipment_content04,
#equipment_tab05:checked ~ .equipment_contents .equipment_content05,
#equipment_tab06:checked ~ .equipment_contents .equipment_content06,
#equipment_tab07:checked ~ .equipment_contents .equipment_content07{ display: block; }

#equipment_tab01:checked ~ .equipment_term_list label[for="equipment_tab01"],
#equipment_tab02:checked ~ .equipment_term_list label[for="equipment_tab02"],
#equipment_tab03:checked ~ .equipment_term_list label[for="equipment_tab03"],
#equipment_tab04:checked ~ .equipment_term_list label[for="equipment_tab04"],
#equipment_tab05:checked ~ .equipment_term_list label[for="equipment_tab05"],
#equipment_tab06:checked ~ .equipment_term_list label[for="equipment_tab06"],
#equipment_tab07:checked ~ .equipment_term_list label[for="equipment_tab07"]{ background: var(--main-color); border-color: var(--main-color); color: #fff;}

.equipment_table table{width: 100%; font-size: 1.5rem; font-weight: 400; margin-bottom: 50px;}
.equipment_table thead th{padding: 10px 5px; border-bottom: 2px solid orange; text-align: left;}
.equipment_no{width: 50px;}
.equipment_name{width: 270px;}
.equipment_ability{}
.equipment_type{width: 230px;}
.equipment_maker{}
.equipment_number{ width: 100px;}
.equipment_type02{width: 280px;}
.equipment_table tbody th,
.equipment_table tbody td{border-bottom: 1px solid #ccc; padding: 10px 0 10px 5px; text-align: left;}
.equipment_table .equipment_name{min-width: 300px;}
.equipment_table .equipment_type, .equipment_table .equipment_maker{min-width: 160px;}
.equipment_table .equipment_number{min-width: 50px;}
.equipment_ability{min-width: 130px;}
.equipment_type02{min-width: 280px;}


/* 企業情報 */
.company_wrapper{padding: 60px 0;}
.company_sec{max-width: 1200px; margin: 0 auto;  font-size: 1.6rem; width: 90%;}
.company_greeting{}
.company_greeting p{font-size: 2rem; line-height: 4rem;}
.greeting_president{font-size: 2.8rem; font-weight: 600; margin-top: 30px; text-align: right;}
.greeting_president span{font-size: 1.8rem; font-weight: 600; margin-right: 10px;}
.company_table{margin-bottom: 30px;}
.company_table table{width: 100%; }
.company_table th,
.company_table td{border: none!important; border-bottom: 1px solid #ccc!important; padding: 15px 30px!important; text-align: left;}
.company_history_table table{width: 100%; }
.company_history_table th,
.company_history_table td{border: none!important; border-bottom: 1px solid #ccc!important; padding: 15px 30px!important; text-align: left; font-size: 1.6rem; font-weight: 400;}
.company_map iframe{width: 100%;}

.company_policy p{font-size: 2.5rem; line-height: 4.5rem;}


/* コラム */
.column_sec{display: flex; gap: 80px; width: 90%; max-width: 1200px; margin: 0 auto; padding: 80px 0;}
.column_left{width: 80%;}
.column_right{width: 20%; min-width: 330px; padding: 30px 30px; background-color: #F4F9F7; height: fit-content;}

.column_list{display: flex; flex-direction: column;}
.column_list_item{padding: 15px; border-bottom: 1px solid #ccc;}
.column_info{display: flex; gap: 8px; margin-bottom: 10px; align-items: center;}
.column_date{font-size: 1.6rem;}
.column_cat{display: flex; gap: 10px; }
.column_cat_item{text-align: center;}
.column_cat_item a{display: block; color: #fff; background-color: var(--orange); padding: 2px 15px; border: 1px solid var(--orange); border-radius: 20px; font-size: 1.3rem; font-weight: 700;}
.column_cat_item a:hover{color: var(--orange); background-color: #fff;}

.sidebar_sec{margin-bottom: 20px;}
.sidebar_search form{display: flex; gap: 5px; justify-content: center;}
.sidebar_search input[type="text"]{font-size: 1.8rem; width: 220px; padding: 8px;}
.sidebar_search input[type="submit"]{cursor: pointer; border: none; background-color: var(--main-color); color: #fff; font-size: 1.6rem; padding: 4px 15px 6px; font-family: zen-old-mincho, sans-serif;}
.sidebar_head{color: var(--main-color); font-size: 2rem; font-weight: 600; margin-bottom: 15px;}

.sidebar_list{display: flex; flex-direction: column;}
.sidebar_list li{padding: 10px 0; border-bottom: 1px solid #ccc; font-size: 1.5rem;}
.sidebar_post_img{margin-bottom: 10px;}

/* コラム詳細 */
.column_single_info{display: flex; gap: 10px; margin-bottom: 10px;}
.column_single_date{font-size: 1.5rem; font-weight: 400;}
.column_single_cat ul{display: flex; gap: 5px;}
.column_single_cat ul li{ min-width: 150px; text-align: center; }
.column_single_cat ul a{ display: block; font-weight: 700; font-size: 1.2rem; color: #fff; background-color: var(--orange); padding: 3px 0; border-radius: 12px;}
.column_single_tit{font-size: 3.5rem; font-weight: 700; margin-bottom: 30px;}

.column_single_txt h2{font-size: 3.5rem; font-weight: 700; color: #fff; background-color: var(--main-color); padding: 10px; margin-bottom: 20px;}
.column_single_txt h3{font-size: 3rem; }
.column_single_txt h4{font-size: 2.5rem; font-weight: 700; margin-bottom: 20px;}
.column_single_txt p{margin-bottom: 20px;}

.column_single_txt ul{list-style: disc; padding-left: 30px; font-size: 1.8rem; margin: 15px 0;}
.column_single_txt ol{list-style: decimal; padding-left: 30px; font-size: 1.8rem; margin: 15px 0;}


/* 採用情報 */
.recruit_wrapper{padding-bottom: 80px;}
.recruit_main_wrapper{position: relative;}
.recruit_main_img{position: relative;}
.recruit_main_img img{opacity: 0.8; width: 100%; height: auto;}
.recruit_main_img::before{content: ""; background-color: #666; position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
.recruit_main_txt{font-size: clamp(7rem, 7vw, 10rem); color: #fff; font-weight: 700; position: absolute; left: 50%; top: 70%; transform: translate(-50%,-50%); z-index: 1; white-space: nowrap;}
.recruit_main_txt span{font-size: clamp(6rem, 6vw, 8rem);}

.recruit_lnavi{padding: 20px; background-color: #D30000; color: #fff;}
.recruit_lnavi ul{ display: flex; gap: 30px;  justify-content: center;}
.recruit_lnavi li{position: relative; font-size: 1.7rem;  font-weight: 500;}
.recruit_lnavi li:before{content: "/"; font-size: 1.7rem; position: absolute; top: 0px; left: -20px;}
.recruit_lnavi li:first-child::before{display: none;}
.recruit_lnavi a{transition: .5s;}
.recruit_lnavi a:hover{opacity: 0.6; transition: .5s;}

.recruit_sec_head{margin-bottom: 30px;}
.recruit_sec_head01{font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400; position: relative; font-size: 1.6rem; display: inline-block; color: var(--main-color);}
.recruit_sec_head01:before{content: ""; width: 55px; height: 2px; background-color: var(--main-color); display: inline-block; vertical-align: middle; margin-right: 15px;}
.recruit_sec_head02{font-size: 4.8rem; color: #222; line-height: 1; display: block; font-weight: 900;}
.recruit_wrapper h3{font-size: 4rem; font-weight: 700; color: var(--orange); margin-bottom: 20px;}

.recruit_about_wrapper{padding: 80px 0;}
.recruit_about_sec{max-width: 1200px; margin: 0 auto; width: 90%;}
.recruit_about_topic{display: flex; gap: 50px; margin-bottom: 50px;}
.recruit_about_left{width: 55%; position: relative; z-index: 3;}

.recruit_about_txt{font-size: 2rem; line-height: 40px; max-width: 580px;}
.recruit_about_right{ width: 45%; position: relative;}
.recruit_about_right img{border-radius: 30px;}
.recruit_about_img01{position: absolute; top: 0px; right: 80px; z-index: 2; width: 100%; z-index: 2;}
.recruit_about_img02{position: absolute; top: 220px; right: 0; width: 80%; z-index: 1;}
.recruit_about_img03{position: absolute; top:  80px; right: 40px; z-index: 2; width: 100%; z-index: 0;}

.recruit_about_feature{margin-bottom: 50px;}
.recruit_feature_list{display: flex; gap: 20px; }
.recruit_feature_list li{width: calc((100% - 40px)/3);}
.recruit_feature_head{font-size: 3rem; line-height: 4rem; font-weight: 700; margin-bottom: 10px;}
.recruit_feature_img{margin-bottom: 10px;}
.recruit_feature_img img{border-radius: 10px;}
.recruit_feature_txt{font-size: 1.8rem; line-height: 3.5rem; }

.recruit_number_list{display: flex; gap: 50px; max-width: 1200px; margin: 80px auto 0; flex-wrap: wrap; row-gap: 80px;}
.recruit_number_list li{width: calc((100% - 100px)/3); background-color: #F17F6C; border-radius: 10px; padding: 80px 30px 30px 30px; position: relative;}
.recruit_number_img{position: absolute; left: 50%; top: -50px; transform: translateX(-50%);}
.countSec01{text-align: center; color: #fff;}
.countSecTit{color: #fff; font-size: 3rem; font-weight: 600;}
.countSecNum{font-size: 3rem;}
.countSecNum b{color: #fff; font-size: clamp(5rem, 7vw, 7rem); font-family: "Google Sans Flex", sans-serif; font-weight: 500; letter-spacing: 0;}

.recruit_works_wrapper{}
.recruit_works_sec{max-width: 1200px; margin: 0 auto 50px; width: 90%;}
.recruit_works_list{display: flex; gap: 20px; flex-wrap: wrap; row-gap: 40px;}
.recruit_works_list li{width: calc((100% - 40px)/3);}
.recruit_works_head{font-size: 2.7rem; font-weight: 700; margin-bottom: 5px;}
.recruit_works_img{margin-bottom: 10px;}
.recruit_works_img img{border-radius: 10px;}
.recruit_works_txt{font-size: 1.7rem; line-height: 3.5rem;}

.recruit_staff_sec{width: 90%; max-width: 1200px; margin: 0 auto;}
.recruit_interview{display: flex; gap: 60px; justify-content: center; margin-bottom: 80px;}
.recruit_interview:nth-child(2n){flex-direction: row-reverse;}
.recruit_interview_img{width: 40%; position: relative; text-align: center;}
.recruit_interview_img img{border-radius: 10px;}
.recruit_interview_name{display: flex; gap: 15px; width: 300px; background-color: #F17F6C; border-radius: 20px; color: #fff; justify-content: center; align-items: center; padding: 10px; margin: 0 auto; transform: translate(0, -40px);}
.recruit_interview_initial{font-family: "Google Sans Flex", sans-serif; font-size: 4rem;}
.recruit_interview_info{font-size: 1.5rem;}
.recruit_interview_info span{display: block;}

.recruit_interview_txt{width: 60%;}
.recruit_interview_txt_head{font-size: 3.5rem; font-weight: 700; margin-bottom: 20px;}
.recruit_interview_txt_head i{font-size: 4rem;   margin-right: 10px;
  background: linear-gradient(45deg, #2B7EBD 10%, #0CC1A9 90%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;}

.recruit_interview_txt p{font-size: 1.8rem; line-height: 3.3rem;}
.recruit_interview_txt_bottom{display: flex; gap: 30px; margin-top: 30px;}
.recruit_interview_txt02,
.recruit_interview_txt03{width: 100%;}

.recruit_infomation_sec{width: 90%; margin: 0 auto 80px; max-width: 1200px;}
.recruit_information_ideal{margin-bottom: 50px;}
.recruit_ideal_topic{font-size: 2.7rem; font-weight: 700; margin-bottom: 20px;}
.recruit_ideal_txt{font-size: 2.2rem; line-height: 4rem; font-weight: 500;}


/* よくある質問 */
.recruit_faq{margin-bottom: 50px;}
.faq_list{ width: 90%; margin: 0 auto 50px; font-weight: 700; font-style: normal; max-width: 1000px;}
.faq_list_item{background-color: #eee; border: 1px solid #eee; width: 100%; margin-bottom: 20px; transition: .5s;}

.faq_question{ display: flex; gap: 40px; cursor: pointer; position: relative; padding: 25px 30px 25px 80px; }
.faq_question::before{content: "Q."; font-weight: 700; font-family: "Google Sans Flex", sans-serif; color: #222; position: absolute; left: 25px; top: 12px; font-size: 3.5rem; transition: .5s;}
.faq_question_txt{font-weight: 500; font-size: 2rem; color: #333; transition: .5s;}

.faq_answer{background-color: #fff; color: var(--orange); padding: 25px 30px 25px 80px;  display: none; font-size: 2rem; font-weight: 500; line-height: 3rem; position: relative;}
.faq_answer::before{content: "A."; font-family: "Google Sans Flex", sans-serif; color: var(--orange); position: absolute; left: 25px; top: 22px; font-size: 3.5rem;}
.faq_answer a{color: #0693e3; text-decoration: underline; font-weight: 700;}

.faq_list_item.open{background-color: var(--orange); border: 1px solid var(--orange); transition: .5s;}
.faq_list_item.open .faq_question_txt{color: #fff; transition: .5s;}
.faq_list_item.open .faq_question::before{color: #fff; transition: .5s;}
.faq_list_item .faq_answer { display: none;}
.faq_list_item.open .faq_answer { display: block; }

/* 親に相対位置を指定（右端に絶対配置するため） */
.faq_question {
  position: relative;
  padding-right: 24px; /* アイコン分の余白を確保 */
}

/* アイコン本体 */
.faq_question_icon {
  position: absolute;
  top: 50%;
  right: 50px;
  width: 28px;
  height: 28px;
  transform: translateY(-50%);
  background-color: var(--main-color);
  padding: 5px;
  border-radius: 100%;
}

/* 横線（共通） */
.faq_question_icon::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 15px;
  height: 2px;
  background: #fff;
  transform: translate(-50%, -50%);
}

/* 縦線（+の時だけ表示） */
.faq_question_icon::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 15px;
  background: #fff;
  transform: translate(-50%, -50%);
}

/* 開いたら「-」にする（縦線を非表示） */
.faq_list_item.open .faq_question_icon::after {
  display: none;
}


.recruit_detail{
    width: 100%;
}

.recruit_detail_switch input[type="radio"]{
    display: none;
}

.recruit_tab_buttons{
    display: flex;
    gap: 35px;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.recruit_tab_button{
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 280px;
    height: 50px;
    padding: 0 30px;
    border: 1px solid #df0000;
    border-radius: 9999px;
    background: #fff;
    color: #df0000;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: 0.3s ease;
    box-sizing: border-box;
}

#recruit_tab_new:checked ~ .recruit_tab_buttons .recruit_tab_button_new,
#recruit_tab_career:checked ~ .recruit_tab_buttons .recruit_tab_button_career{
    background: #df0000;
    color: #fff;
}

.recruit_tab_content{
    display: none;
}

#recruit_tab_new:checked ~ .recruit_tab_contents .recruit_tab_content_new{
    display: block;
}

#recruit_tab_career:checked ~ .recruit_tab_contents .recruit_tab_content_career{
    display: block;
}

.recruit_dtail_table table{
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.recruit_dtail_table tr{
    border-bottom: 1px solid #cfcfcf;
}

.recruit_dtail_table tbody tr:first-child{
    border-top: 1px solid #cfcfcf;
}

.recruit_dtail_table th,
.recruit_dtail_table td{
    padding: 10px;
    font-size: 16px;
    line-height: 1.9;
    text-align: left;
    vertical-align: middle;
    box-sizing: border-box;
}

.recruit_dtail_table th{
    width: 210px;
    color: #df0000;
    font-weight: 700;
}

.recruit_dtail_table td{
    color: #222;
    font-weight: 500;
}

@media screen and (max-width: 767px){
    .recruit_tab_buttons{
        gap: 15px;
        margin-bottom: 20px;
    }

    .recruit_tab_button{
        min-width: 0;
        width: 100%;
        height: 46px;
        font-size: 15px;
        padding: 0 20px;
    }

    .recruit_dtail_table th,
    .recruit_dtail_table td{
        display: block;
        width: 100%;
        padding: 10px;
    }

    .recruit_dtail_table th{
        padding-bottom: 8px;
    }

    .recruit_dtail_table td{
        padding-top: 0;
    }
}

/* お問合わせ */
.contact_wrapper{background-color: #fff;}
.contact_sec{max-width: 1200px; margin: 0 auto; padding: 40px 0; width: 90%; }
.policy_wrapper{background-color: #fff;}
.policy_sec{max-width: 1000px; margin: 0 auto;}
.policy_sec h3{ font-weight: 400; font-size: 2.3rem; color: #888; margin-bottom: 15px; background-color: initial; padding: 0; border: none;}
.policy_txt{margin-bottom: 40px;}
.policy_txt p{ font-weight: 400; line-height: 3.5rem; font-size: 1.6rem;}

.contact_thanks{max-width: 1275px; margin: 0 auto; padding: 80px 0; line-height: 3.5rem;}


/* フォーム */
.page_sec .contact_item{display: flex; width: 100%; max-width: 1000px; margin: 0 auto; padding: 20px 20px; border-bottom: 1px solid #ccc;}
.page_sec .contact_tit{width: 35%;  font-weight: 700; position: relative; margin-left: 80px; }
.page_sec .contact_tit p{font-size: 18px; line-height: initial;}
.page_sec .contact_tit span{position: absolute;  background-color: #E02E30; color: #fff; margin-right: 15px; border: 1px solid #E02E30; padding: 4px 8px; left: -80px; top: -5px; font-size: 18px;}
.contact_txt,
.contact_adress,
.contact_txtarea{width: 65%;}
.contact_txt input{font-size: 20px; background: #f7f7f7; padding: 8px; border: 1px solid #ccc; font-family: zen-old-mincho, sans-serif; width: 80%;}
.contact_txtarea textarea{font-size: 20px; padding: 8px; background: #f7f7f7; border: 1px solid #ccc; font-family: zen-old-mincho, sans-serif; width: 80%;}
.contact_adress_sub p{padding-bottom: 15px;}
.contact_adress_sub span{display: block;}
.contact_adress input{background: #f7f7f7; border: 1px solid #ccc; padding: 8px; font-size: 20px; font-family: zen-old-mincho, sans-serif; width: 80%;}
.contact_submit{border-bottom: none;}
.contact_submit_btn{text-align: center; margin-top: 30px;}
.contact_submit_btn p{text-align: center;}
.contact_submit_btn input{background-color: var(--main-color); color: #fff; font-size: 16px; border: none; letter-spacing: 1px; padding: 12px 12px; cursor: pointer; }



input[type="checkbox"]{float: left;}
.contact_check{display: flex;}
.contact_submit .contact_tit{width: 30%;}
.wpcf7-spinner{display: block;}

.form_sec{max-width: 1000px; margin: 0 auto; padding-bottom: 80px;}
.form_tit{position: relative; max-width: 1000px; margin: 0 auto 100px;}
.form_tit01{ position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
  font-size: 1.2rem;
  width: 140px;
  padding: 4px 0;
  border-radius: 18px;
  background-color: #5083CF;}

.form_tit02{font-size: 4rem;
  font-weight: 500;
  display: block;
  text-align: center;
  padding: 30px 0;
  border-bottom: 2px solid #333;
  border-top: 2px solid #5083CF;}

.main .nf-form-content .list-select-wrap .nf-field-element>div, .main .nf-form-content input:not([type=button]), .main .nf-form-content textarea{color: #333;}
.main .nf-form-content .list-select-wrap .nf-field-element>div:focus, .main .nf-form-content input:not([type=button]):focus, .main .nf-form-content textarea:focus{color: #333;}

.contact_radio input[type="radio"]{width: initial; height: initial; box-sizing: border-box; padding: 0px; vertical-align: baseline; font-size: 1.6rem;}
.contact_select select{padding: 5px; font-size: 1.6rem; }
.contact_file input[type="file"]{font-size: 1.5rem; margin-bottom: 5px;}
.contact_file_caution{font-size: 1.5rem;}


/* サンクスページ */
.tenants_sec{width: 90%; max-width: 1200px; margin: 0 auto;}



/*お知らせ詳細*/
.rp4wp-related-posts ul{float: none!important;}
.wp-pagenavi{display: flex; gap: 10px; justify-content: center; margin-top: 50px; display: flex; gap: 10px; text-align: center; line-height: 2; justify-content: center; }
.wp-pagenavi a{width: 38px; height: 38px; font-size: 1.7rem; line-height: 2; display: inline-block; color: #333; border: 1px solid #333; text-align: center; border-radius: 100%;}
.wp-pagenavi a:hover{color: #fff; background-color: #333;}
.wp-pagenavi span{font-size: 1.7rem; line-height: 2; color: #fff; background-color: #F29216; display: inline-block; width: 40px; height: 40px; border: 1px solid #F29216; border-radius: 100%;}
  
.news_single_detail{ }

.news_single_tit{ color: #F29216; font-weight: 700; font-size: 3rem; margin-bottom: 40px; text-align: left;}
.news_single_txt h2{ font-size: 2.2rem; color: #fff; background-color: #F29216; padding: 10px 10px; font-weight: 700; border-radius: 5px; margin-bottom: 20px;}
.news_single_txt h3{font-size: 2rem; font-weight: 700; margin-bottom: 20px; padding-bottom: 8px; border-bottom: 1px solid #ccc;}
.news_single_txt h4{font-size: 1.8rem; margin-bottom: 10px;}
.news_single_txt p{font-size: 1.6rem; font-weight: 400; line-height: 3.5rem; margin-bottom: 40px;}
.news_single_txt figure{text-align: left; margin-bottom: 30px!important;}
.news_single_txt ul{font-size: 1.6rem; line-height: 3.5rem; list-style: disc; margin-bottom: 15px;}
.news_single_txt ul li{margin-left: 25px;}


.flex_img{gap: 40px;}
.flex_img_item{width: calc((100% - 40px)/2); }

/* 404error */
.error_sec{text-align: center; padding: 200px 0 120px;}



/* サイトマップ */
.sitemap_wrapper{padding: 60px 0;}
.sitemap_sec{max-width: 1200px; margin: 0 auto; width: 90%;}
.sitemap_list01{display: flex; flex-direction: column; }
.sitemap_list01 li{margin-bottom: 25px;}
.sitemap_item01{font-size: 2.2rem; position: relative; transition: 0.5s; font-weight: 700; color: var(--main-color);}
.sitemap_list02{display: flex; flex-direction: column; gap: 15px; font-size: 1.5rem; margin: 20px 0 0 40px;}
.sitemap_list02 li{position: relative; margin-bottom: 0; color: #222;}
.sitemap_list02 li:before{content: ""; padding: 4px; background-color: var(--orange); border-radius: 100%; position: absolute; top: 8px; left: -15px;}
.sitemap_recruit{margin: 50px 0 0 80px;}


/* 採用ページ募集フォーム */
.contact_item select{font-size: 1.8rem; height: 40px; padding: 8px; margin-right: 5px; border: 1px solid #ccc;}
.page_sec .recruit_form_upload_caution{text-align: center; margin-top: 20px;}
.visually-hidden{display: none;}

.wpcf7-turnstile{text-align: center; margin-bottom: 20px;}


/* ----------------------------------------------------------
 SP CSS
---------------------------------------------------------- */
@media screen and (max-width:680px){
img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 60%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; height: auto !important; padding-top: 0; }

/* 非表示用 */
.noneSP	{ display: none !important; }


/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{position: fixed; background-color: #fff; height: 60px; width: 100%; z-index: 999;}

.header_sec{height: 60px;}
.header_logo{height: 60px; flex-basis: initial;}
.header_logo01 a{ padding: 0; height: initial;}
.header_logo h1{margin-left: 10px; padding-top: 0; text-align: left;}
.header_logo01{width: 100%; text-align: left; max-width: initial; height: 60px; padding: 13px;}
.header_logo01 img{width: 220px;}



/*ACCORDION*/
.toggle{width: 60px; height: 60px; background-color: var(--main-color);}
.toggle p{bottom: 11px;}


/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */

.btm_menu { position: fixed; bottom: -50px; width: 100%; border-top: 1px solid #ccc; z-index: 99; }
.btm_menu li { float: left; width: 50%; }
.btm_menu li:first-child a { border-right: 1px solid #ccc; }
.btm_menu li a { display: block; height: 50px; text-align: center; font-size: 1.6rem; padding: 15px 5px 5px; background-color: var(--main-color); color: #fff; transition: .5s;}
.btm_menu li a i{ font-size: 1.8rem; margin-right: 10px; }
.btm_menu li a:hover { background-color: #fff; color: #333; transition: .5s;}
.btm_menu ul:after { content: ''; clear: both; display: block; }

.bottom_contact_wrapper{ padding: 30px 0;}
.bottom_contact_sec{width: 90%; display: initial; position: initial;}
.bottom_contact_head{font-size: 4rem; position: initial; transform: none;}
.bottom_contact_inner{display: flex; flex-direction: column; gap: 15px; padding: 20px 20px 30px;}
.bottom_contact_txt{margin-bottom: 15px; font-size: 1.8rem;}
.bottom_contact_flex{flex-direction: column; padding: 0; gap: 20px;}
.bottom_contact_number{font-size: 3.5rem; padding: 0; border: none;}
.bottom_contact_btn{width: 300px; max-width: 100%;}
.bottom_contact_btn a{padding: 15px; font-size: 1.8rem;}

.bottom_link_wrapper li{font-size: 1.2rem;}

footer{padding: 30px 0 50px;}
.footer_sec{width: 90%; margin: 0 auto; display: block; text-align: center;}
.footer_item{display: none;}
.footer_sec01{padding: 0; border: none;}
.footer_sitemap{display: none;}
.footer_logo{text-align: center; margin-bottom: 25px;}
.footer_logo img{max-width: 280px; margin: 0 auto;}
.footer_info{ font-size: 1.5rem;}
.footer_copyright{margin: 20px auto 0; text-align: center;}


    
/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.wrapper{ position: relative; overflow: hidden; padding-top: 60px;}
.sp_br{display: block;}
.anchor{padding-top: 60px; margin-top: -60px; display: block;}

/* ぱんくず */
.breadcrumbs_wrapper{margin-bottom: 10px;}
.breadcrumbs{text-align: center; justify-content: left; font-size: 1.2rem;}  



/*トップページ*/
.top_first_inner{position: relative;}
.top_first_img{width: 100%;}
.top_first_txt{position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); bottom: initial;}
.top_first_txt01{font-size: clamp(3rem, 6vw, 5rem); line-height: 1.5; text-align: center; white-space: nowrap;}
.top_first_txt01 span{font-size: clamp(2.5rem, 6vw, 4.5rem);}

.top_news_wrapper{position: initial; width: 100%; padding: 15px;}
.top_news_sec{display: block;}
.top_news_item{display: block; }
.top_news_head{font-size: 2rem; margin-bottom: 10px; text-align: center;}
.top_news_date{font-size: 1.4rem;}
.top_news_tit{font-size: 2rem;}

.top_since_wrapper{padding: 30px 0;}
.top_since_sec{flex-direction: column; margin: 0 auto; gap: 30px;}
.top_since_left{width: 100%; max-width: initial;}
.top_since_head01{font-size: 3rem; margin-right: 10px;}
.top_since_head02{font-size: 4.5rem;}
.top_since_sec p{font-size: 1.8rem; line-height: 3.5rem; margin-bottom: 30px;}
.top_since_btn{margin: 0 auto; text-align: center; transform: none;}
.top_since_btn a{padding: 15px 0; font-size: 1.8rem;}

.top_business_wrapper{padding: 30px 0; background-position: center;}
.top_business_wrapper a{padding: 30px 0;}
.top_business_sec{margin: 0 auto;}
.top_business_head01{font-size: 2rem;}
.top_business_head01:after{margin-left: 10px; width: 80px;}
.top_business_head02{font-size: 4rem; }
.top_business_btn{position: initial;}
.top_business_btn a{padding: 15px 0; font-size: 1.8rem;}
.top_business_sec p{font-size: 1.8rem; line-height: 3.5rem;}

.top_equipment_wrapper{padding: 30px 0; background-position: center;}
.top_equipment_sec{margin: 0 auto; flex-direction: column-reverse; gap: 40px;}
.top_equipment_right{width: 100%;}
.top_equipment_head01{font-size: 2rem;}
.top_equipment_head01:after{margin-left: 10px; width: 80px;}
.top_equipment_head02{font-size: 4rem;}
.top_equipment_sec p{font-size: 1.8rem; line-height: 3.5rem;}
.top_equipment_btn a{padding: 15px 0; font-size: 1.8rem;}
.top_equipment_slide{position: initial; transform: none; margin: 20px auto 0;}
.top_equipment_slide ul{flex-wrap: wrap;}
.top_equipment_slide ul li{width: calc((100% - 20px)/2);}

.top_products_sec{padding: 30px 0; margin: 0 auto; flex-direction: column; position: relative; z-index: 0; background: none;}
.top_products_txt{width: 100%;}
.top_products_head01{font-size: 2rem;}
.top_products_head01::after{margin-left: 10px; width: 80px;}
.top_products_head02{font-size: 4rem;}
.top_products_txt p{font-size: 1.8rem; line-height: 3.5rem;}
.top_products_btn a{padding: 15px 0; font-size: 1.8rem;}
.top_products_figure{display: block; position: absolute; bottom: 0; right: -5%; width: 570px; z-index: -1; opacity: 0.9;}

.top_recruit_wrapper{ background-position: center;}
.top_recruit_wrapper a{padding: 30px 0;}
.top_recruit_inner{text-align: center;}
.top_recruit_inner01{font-size: 4rem; margin-bottom: 10px;}
.top_recruit_inner02{font-size: 2rem;}

.top_column_wrapper{padding: 30px 0;}
.top_column_head01{font-size: 2rem;}
.top_column_head01::after{margin-left: 10px; width: 80px;}
.top_column_head02{font-size: 4rem;}
.top_column_list li{flex-direction: column; align-items: flex-start;}
.top_column_info{gap: 15px;}
.top_column_cat a{font-size: 1.4rem;}
.top_column_tit{font-size: 1.6rem;}

/* ページトップリンク */
.page_top_link_wheel{max-width: 80px;}


/* セカンドページ共通 */
.h1_wrapper{width: 100%; padding: 30px 0;}
.h1_tit_inner{text-align: center;}
.h1_tit_item{margin: 0 auto; padding: 0; z-index: 1;}
.page_tit01{font-size: 3.5rem;}
.page_tit02{position: initial; display: block; font-size: 2rem; text-align: left;}

.page_wrapper{padding: 30px 0 50px;}
.page_term{margin-bottom: 50px;}
.page_sec p{font-size: 1.6rem;}
.page_sec figure{text-align: center;}
.page_sec h2{font-size: 2.2rem;}
.h2_tit02{font-size: 4rem;}
.page_sec h3{font-size: 3rem;}


/* 新着情報 */
.news_wrapper{padding: 30px 0;}
.news_list{gap: 20px;}
.news_item{flex-direction: column; align-items: start; gap: 10px;}
.news_head{display: block;}
.news_item_date{font-size: 1.4rem;}
.news_tit{font-size: 1.5rem;}

/* コラム */
.column_sec{padding: 30px 0; flex-direction: column; gap: 50px;}
.column_left{width: 100%;}
.column_right{width: 100%;}

/* コラム詳細 */
.column_single_tit{font-size: 3rem;}
.column_sec h2{padding: 10px; font-size: 2.2rem;}
.column_sec h3{font-size: 2rem;}
.column_sec h4{font-size: 1.8rem;}

.column_single_txt ul,
.column_single_txt ol{font-size: 1.6rem; line-height: 1.8;}


/* 強み */
.advantage_sec{width: 90%; margin: 0 auto;}
.advantage_sec h2{margin-bottom: 0;}
.advantage_flex{margin-bottom: 40px;}
.advantage_flex p{line-height: 3.2rem;}
.advantage_btn a{padding: 10px; font-size: 1.8rem;}

.advantage_flex02{flex-direction: column-reverse!important;}
.advantage_flex02 .wp-block-column{width: 100%!important;}

/* 製品実績 */
.products_list{}
.products_list li{width: calc((100% - 30px)/2);}
.products_name .products_size{display: block; margin-left: 0;}

/* 設備・工場紹介 */
.equipment_term_list{gap: 20px; flex-direction: column;}
.equipment_term_btn{width: 100%;}

.equipment_table .equipment_name{min-width: 190px;}
.equipment_table .equipment_type, .equipment_table .equipment_maker{min-width: 160px;}
.equipment_table .equipment_number{min-width: 50px;}
.equipment_ability{min-width: 130px;}
.equipment_type02{min-width: 280px;}

/* 企業情報 */
.company_wrapper{padding: 30px 0;}
.company_table th,
.company_table td{width: 100%!important; display: block; padding: 15px!important;}
.company_table th{font-weight: 700; background-color: #f5f5f5!important;}
.company_information_flex{gap: 20px;}
.information_flex_item{width: calc((100% - 20px)/2);}
.company_history_table th,
.company_history_table td{width: 100%!important; display: block; padding: 15px!important;}
.company_history_table th{background-color: #f5f5f5!important; font-weight: 700;}

.company_map iframe{height: 360px;}
.company_policy p{font-size: 1.8rem; line-height: 3.5rem;}

/* 採用情報 */
.recruit_main_txt{font-size: clamp(4rem, 12vw, 6rem); z-index: 1; white-space: nowrap;}
.recruit_main_txt span{font-size: clamp(3.5rem, 4vw, 4rem);}
.recruit_lnavi{padding: 20px 40px;}
.recruit_lnavi ul{flex-direction: column; gap: 15px;}
.recruit_lnavi li:before{content: ""; padding: 2px; background-color: #fff; border-radius: 100%; left: -10; top: 10px;}
.recruit_lnavi li:first-child::before{display: block;}

.recruit_about_wrapper{padding: 40px 0;}
.recruit_about_topic{flex-direction: column;}
.recruit_sec_head02{font-size: 4rem; margin-bottom: 20px;}
.recruit_wrapper h3{font-size: 3rem; margin-bottom: 15px;}
.recruit_about_left{width: 100%;}
.recruit_about_txt{font-size: 1.8rem; line-height: 3.5rem; max-width: initial;}
.recruit_about_right{width: 100%; display: flex; gap: 20px;}
.recruit_about_img01,
.recruit_about_img02{position: initial; width: calc((100% - 20px)/2);}
.recruit_about_img03{display: none;}

.recruit_feature_list{flex-direction: column; gap: 20px;}
.recruit_feature_list li{width: 100%;}
.recruit_feature_head{font-size: 2.5rem;}

.recruit_number_list{gap: 20px; row-gap: 60px;}
.recruit_number_list li{width: calc((100% - 20px)/2); padding: 60px 20px 20px 20px;}
.countSecTit{font-size: 1.8rem;}
.countSecNum{font-size: 2rem;}
.countSecNum b{font-size: clamp(3.5rem, 5vw, 4rem);}

.recruit_works_list{flex-direction: column; gap: 20px;}
.recruit_works_list li{width: 100%;}

.recruit_interview{flex-direction: column!important; gap: 20px;}
.recruit_interview_img{width: 100%; margin-bottom: 15px;}
.recruit_interview_name{width: 100%; transform: none; display: block; margin-top: 15px;}
.recruit_interview_info span{display: initial;}
.recruit_interview_initial{font-size: 2.5rem;}
.recruit_interview_txt{width: 100%;}
.recruit_interview_txt_head{font-size: 2.5rem;}
.recruit_interview_txt_head i{font-size: 3rem;}
.recruit_interview_txt_bottom{flex-direction: column;}
.recruit_interview_txt02, .recruit_interview_txt03{width: 100%;}
.recruit_interview_txt p{font-size: 1.6rem; line-height: 3rem;}

.recruit_ideal_topic{font-size: 2.5rem;}
.recruit_ideal_txt{font-size: 1.8rem; line-height: 3.5rem;}


/* よくある質問 */
.faq_question, .faq_answer{padding: 20px 50px 25px 45px;}
.faq_question::before, .faq_answer::before{font-size: 2.5rem; left: 10px;}
.faq_question_txt, .faq_answer_txt{font-size: 1.6rem; }
.faq_question_icon{right: 20px; width: 24px; height: 24px;}



/* ローカルナビ */
.lnavi{margin-bottom: 0;}
.lnavi ul{flex-direction: column; gap: 10px;}
.lnavi li a{position: relative;}
.lnavi li a:before{content: ""; padding: 2px; background-color: #222; position: absolute; left: -10px; top: 9px; border-radius: 100%;}

    
/* お問合せフォーム */
.contact_sec{width: 90%; margin: 0 auto;}
.page_sec .contact_item{display: block; padding: 20px 0;}
.page_sec .contact_tit{margin: 0 0 20px 0; width: initial;}
.page_sec .contact_tit p{font-size: 18px;}
.page_sec .contact_essential .contact_tit{margin-left: 60px; width: initial;}
.page_sec .contact_tit span{left: -60px; font-size: 16px;}

.contact_txt, .contact_adress, .contact_txtarea{width: 100%;}
.contact_txt input{width: calc(100% - 16px); margin: 0 auto; font-size: 16px;}
.contact_adress input{width: 100%; margin-left: 0; font-size: 16px;}
input[type="checkbox"]{padding: 8px;}
.form-width{max-width: 100%;}
.page_sec .wpcf7-spinner{display: block;}
.contact_txtarea textarea{width: calc(100% - 16px); font-size: 16px;}
.contact_select select{width: 100%; padding: 8px;}

.policy_sec h3{font-size: 2rem;}


/* サイトマップ */
.sitemap_list01 li{margin-bottom: 30px;}
.sitemap_list02 li{margin-bottom: 0;}
.sitemap_list02{margin: 20px 0 0 35px;}

.sitemap_recruit{margin: 30px 0 0 30px;}









}

/* ----------------------------------------------------------
 SP CSS END
---------------------------------------------------------- */

/* ----------------------------------------------------------
 TAB CSS
---------------------------------------------------------- */
@media screen and (min-width:681px) and (max-width:1180px){

img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 62.5%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; padding-top: 0; }

/* 非表示用 */
.noneTAB		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{position: fixed; background-color: #fff; height: 60px; width: 100%; z-index: 999;}

.header_sec{height: 60px;}
.header_logo{height: 60px; flex-basis: initial;}
.header_logo01 a{ padding: 0; height: initial;}
.header_logo h1{margin-left: 10px; padding-top: 0; text-align: left;}
.header_logo01{width: 100%; text-align: left; max-width: initial; height: 60px; padding: 13px;}
.header_logo01 img{width: 220px;}



/*ACCORDION*/
.toggle{width: 60px; height: 60px; background-color: var(--main-color);}
.toggle p{bottom: 11px;}

/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */

.btm_menu { position: fixed; bottom: -50px; width: 100%; border-top: 1px solid #ccc; z-index: 99; }
.btm_menu li { float: left; width: 100%; }
.btm_menu li:first-child a { border-right: 1px solid #ccc; }
.btm_menu li a { display: block; height: 50px; text-align: center; font-size: 1.6rem; padding: 15px 5px 5px; background-color: var(--main-color); color: #fff; transition: .5s;}
.btm_menu li a i{ font-size: 1.8rem; margin-right: 10px; }
.btm_menu li a:hover { background-color: #fff; color: #333; transition: .5s;}
.btm_menu ul:after { content: ''; clear: both; display: block; }



.bottom_contact_wrapper{ height: initial;}
.bottom_contact_sec{width: 90%; display: initial; position: initial;}
.bottom_contact_head{font-size: 4rem; position: initial; transform: none;}
.bottom_contact_inner{display: flex; flex-direction: column; gap: 15px; padding: 20px 20px 30px;}
.bottom_contact_txt{margin-bottom: 0;}
.bottom_contact_flex{flex-direction: column; padding: 0; gap: 20px;}
.bottom_contact_number{font-size: 3.5rem; padding: 0; border: none;}
.bottom_contact_number i{font-size: 3rem;}
.bottom_contact_btn{width: 300px; max-width: 100%;}
.bottom_contact_btn a{padding: 15px; font-size: 1.8rem;}

footer{padding: 40px 0 70px;}
.footer_sec{width: 100%; display: block; text-align: center;}
.footer_logo{text-align: center; margin-bottom: 40px;}
.footer_info{line-height: 2.5rem; font-size: 1.6rem;}
.footer_recruit_btn a{font-size: 2rem; padding: 15px 0;}
.footer_copyright{margin: 20px auto 0; text-align: center;}
	


/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.wrapper{ position: relative; overflow: hidden; padding-top: 60px;}
.tab_br{display: block;}
.anchor{padding-top: 60px; margin-top: -60px; display: block;}

.lnavi{ margin: 0 auto; min-width: 400px; }
.lnavi ul{gap: 30px;}


/* ぱんくず */
.breadcrumbs_wrapper{margin-bottom: 10px;}
.breadcrumbs{text-align: center; justify-content: left; font-size: 1.2rem;}

/*トップページ*/
.top_first_inner{position: relative;}
.top_first_img{width: 100%;}
.top_first_txt{position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); bottom: initial;}
.top_first_txt01{font-size: clamp(5rem, 8vw, 8rem); line-height: 1.5; text-align: center; white-space: nowrap;}
.top_first_txt01 span{font-size: clamp(4rem, 7vw, 7rem);}

.top_news_wrapper{position: initial; width: 100%; padding: 15px;}
.top_news_sec{display: block; max-width: 800px; margin: 0 auto;}
.top_news_item{display: block; }
.top_news_head{font-size: 2rem; margin-bottom: 10px; text-align: center;}
.top_news_date{font-size: 1.4rem;}
.top_news_tit{font-size: 2rem;}

.top_since_wrapper{padding: 30px 0;}
.top_since_sec{flex-direction: column; margin: 0 auto; gap: 30px; max-width: 800px;}
.top_since_left{width: 100%; max-width: initial;}
.top_since_head01{font-size: 3rem; margin-right: 10px;}
.top_since_head02{font-size: 4.5rem;}
.top_since_sec p{font-size: 1.8rem; line-height: 3.5rem; margin-bottom: 30px;}
.top_since_btn{margin: 0 auto; text-align: center; transform: none;}
.top_since_btn a{padding: 15px 0; font-size: 1.8rem;}

.top_business_wrapper{padding: 30px 0; background-position: center;}
.top_business_sec{margin: 0 auto; max-width: 800px;}
.top_business_head01{font-size: 2rem;}
.top_business_head01:after{margin-left: 10px; width: 80px;}
.top_business_head02{font-size: 4rem; }
.top_business_btn{position: initial;}
.top_business_btn a{padding: 15px 0; font-size: 1.8rem;}
.top_business_sec p{font-size: 1.8rem; line-height: 3.5rem; max-width: initial;}

.top_equipment_wrapper{padding: 30px 0; background-position: center;}
.top_equipment_sec{margin: 0 auto; flex-direction: column-reverse; gap: 40px; max-width: 800px;}
.top_equipment_right{width: 100%;}
.top_equipment_head01{font-size: 2rem;}
.top_equipment_head01:after{margin-left: 10px; width: 80px;}
.top_equipment_head02{font-size: 4rem;}
.top_equipment_sec p{font-size: 1.8rem; line-height: 3.5rem; max-width: initial;}
.top_equipment_btn a{padding: 15px 0; font-size: 1.8rem;}
.top_equipment_slide{max-width: 800px; position: initial; transform: none; margin: 20px auto 0;}
.top_equipment_slide ul{flex-wrap: wrap;}
.top_equipment_slide ul li{width: calc((100% - 20px)/2);}

.top_products_sec{padding: 30px 0; margin: 0 auto; flex-direction: column; position: relative; z-index: 0; background: none;}
.top_products_txt{width: 100%;}
.top_products_head01{font-size: 2rem;}
.top_products_head01::after{margin-left: 10px; width: 80px;}
.top_products_head02{font-size: 4rem;}
.top_products_txt p{font-size: 1.8rem; line-height: 3.5rem;}
.top_products_btn a{padding: 15px 0; font-size: 1.8rem;}
.top_products_figure{display: block; position: absolute; bottom: 0; right: -5%; width: 570px; z-index: -1; opacity: 0.9;}

.top_recruit_wrapper{background-position: center;}
.top_recruit_wrapper a{padding: 30px 0;}
.top_recruit_inner{text-align: center;}
.top_recruit_inner01{font-size: 4rem; margin-bottom: 10px;}
.top_recruit_inner02{font-size: 2rem;}

.top_column_wrapper{padding: 30px 0;}
.top_column_head01{font-size: 2rem;}
.top_column_head01::after{margin-left: 10px; width: 80px;}
.top_column_head02{font-size: 4rem;}
.top_column_list li{flex-direction: column; align-items: flex-start;}
.top_column_info{gap: 15px;}
.top_column_cat a{font-size: 1.4rem;}
.top_column_tit{font-size: 1.6rem;}

/* ページトップリンク */
.page_top_link_wheel{max-width: 80px;}


/* セカンドページ共通 */
.h1_wrapper{width: 100%; padding: 30px 0;}
.h1_tit_inner{text-align: center;}
.h1_tit_item{margin: 0 auto; padding: 0; z-index: 1;}
.page_tit01{font-size: 3.5rem;}
.page_tit02{position: initial; display: block; font-size: 2rem; text-align: left;}

.page_wrapper{padding: 30px 0;}
.page_term{margin-bottom: 50px;}
.page_sec p{font-size: 1.6rem;}
.page_sec figure{text-align: center;}
.page_sec h2:not(.advantage_head02){padding: 15px 25px; font-size: 2.5rem;}

/* コラム */
.column_sec{padding: 30px 0; flex-direction: column; gap: 50px;}
.column_left{width: 100%;}
.column_right{width: 100%; max-width: 600px; margin: 0 auto;}

/* コラム詳細 */
.column_single_tit{font-size: 3rem;}
.column_sec h2{padding: 10px; font-size: 2.2rem;}
.column_sec h3{font-size: 2rem;}
.column_sec h4{font-size: 1.8rem;}

.column_single_txt ul,
.column_single_txt ol{font-size: 1.6rem; line-height: 1.8;}

/* 強み */
.advantage_sec{width: 90%; margin: 0 auto;}
.advantage_sec h2{margin-bottom: 0;}
.advantage_flex p{line-height: 3.2rem;}
.advantage_btn a{padding: 10px; font-size: 1.8rem;}

.advantage_flex{flex-direction: column!important; max-width: 800px; margin: 0 auto;}
.advantage_flex02{flex-direction: column-reverse!important;}
.advantage_flex02 .wp-block-column{width: 100%!important;}

/* 事業内容 */
.business_inner .business_list{gap: 30px!important; flex-wrap: wrap!important;}
.business_inner .business_list .wp-block-column{width: calc((100% - 30px)/2)!important; flex-basis: initial!important;}

/* 製品実績 */
.products_name .products_size{display: block; margin-left: 0;}

/* 設備・工場紹介 */
.equipment_term_list .equipment_term_btn{width: calc((100% - 20px)/2);}
.equipment_table .equipment_name{min-width: 190px;}

/* 採用情報 */
.recruit_main_txt{font-size: clamp(4rem, 10vw, 8rem);  z-index: 1; white-space: nowrap;}
.recruit_main_txt span{font-size: clamp(3.5rem, 4vw, 4rem);}
.recruit_lnavi{padding: 20px 40px;}
.recruit_lnavi ul{flex-direction: column; gap: 15px;}
.recruit_lnavi li:before{content: ""; padding: 2px; background-color: #fff; border-radius: 100%; left: -10; top: 10px;}
.recruit_lnavi li:first-child::before{display: block;}

.recruit_about_wrapper{padding: 40px 0;}
.recruit_about_topic{flex-direction: column;}
.recruit_sec_head02{font-size: 4rem; margin-bottom: 20px;}
.recruit_wrapper h3{font-size: 3rem; margin-bottom: 15px;}
.recruit_about_left{width: 100%;}
.recruit_about_txt{font-size: 1.8rem; line-height: 3.5rem; max-width: initial;}
.recruit_about_right{width: 100%; display: flex; gap: 20px;}
.recruit_about_img01,
.recruit_about_img02{position: initial; width: calc((100% - 20px)/2);}
.recruit_about_img03{display: none;}

.recruit_feature_list{flex-direction: column; gap: 20px;}
.recruit_feature_list li{width: 100%;}
.recruit_feature_head{font-size: 2.5rem;}

.recruit_number_list{gap: 30px;}
.recruit_number_list li{width: calc((100% - 30px)/2);}

.recruit_works_list{ gap: 30px;}
.recruit_works_list li{width: calc((100% - 30px)/2);}

.recruit_interview{flex-direction: column!important; gap: 20px;}
.recruit_interview_img{width: 100%; margin-bottom: 15px; text-align: center;}
.recruit_interview_name{width: 100%; transform: none; display: block; margin-top: 15px; max-width: 580px;}
.recruit_interview_info span{display: initial;}
.recruit_interview_initial{font-size: 2.5rem;}
.recruit_interview_txt{width: 100%;}
.recruit_interview_txt_head{font-size: 2.5rem;}
.recruit_interview_txt_head i{font-size: 3rem;}
.recruit_interview_txt_bottom{flex-direction: column;}
.recruit_interview_txt02, .recruit_interview_txt03{width: 100%;}
.recruit_interview_txt p{font-size: 1.6rem; line-height: 3rem;}

.recruit_ideal_topic{font-size: 2.5rem;}
.recruit_ideal_txt{font-size: 1.8rem; line-height: 3.5rem;}

.recruit_tab_buttons{gap: 20px;}
.recruit_tab_button{width: calc((100% - 20px)/2);}

/* よくある質問 */
.faq_question, .faq_answer{padding: 20px 50px 25px 45px;}
.faq_question::before, .faq_answer::before{font-size: 2.5rem; left: 10px;}
.faq_question_txt, .faq_answer_txt{font-size: 1.8rem; }
.faq_question_icon{right: 20px; width: 24px; height: 24px;}



/* 企業情報 */
.company_table th,
.company_table td{width: 100%!important; display: block; padding: 15px!important;}
.company_table th{font-weight: 700; background-color: #f5f5f5!important;}


    
/* 新着情報一覧 */
.news_wrapper{padding: 30px 0;}
.news_list{gap: 30px;}
.news_head{display: block;}
.news_item_date{font-size: 1.4rem;}
.news_tit{font-size: 1.8rem;}
.news_item_content p{font-size: 1.4rem; line-height: 2.5rem;}

.page_sec h2.news_single_tit{font-size: 2.5rem; margin-bottom: 30px; padding: 0!important;}

  

/* お問合せフォーム */
.contact_sec{width: 90%; margin: 0 auto;}
.page_sec .contact_item{display: block; padding: 20px 0;}
.page_sec .contact_tit{margin: 0 0 20px 0; width: initial;}
.contact_essential .contact_tit{margin-left: 80px; width: initial;}
.form_tit01{display: none;}
.form_tit02{padding: 20px 0; font-size: 3rem;}
.form_sec{width: 90%;}
.policy_sec .page_sec{padding: 0;}

.list-checkbox-wrap .nf-field-element li label{text-align: left;}
.wpcf7-form-control-wrap{}
.contact_txt, .contact_adress, .contact_txtarea{width: 100%;}
.contact_txt input{width:  calc(100% - 16px); margin: 0 auto; font-size: 16px;}
.contact_txtarea textarea{width:  calc(100% - 16px); font-size: 16px;}
.contact_adress input{width: 100%; margin-left: 0; font-size: 16px;}
input[type="checkbox"]{padding: 8px;}
.form-width{max-width: 100%;}
.page_sec .wpcf7-spinner{display: block;}



.wp-pagenavi a, .wp-pagenavi span{ font-size: 2rem !important; font-family: futura-pt, sans-serif; font-weight: 700; font-style: normal; border: 1px solid #BFBFBF; padding: 10px 15px !important; margin: 2px; }





}
/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 TAB CSS END
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */


/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 PC CSS
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
@media print, screen and (min-width:1181px) and (max-width:1500px){

/* フォントサイズ10px */
html{ font-size: 62.5%; }

/* 基本のフォントサイズ */
body{  font-size: 1.8rem; }

/* 非表示用 */
.nonePC		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
.header_tel{display: none;}


.header_contact{width: 170px;}
.header_contact a{font-size: 1.6rem;}
.header_contact i{font-size: 3rem;}




/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btm_menu{ display: none; }



.bottom_contact_sec{width: 94%;}

.footer_wrapper{}
.footer_sec{width: 100%; gap: 100px; justify-content: center;}
.bottom_contact_number{font-size: 4rem;}
.bottom_contact_number i{font-size: 2.5rem;}
.bottom_contact_btn{width: 320px;}
.footer_info{font-size: 1.6rem;}

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.gnavi_item > a{font-size: 1.5rem;}
.lnavi{width: 90%; margin: 0 auto;}
.pc_br{display: block;}


/* パンくず */
.breadcrumbs_wrapper{}
.breadcrumbs > ol{max-width: 1100px; margin: 0 auto;} 
	
/* トップページ */
.top_since_sec p{font-size: 2rem; line-height: 4rem;}
.top_business_head02{font-size: clamp(6rem, 7vw, 8rem);}
.top_business_sec p{font-size: 2rem; line-height: 4rem;}
.top_equipment_head02{font-size: clamp(6rem, 7vw, 8rem);}
.top_equipment_sec p{font-size: 2rem; line-height: 4rem;}
.top_products_head02{font-size: clamp(6rem, 7vw, 8rem);}
.top_products_txt p{font-size: 2rem; line-height: 4rem;}
.top_recruit_wrapper{background-position: center;}
.top_recruit_wrapper a{padding: 80px 0;}
.top_column_head02{font-size: clamp(6rem, 7vw, 8rem);}

/* 設備・工場紹介 */
.equipment_term_btn{font-size: 1.6rem;}




/* アクセスマップ */
.access_sec{width: 90%;}
.access_transportation_item:first-child{padding-right: 50px;}
.access_transportation_item:last-child{padding: 0 0 30px 60px;}


}
/* ----------------------------------------------------------
 PC CSS END
---------------------------------------------------------- */
/* ----------------------------------------------------------
 PC WIDE CSS
---------------------------------------------------------- */
@media screen and (min-width:1501px){
/* フォントサイズ10px */
html{ font-size: 62.5%; height: 100%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem;  }

/* 非表示用 */
.nonePCWIDE		{ display: none !important; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
    .nav{right: 0; width: 40%}
/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btm_menu{ display: none; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */



/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.top_reason_list{width: 92%; margin: 0 auto;}
.top_reason_topic{font-size: clamp(1.8rem ,1.4vw ,2.5rem);}

/* 会社案内 */
.company_table_place{display: flex; justify-content: space-between; flex-wrap: wrap;}
.company_table_place p{width: 48%;}


}
/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 PCWIDE CSS END
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
