@charset "UTF-8";
@media all and (max-width: 1000px) {
/*headerはここから*/
.pc{
	display:none;
}
.sp{
	display:block;
}
.cs-p{
	font-size:20px;
}
textarea{
    -webkit-appearance: none;
}
header{
	width: 100%;
	height: 5rem;
	transition: .3s;
	overflow: visible;
	position:relative;
	position: fixed;
	z-index:100;
}
.is-animation{
	width: 100%;
	height: 5rem;
	transition: .3s;
}
.logo{
	overflow: hidden;
	width:75px;
	display: inline-block;
	float:left;
	transition: .3s;
	position:absolute;
	top: 50%;
	transform: translateY(-50%);
	left:5%;
}
.logo img{
	width:100%;
}
header ul{
	list-style: none;
	padding-inline-start:0px;
	padding:150px 0 0 0;
	display: block;
	width:70%;
	text-align:left;
}
.menu li {
	 text-transform: uppercase;
	 transition: .3s;
	 margin: 15px 0;
	 padding:0 0 0 40px;
}
li a{
	 color:white;
	 font-size:16px;
	 font-weight: 600;
}
.menu li a span:nth-child(2){
	display:none;
}
.ham {
	position: relative;
/*クリックできる範囲*/
	width: 30px;
	height:30px;
	cursor: pointer;
	z-index: 9999;
	position:absolute;
	top: 50%;
	transform: translateY(-50%);
	right:5%;
	margin:0;
	background-color: rgba(255, 255, 255, 0.2);
	border-radius: 3px;
}
.sub-header .ham{
	background-color: #EE6511;
}
.ham_line {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
/*	線の長さと太さ*/
	width: 18px;
	height: 2px;
	background-color:white;
	transition: all 0.3s;
}
/*線と線の間*/
.ham_line1 {
	top: 9px;
}
.ham_line2 {
	top:15px;
}
.ham_line3 {
	top: 21px;
}
/*クリック後の動作*/
.sub-header .clicked{
	background-color: rgba(255, 255, 255, 0.2);
}
.clicked .ham_line{
	left:23%;
}
.clicked .ham_line1 {
	transform: rotate(45deg);
	top:15px;
	background-color: white;
}
.clicked .ham_line2 {
	width: 0px;
}
.clicked .ham_line3 {
	transform: rotate(-45deg);
	top:15px;
	background-color: white;
}

.menu {
	position: fixed;
	width: 60%;
	height: 100%;
	right: -100%;
	background-color:#EE6511;
	transition: all 0.4s;
	z-index: 100;
	/* filter: drop-shadow(10px 10px 10px rgba(0,0,0,0.6)); */
	margin:0 0 0 0;
	display: block;
}
.clicked .menu {
	right:0;
	z-index: 100;
}
.main-2{
	 width:100%;
	 height: 100vh;
	 background-color: black;
	 opacity: 0;
	 z-index: 0;
	 position: absolute;
	 top:0;
	 left:0;
	 transition: all 0.4s;
}
.clicked .main-2{
	 opacity: .6;
	}
	.blackback{
		background-color: black;
		opacity: .3;
		height:100vh;
		width:100%;
		transition:.3s;
		display:none;
	}
	.clicked .blackback{
		/* background-color: black; */
		/* opacity: 1; */
		height:100vh;
		width:100%;
		display:block;
		z-index: 10;
	}
/*共通はここから*/
/* 共通 */
.common-width{
	max-width:1200px;
	width:90%;
	margin:0 auto;
}
.common-layer-padding{
	padding-top:10px;
}
.main-txt{
	font-size:14px;
	font-weight:500;
	letter-spacing: -0.02em;
	line-height: 1.75;
	color:var(--main-gray);
}
.main-btn{
	gap:;
	background-color:var(--main-orange);
	display:inline-flex;
	align-items: center;
	gap:35px;
	padding:7px 16px;
	border-radius:5px;
}
.csl-txt{
	color:white;
	font-size:16px;
	font-weight:500;
}
.csl-img{
	width:13px;
	border-left:2px white solid;
	padding:0 0 0 13px;
}
.csl-img img{
	vertical-align: middle;
	position: relative;
	top:-2px;
}
.common-sub-title{
	font-size:21px;
	color:var(--main-orange);
	letter-spacing: -0.02em;
}
.common-sub-title-p{
	font-size:14px;
	margin-top:15px;
}
.breadcrumbs{
	padding:100px 5% 0 5%;
	color:#A8A8A8;
	letter-spacing: -0.01em;
	font-size:13px;
}
.breadcrumbs .home{
	background-image: none;
}
.breadcrumbs span{
	color:#A8A8A8;
	font-size:13px;
}
/* トップ */
.home{
	background-image:url('/wp-content/uploads/2026/04/home-back-scaled.webp');
	background-size: cover;
}
.top{
	width:90%;
	margin:0 auto;
	padding-top:33px;
	/* height:100vh; */
}
.top-content{
	display:flex;
	flex-direction: column;
	justify-content: space-between;
	gap:22px;
}
.top-left{
	width:auto;
	display:flex;
	flex-direction: column;
}
.top-left-img{
	width:170px;
}
.top-left-news{
	margin-top:30px;
}
.top-left-news h2{
	font-size:15px;
	font-weight:600;
	color:white;
}
.top-left-news a{
	background-color: rgba(255, 255, 255, 0.2);
	color:white;
	display:block;
	padding:8px 16px;
	border-radius: 5px;
	margin-top:6px;
	margin-bottom:14px;
	font-size:14px;
	font-weight:600;
}
.top-left-news a time{
	margin-right:15px;
}
.top-left-news p{
	font-size:13px;
	font-weight:500;
	color:white;
	line-height: 1.8;
	text-align: justify;
}
.top-right{
	width:auto;
	display:flex;
	flex-direction: column;
}
.top-right p{
	font-size:28px;
	font-weight:700;
	line-height: 1.2;
	color:white;
	letter-spacing: -0.04em;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
.top-right ul{
	padding:0;
	display:flex;
	flex-direction: column;
	gap:12px;
	margin-top:20px;
}
.top-right ul>li{
	list-style: none;
	border-bottom:1px solid white;
	padding-bottom:7px;
}
.top-right ul>li>a{
	display:flex;
	justify-content: space-between;
	align-items: center;
}
.top-link-txt{
	font-size:18px;
	font-weight:500;
}
.top-link-btn{
	width:26px;
}
/* アバウト */
.about-top-title{
	position: relative;
}
.about-top-title h2{
	font-family: "Roboto", sans-serif;
	font-size:8vw;
	letter-spacing: -0.01em;
	line-height: 0.9;
	color:var(--main-gray);
	white-space: nowrap;
}
.about-top-title h1{
	position:static;
	margin-top:20px;
	margin-bottom:10px;
	color:var(--main-orange);
	font-size:20px;
	letter-spacing: -0.02em;
}
.about-top-content{
	display:flex;
	flex-direction: column;
	gap:10%;
	margin-top:0;
}
.about-top-content-txt{
	width:auto;
}
.about-top-content-txt p{
	margin-bottom:20px;
}
.about-top-img{
	width:auto;
	margin-top:30px;
}
.about-top-img img{
	border-radius: 5px;
}
.concrete-method{
	background-color: white;
	border-radius:5px;
	margin-top:40px;
}
.concrete-method-content{
	display:flex;
	justify-content: space-between;
	flex-direction: column;
	gap:20px;
	width:85%;
	margin:0 auto;
	padding:30px 0;
}
.concrete-method-content-title{
	display:inline-flex;
	flex-direction: column;
	gap:20px;
}
.mct-txt h3{
	font-size:13px;
	letter-spacing:0.04em;
	color:var(--main-orange);
}
.mct-txt h2{
	font-size:38px;
	letter-spacing: -0.02em;
	color:var(--main-orange);
}
.mct-btn{
	margin-top:auto;
}
.concrete-method-content-txt{
	width:auto;
}
.concrete-method-content-txt p{
	text-align: justify;
}
.two-point{
	margin-top:50px;
}
.two-point-top-img{
	display:flex;
	gap:5px;
}
.two-point-top-img img{
	border-radius: 5px;
}
.two-point-content{
	margin-top:30px;
	display:flex;
	flex-direction: column;
	justify-content: space-between;
	gap:22px;
}
.two-point-content-title{
	max-width:480px;
	display:flex;
	flex-direction: column;
	gap:20px;
}
.two-point-content-title h2{
	color:var(--main-gray);
	font-size:28px;
	line-height: 1.2;
}
.two-point-content-title ol{
	margin-top:auto;
	margin-bottom:0;
	padding:0;
	display:flex;
	flex-direction: column;
	gap:10px;
	list-style-position: inside;
}
.two-point-content-title ol li{
	font-size:19px;
	font-weight:600;
	color:var(--main-gray);
	border-bottom:1px solid #DCDCDC;
	padding-bottom:5px;
}
.two-point-content-txt{
	max-width:550px;
	width:auto;
	display:flex;
	flex-direction: column;
	gap:15px;
}
.two-point-content-txt p{
	text-align: justify;
}
.vision{
	margin-top:40px;
}
.vision-title{
	display:flex;
	flex-direction: column;
	justify-content: space-between;
	gap:20px;
}
.vision-title-txt{
	position: relative;
}
.vision-title-txt h3{
	position:static;
	font-family: "Roboto", sans-serif;
	font-size:25px;
	border-bottom:2px solid var(--main-gray);
	padding:0 0 0 0;
	color:var(--main-gray);
}
.vision-title-txt h2{
	display:flex;
	align-items: end;
	gap:14px;
	margin-top:20px;
}
.vision-title-txt h2 div{
	width:100px;
}
.vision-title-txt h2 span{
	font-size:24px;
	color:var(--main-gray);
	position: relative;
	bottom:-3px;
}
.vision-title-img{
	width:100%;
}
.vision-title-img img{
	border-radius: 5px;
}
.vision-read{
	display:flex;
	flex-direction: column;
	gap:20px;
	margin-top:10px;
}
.vision-read div{
	width:100%;
}
.vision-read div img{
	border-radius: 5px;
}
.vision-read p{
	color:var(--main-gray);
	font-size:14px;
	font-weight:600;
	letter-spacing: -0.02em;
	line-height: 1.9;
	text-align: justify;
	width:100%;
	max-width:700px;
}
.organization{
	margin-top:60px;
	margin-bottom:60px;
	background-color: white;
	border-radius: 5px;
}
.organization-content{
	max-width:1000px;
	width:85%;
	margin:0 auto;
	padding:30px 0;
}
.organization-content h2{
	color:var(--main-orange);
	font-size:30px;
	letter-spacing: -0.02em;
	margin-bottom:15px;
}
.organization-content .organization-content-txt{
	margin-top:20px;
	display:grid;
	grid-template-columns: repeat(1, 1fr);
	gap:20px;
}
.organization-content .organization-content-txt p{
	text-align: justify;
}
.structure{
	display:flex;
	flex-direction: column;
	gap:25px;
}
.structure-content{
	display:flex;
	flex-direction: column;
	justify-content: space-between;
	gap:10px;
}
.structure-content dl{
	display:flex;
	flex-direction: column;
	gap:17px;
	width:auto;
}
.structure-content dl>div{
	display:flex;
	padding:0 0 8px 0;
	border-bottom:1px solid #DCDCDC;
}
.structure-content dl dt{
	width:90px;
	font-size:14px;
	font-weight:500;
	color:var(--main-gray);
	font-family:'Noto Sans JP', sans-serif;
}
.structure-content dl>div dd{
	margin:0;
	display:flex;
	flex-direction: column;
	gap:3px;
	font-size:14px;
	font-weight:500;
	color:var(--main-gray);
	font-family:'Noto Sans JP', sans-serif;
}
.structure-content dl>div .st-name{
	width:100px;
	display:block;
}
.structure-content dl>div .st-company{
	width:250px;
	display:block;
}
.structure-content dl>div .st-post{
	width:150px;
	display:block;
}
.structure-content-tab{
	width:calc(100% - 100px);
}
.structure-content-tab a{
	color:var(--main-gray);
	display:flex;
	align-items: center;
	gap:20px;
}
.structure-content-tab-icon{
	display:block;
	width:20px;
}
.structure-content-tab-icon img{
	vertical-align: middle;
	position: relative;
	top:-2px;
}
/* 工場一覧 */
.factory-list{
	margin-top:20px;
	display:flex;
	flex-direction: column;
	gap:20px;
}
.factory-area h3::before {
    content: "・";
    font-size: 30px;
    color:var(--main-orange);
    line-height: 0.4;
}
.factory-area h3{
	color:var(--main-gray);
	font-size:22px;
	font-weight:700;
	display: flex;
    align-items: center;
    gap: 10px;
}
.factory-prefectures-list{
	display:grid;
	grid-template-columns: repeat(1, 1fr);
	grid-column-gap: 30px;
    grid-row-gap: 7px;
	margin-top:15px;
}
.factory-prefectures-list summary {
    background-color:var(--main-gray);
    color: white;
    padding: 10px 16px;
	font-size:16px;
	font-weight:500;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
	border-radius: 5px;
	font-family:'Noto Sans JP', sans-serif;
}
.factory-prefectures-list summary::after {
    content: "－";
	font-family:'Noto Sans JP', sans-serif;
	font-weight:700;
}

.factory-prefectures-list details:not([open]) summary::after {
    content: "＋";
	font-family:'Noto Sans JP', sans-serif;
	font-weight:700;
}
.answerInner{
	padding-top:13px;
	display:flex;
	flex-direction: column;
	gap:20px;
}
.answerInner-detail{
	padding:0 15px 15px;
	border-bottom:1px solid #D2D2D2;
}
.answerInner-detail h4{
	font-size:17px;
	color:var(--main-gray);
}
.answerInner-detail p{
	font-size:15px;
	font-weight:600;
	letter-spacing: -0.02em;
	color:var(--main-gray);
	margin-top:5px;
}
.factory-map{
	display:flex;
	align-items: center;
	gap:10px;
}
.map-name{
	font-size:15px;
	font-weight:600;
	letter-spacing: -0.02em;
	color:var(--main-gray);
}
.orange-arrow{
	width:10px;
}
.orange-arrow img{
	vertical-align: middle;
}
.factory-tel{
	font-family: "Roboto", sans-serif;
	color:var(--main-gray);
	font-size:22px;
	font-weight:800;
	letter-spacing: -0.02em;
	margin-top:8px;
	display:block;
}
/* 会員一覧 */
.member-list{
	margin-top:50px;
}
.member-list-title{
	display:flex;
	flex-direction: column;
	gap:10px;
}
.member-list-title p{
	margin-top:5px;
}
.member-list-content{
	display:grid;
	grid-template-columns: repeat(2, 1fr);
	grid-column-gap: 15px;
    grid-row-gap: 30px;
	margin-top:30px;
}
.member-list-content a{
	display:block;
}
.member-list-content a img{
	border-radius: 5px;
}
.member-list-content a h3{
	font-size:14px;
	font-weight:500;
	color:var(--main-gray);
	margin-top:10px;
}
/* コンセプト */
.concept-top-flex{
	display:flex;
	flex-direction: column;
	justify-content: space-between;
}
.concept-title{
	font-size:8.5vw;
	font-weight:700;
	color:var(--main-orange);;
	letter-spacing: -0.01em;
	line-height: 1.2;
}
.concept-top-flex>div{
	width:auto;
	display:flex;
	flex-direction: column;
	flex-direction: column;
	margin-top:20px;
}
.concetp-top-subtitle{
	font-family: "Roboto", sans-serif;
	color:var(--main-gray);
	font-size:5.1vw;
	font-weight:600;
	text-transform: uppercase;
	letter-spacing: 0.01em;
}
.concetp-top-txt{
	color:var(--main-gray);
	font-size:14px;
	font-weight:500;
	margin-top:10px;
	line-height: 1.75;
}
.concept-top-img{
	display:grid;
	grid-template-columns: repeat(2, 1fr);
	gap:10px;
	margin-top:20px;
}
.concept-top-img>div>img{
	border-radius: 5px;
}
.concept-model{
	margin-top:40px;
}
.concept-model h1{
	display:flex;
	align-items: center;
}
.concept-model-img{
	width:100px;
}
.concept-model-title{
	color:var(--main-gray);
	font-size:20px;
	font-weight:700;
	letter-spacing: -0.02em;
	margin-left:10px;
}
.concept-model p{
	color:var(--main-gray);
	width:auto;
	text-align: justify;
	font-size:14px;
	font-weight:500;
	line-height: 1.75;
	letter-spacing: -0.02em;
	margin-top:20px;
}
.concept-model>div{
	margin-top:50px;
}
.concept-activity{
	margin-top:40px;
}
.concept-activity-list{
	display:grid;
	grid-template-columns: repeat(1, 1fr);
	gap:30px;
	margin-top:30px;
}
.concept-activity-list h3{
	font-size: 20px;
    font-weight: 600;
    margin: 40px 0 20px;
    padding: 5px 10px 5px 20px;
    color: #2c2c2c;
    background-color:white;
    border-left: 10px solid var(--main-orange);
}
.concept-activity-list h4::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background-color: #ddd;
}
.concept-activity-list h4 {
    font-size: 17px;
    font-weight: 600;
    margin: 20px 0;
    padding: 0 0 5px 0;
    color: #2c2c2c;
    position: relative;
}
.concept-activity-list h4::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 6.25rem;
    height: 2px;
    background-color: var(--main-orange);
}
.concept-activity-list p{
	font-size:14px;
	font-weight:500;
	letter-spacing: -0.02em;
	line-height: 1.95;
	color:var(--main-gray);
}
/* トピック一覧 */
.topic-padding{
	padding-top:10px;
}
.topic-group-content{
	display:flex;
	flex-direction: column;
	gap:20px;
	margin-top:50px;
}
.topic-group-content a{
	display:flex;
	flex-direction: column;
	gap:12px;
}
.topic-group-content-info{
	display:flex;
	flex-direction: row-reverse;
	margin:0 auto 0 0;
	gap:10px;
}
.topic-group-content a{
	padding-bottom:13px;
	border-bottom:1px solid #DEDEDE;
}
.topic-group-content a time{
	font-size:15px;
	color:#94908E;
	font-weight:500;
	width:100px;
}
.topic-group-content a>div>div{
	font-size:12px;
	color:var(--main-gray);
	font-weight:600;
	width:120px;
	color:var(--main-orange);
	padding:5px 4px;
	background-color:white;
	text-align: center;
	border-radius: 5px;
}
.topic-group-content a h2{
	font-size:15px;
	color:var(--main-gray);
	font-weight:500;
}
.topic-category-list{
	padding:0;
	margin-top:20px;
	list-style: none;
	display:flex;
	flex-wrap: wrap;
	gap:10px;
}
.topic-category-list a{
	display:inline-block;
	background-color:var(--main-orange);
	color:white;
	padding:5px 10px;
	border-radius: 5px;
	font-size:14px;
	font-weight:500;
}
.a-title{
	font-size:17px;
	margin:10px 0 0 0;
}
.cpi-term-btn{
	background-color: white;
	margin-top:40px;
	padding:30px 20px;
}
.cpi-term-btn-content{
	display:flex;
	justify-content: space-between;
	flex-direction: column;
	gap:20px;
}
.cpi-term-btn-img{
	width:auto;
}
.cpi-term-btn-content .main-btn{
	padding: 7px 15px 7px 30px;
	justify-content: space-between;
}
.cpi-term-btn-content a .csl-txt{
	font-size:19px;
}
.cpi-term-btn-content a .csl-img{
	width:20px;
}
/* お問い合わせ */
.contact-content p{
	margin: 10px 0 20px 0;
}
.contact-content-top p a{
	color:#0071db;
	text-decoration: underline;
}
.contact-info h2 {
    font-size: 20px;
    font-weight: 600;
    margin: 40px 0 20px;
    padding: 5px 10px 5px 20px;
    color: #2c2c2c;
    background-color: white;
    border-left: 10px solid var(--main-orange);
}
.contact-info li{
	list-style: none;
}
.contact-info ul{
	padding:0;
	display:flex;
	flex-wrap: wrap;
	gap:20px;
}
.contact-info a {
    color: #2E2E2E;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -0.02em;
    transition: .5s;
    display: flex;
    align-items: center;
}
.contact-info a::before {
    content: '';
    display: inline-block;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background-color: var(--main-orange);
    background-size: contain;
    vertical-align: middle;
    margin: 0 12px 0 0;
    transition: .5s;
}
/* 404 */
.no-404 p{
	font-size:14px;
	line-height: 1.8;
	margin-bottom:20px;
	margin-top:20px;
}
.no-404 a{
	color:#0071db;
	text-decoration: underline;
	font-size:15px;
	font-weight:500;
}
/* フッター */
.top-fotter{
	position:static;
	text-align: right;
	padding:0 5% 10px 0;
	margin-top:30px;
}
.top-fotter small{
	font-size:10px;
	font-weight:600;
	color:white;
}
/* 共通page */
.common-page h1{
	font-size: 25px;
    color: var(--main-orange);
    letter-spacing: -0.02em;
}
.common-page .page-tmp{
	margin-top:30px;
}
.common-page h3{
	font-size: 20px;
    font-weight: 600;
    margin: 40px 0 20px;
    padding: 12px 16px;
    color: #2c2c2c;
    background-color: white;
    border-left: 9px solid var(--main-orange);
    position: relative;
}
.common-page h4{
	font-size: 18px;
    font-weight: 600;
    margin: 20px 0 10px;
    padding: 0 0 10px 0;
    color: #2c2c2c;
    position: relative;
}
.common-page h4::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background-color: #ddd;
}
.common-page h4::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 6.25rem;
    height: 2px;
    background-color:var(--main-orange);
}
.common-page .wp-block-paragraph{
	font-size: 14px;
    font-weight: 500;
    letter-spacing: -0.02em;
    line-height: 1.95;
    color: var(--main-gray);
}
.common-page .wp-block-list{
	display:flex;
	flex-direction: column;
	gap:7px;
}
.common-page .wp-block-list li{
	font-family:'Noto Sans JP', sans-serif;
	font-size:14px;
}
/* フッターサブ */
.sub-footer{
	position: relative;
	margin-top:40px;
	padding-top:40px;
	padding-bottom:20px;
	border-top:1px solid #DCDCDC;
}
.sub-footer-content-logo{
	width:auto;
}
.sub-footer-content ul{
    columns: 3;
    column-gap: 40px;
    list-style: none;
    padding: 0;
    margin-top: 25px;
    margin-bottom: 0;
	width:auto;
}
.sub-footer-content ul li a{
	color:var(--main-gray);
	font-size:14px;
}
.sub-footer-content small{
	font-size: 11px;
    font-weight: 600;
	color:var(--main-gray);
	margin-top:30px;
	display:block;
}
.f-img{
	position:static;
	margin-top:20px;
	width:auto;
}
}