@charset "utf-8";
/* CSS Document */

/*Webフォントの読み込み*/
@import url();

@media screen,print {
	/* 960px以上に適用されるCSS（PC用）、印刷に適用されるCSS */
	
	/***************
	共通
	***************/

	* {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 16px;
		letter-spacing: 0.1em;
	}
	body {
		overflow-x: hidden;
	}
	/***ヘッダー***/
	div.l-header__inner.l-container {
		max-width: 100%;
		height: 90px;
		padding: 0 110px 0 0;
	}
	div.l-fixHeader__inner.l-container {
		max-width: 100%;
		height: 90px;
		padding: 0 110px 0 0;
	}
	/*ロゴ*/
	.-series .l-header__logo {
		height: 90px;
		margin-right: 0;
		padding: 5px 0 5px 20px!important;
		justify-content: center;
	}
	.l-fixHeader__logo {
		height: 90px;
		margin-right: 0;
		padding: 5px 0 5px 20px!important;
		justify-content: center;
	}
	h1.c-headLogo {
		width: 25vw;
		border: 0px solid #FFFFFF;
	}
	div.c-headLogo.-img {
		width: 25vw;
		height: 70px;
		border: 0px solid #FFFFFF;
	}
	/*メインナビ*/
	ul.c-gnav li {
		height: 80px;
		font-weight: 600;
		padding: 0 0 0 0;
	}
	.c-gnav > .menu-item > a {
		padding: 0 min(1.0vw, 20px);
	}
	ul.c-gnav li a span {
		font-size: clamp(0.7em, 1vw, 0.9em)!important;
		position: relative;
		padding: 15px 0 0 0;
	}
	ul.c-gnav li a span::before {
		font-family: "Arial", "メイリオ";
		position: absolute;
		font-size: 0.65em;
		color: #2D8FA5;
		top: 0;
		left: 0;
		right: 0;
	}
	ul.c-gnav li:first-child a span::before {
		content: 'ABOUT US';
	}
	ul.sub-menu li:first-child a span::before {
		display: none;
	}
	ul.c-gnav li:nth-child(2) a span::before {
		content: 'PRODUCTS';
	}
	ul.sub-menu li:nth-child(2) a span::before {
		display: none;
	}
	ul.c-gnav li:nth-child(3) a span::before {
		content: 'SAMPLE TEST';
	}
	ul.sub-menu li:nth-child(3) a span::before {
		display: none;
	}
	ul.c-gnav li:nth-child(4) a span::before {
		content: 'COMPANY';
	}
	ul.c-gnav li:nth-child(5) a span::before {
		content: 'RECRUIT';
	}
	ul.c-gnav li:nth-child(6) a span::before {
		content: 'NEWS';
	}
	/*右上部問い合わせメニュー*/
	.-series-right .w-header {
		width: 110px;
		height: 90px;
		align-items: center;
		margin-left: 0;
		display: block;
		position: fixed;
		top: 0;
		right: 0;
	}
	.headercontactwrap input {
		display: none;
	}
	.headercontactwrap label {
		width: 110px;
		height: 90px;
		font-size: clamp(0.7em, 1.2vw, 0.8em) !important;
		text-decoration: none;
		color: #FFFFFF;
		position: relative;
		margin: 0 0 0 0;
		padding: 10px;
		background-color: #035AA6;
		cursor :pointer;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.headercontactwrap label:hover {
		background-color: #2D8FA5;
		transition: .2s;
	}
	.headercontactwrap label::before {
		content: 'CONTACT';
		font-size: 0.6em;
	}
	.headercontactwrap label img {
		width: 20px;
		padding: 5px 0;
	}
	/*開いたときに表示される部分*/
	.headercontactwrap ul {
		margin: 0;
		padding: 0;
		list-style: none;
		margin-bottom: 1px;
	}
	.headercontactwrap li {
		height: 0;
		overflow-y: hidden;
		transition: padding-bottom 0.5s, padding-top 0.5s; /*閉じるときのアニメーション*/
		-webkit-transition: padding-bottom 0.5s, padding-top 0.5s;
		-moz-transition: padding-bottom 0.5s, padding-top 0.5s;
		-ms-transition: padding-bottom 0.5s, padding-top 0.5s;
		-o-transition: padding-bottom 0.5s, padding-top 0.5s;
	}
	#headercontact:checked ~ #sub li {
		height: 90px; /*開いたときに表示されるliの高さ*/
		opacity: 1;
		background: #f1f1f1;
		padding: 10px 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#headercontact:checked ~ #sub li a {
		width: 100%;
		height: 100%;
		font-size: clamp(0.7em, 1.0vw, 0.8em) !important;
		font-weight: 600;
		line-height: 1.2em;
		text-decoration: none;
		text-align: center;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#headercontact:checked ~ #sub li.contact {
		background-color: #D3F2F1;
	}
	#headercontact:checked ~ #sub li.contact:hover {
		background-color: #E8EFF5;
		transition: .2s;
	}
	#headercontact:checked ~ #sub li.contact a {
		color: #2D69A6;
	}
	#headercontact:checked ~ #sub li.contact a::before {
		content: '';
		background-image: url(/harashima/wp-content/uploads/2026/06/mail_icon_bl.png);
		background-size: cover;
		width: 20px;
		height: 20px;
		margin: 0 0 5px 0;
		position: relative;		
	}
	#headercontact:checked ~ #sub li.sampletest {
		background-color: #F4F2DC;
	}
	#headercontact:checked ~ #sub li.sampletest:hover {
		background-color: #E8EFF5;
		transition: .2s;
	}
	#headercontact:checked ~ #sub li.sampletest a {
		color: #2D69A6;
	}
	#headercontact:checked ~ #sub li.sampletest a::before {
		content: '';
		background-image: url(/harashima/wp-content/uploads/2026/06/sampletest_icon_bl.png);
		background-size: cover;
		width: 20px;
		height: 20px;
		margin: 0 0 10px 0;
		position: relative;		
	}
	#headercontact:checked ~ #sub li.catalog {
		background-color: #2D8FA5;
	}
	#headercontact:checked ~ #sub li.catalog:hover {
		background-color: #2D69A6;
		transition: .2s;
	}
	#headercontact:checked ~ #sub li.catalog a {
		color: #FFFFFF;
	}
	#headercontact:checked ~ #sub li.catalog a::before {
		content: '';
		background-image: url(/harashima/wp-content/uploads/2026/06/catalog_icon_white.png);
		background-size: cover;
		width: 20px;
		height: 15px;
		margin: 0 0 10px 0;
		position: relative;		
	}
	#headercontact:checked ~ #sub li.tel {
		background-color: #2D69A6;
	}
	#headercontact:checked ~ #sub li.tel span {
		color: #FFFFFF;
		font-size: clamp(0.7em, 1.0vw, 0.8em) !important;
		font-weight: 600;
		line-height: 1.2em;
		text-decoration: none;
		text-align: center;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#headercontact:checked ~ #sub li.tel span::before {
		content: '';
		background-image: url(/harashima/wp-content/uploads/2026/06/tel_icon_white.png);
		background-size: cover;
		width: 20px;
		height: 20px;
		margin: 0 0 10px 0;
		position: relative;		
	}
	/*サブメニュー*/
	.c-gnav > .menu-item > .sub-menu {
		width: 100vw;
		height: 180px;
		padding: 0px 5%;
		background-color: rgb(3, 90, 166, .9);
		position: fixed;
		top: 90px;
		right: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		z-index: -1;
	}
	.c-gnav > .menu-item > .sub-menu li {
		height: 180px;
		padding: 0 1vw;
	}
	.c-gnav > .menu-item > .sub-menu li a {
		width: 200px;
		height: 180px;
		color: #FFFFFF;
		font-weight: 500;
		letter-spacing: 0.2em;
		padding: 0 2vw;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		position: relative;
	}
	.c-gnav > .menu-item > .sub-menu li a::before {
		content: '';
		width: 170px;
		height: 100px;
		background-color: #FFFFFF;
		margin: 0 0 15px;
		background-position: center;
		background-repeat: no-repeat;
	}
	.c-gnav > .menu-item > .sub-menu li.category a::before {
		background-image: url(/harashima/wp-content/uploads/2026/06/category_icon_bl.png);
		background-size: 20px;
	}
	.c-gnav > .menu-item > .sub-menu li.material a::before {
		background-image: url(/harashima/wp-content/uploads/2026/06/material_icon_bl.png);
		background-size: 15px;
	}
	.c-gnav > .menu-item > .sub-menu li.purpose a::before {
		background-image: url(/harashima/wp-content/uploads/2026/06/purpose_icon_bl.png);
		background-size: 20px;
	}
	.c-gnav .sub-menu .ttl {
		white-space: nowrap;
		padding: 0;
	}
	/***コンテンツ枠***/
	.l-content {
		margin: 0 auto 0em;
	}
	.l-article {
		max-width: 1200px;
	}
	/*****CTA前リンクボタン*****/
	div.linkwrap {
		width: 100%;
		max-width: 1200px;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin: 0 auto;
		padding-bottom: 20px;
	}
	div.linkwrap > div {
		width: 100%;

		margin: 0 auto;
	}
	div.linkbt {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.linkbt a {
		font-size: 1.1rem;
		letter-spacing: .2em;
		width: 100%;
		min-width: 100%;
		height: 180px;
		background: linear-gradient(-45deg, rgba(45,143,165,1) 0%, 
			rgba(244,242,220,1) 50%,
			rgba(45,143,165,1) 100%);
		background-size: 300% 100%;
		border: none;
		border-radius: 10px;
		color: #FFFFFF;
		display: flex;
		align-items: center;
		font-weight: bold;
		max-width: 300px;
		padding: 80px 50px 0;
		text-align: center;
		position: relative;
	}
	div.linkbt a::before {
		font-family: "Arial", "メイリオ";
		font-size: clamp(25px, 12vw, 45px);
		letter-spacing: 0;
		font-weight: 500;
		line-height: 2.5rem;
		opacity: .5;
		position: absolute;
		bottom: 86px;
	}
	div.linkbt.about a::before {
		content: 'ABOUT US';
	}
	div.linkbt.products a::before {
		content: 'PRODUCTS';
	}
	div.linkbt.sampletest a::before {
		content: 'SAMPLE TEST';
	}
	[class*=is-style-btn_] {
		margin: 0;
	}
	div.linkbt.company a::before {
		content: 'COMPANY';
	}
	div.linkbt.recruit a::before {
		content: 'RECRUIT';
	}
	div.linkbt.contact a::before {
		content: 'CONTACT';
	}
	div.linkbt a::after {
		content: '';
		width: 75%;
		height: 2px;
		background-color: #FFFFFF;
		opacity: .5;
		position: absolute;
		bottom: 90px;
	}
	div.linkbt a:hover {
		background-position: 100% 0;
		transition: .2s;
	}
	div.linkbt a span::before {
		content: '';
		width: 55px;
		height: 55px;
		background-color: #FFFFFF;
		border-radius: 5px;
		position: absolute;
		right: 50px;
		top: 60px;
	}
	div.linkbt a:after {
		transition: .2s;
	}
	div.linkbt a span::before {
		content: '';
		width: 55px;
		height: 55px;
		background-color: #FFFFFF;
		border-radius: 5px;
		position: absolute;
		right: 50px;
		top: 60px;
	}
	div.linkbt a span::after {
		content: '＞';
		width: 55px;
		height: 55px;
		font-family: "Arial", "メイリオ";
		font-size: 0.7em;
		font-weight: 600;
		line-height: 1.2rem;
		color: #2D8FA5;;
		position: absolute;
		right: 47px;
		top: 80px;
		z-index: 2;
	}
	/***CTA***/
	div.footer_cta {
		background: linear-gradient(0deg, #D3F2F1 0%, #F4F2DC 100%);
		width: 99.05vw;
		height: 350px;
		margin-left: calc(50% - 49.5vw);
		margin-right: calc(50% - 49.5vw);
		margin-bottom: 0;
		padding: 30px 1%;
		max-width: none;
		justify-content: center;
	}
	div.footer_cta > div {
		max-width: 1200px;
	}
	div.footer_cta div.button {
		max-width: 800px;
		padding: 0 0 0 0;
	}
	div.footer_cta div.button p.text {
		font-weight: 600;
		margin: 20px 0 20px;
	}
	div.footer_cta div.button p.tel 
	{
		font-family: "Arial", "メイリオ";
		font-size: 2.0em;
		font-weight: 600;
		color: #2D69A6;
		margin: 0 0 25px;
		padding: 0 0 0 40px;
		display: flex;
		align-items: center;
		position: relative;
	}
	div.footer_cta div.button p.tel::before {
		content: '';
		width: 30px;
		height: 30px;
		background-image: url(/harashima/wp-content/uploads/2026/06/tel_icon_bl.png);
		background-size: cover;
		position: absolute;
		left: 0;
	}
	div.footer_cta div.button div.buttonwrap div.swell-block-box-menu__item {
		max-height: 70px;
		background-color: #FFFFFF;
		border: 0px solid #FFFFFF;
		margin: 2.5%;
	}
	div.footer_cta div.button .swell-block-box-menu {
		--the-box-width--mb: 45%;
		--the-box-width--tab: 45%;
		--the-box-width--pc: 45%;
	}
	div.footer_cta div.button div.buttonwrap div.swell-block-box-menu__item a {
		font-size: 0.5em;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.footer_cta div.button div.buttonwrap div.swell-block-box-menu__item a figure {
		margin: 0;
	}
	div.footer_cta div.button div.buttonwrap div.swell-block-box-menu__item a span {
		font-size: 0.9rem;
		font-weight: 600;
		color: #2D69A6;
		line-height: 27px;
		padding: 0.5em 0 0 0;
	}
	div.footer_cta div.button div.buttonwrap img {
		width: 25px;
		height: 20px;
		margin: 10px 0 0 0;
		object-fit: contain;
	}
	div.footer_cta div.image {
		max-width: 400px;
		padding: 0 0 0 0;
	}
	div.footer_cta div.image figure img {
		max-width: 400px;
		min-height: 290px;
		object-fit: cover;
	}
	/***フッター***/
	div.footer_main {
		padding: 50px 0;
	}
	div.footer_main img {
		max-width: 450px;
		padding: 0 0 30px;
	}
	div.footer_main div.sitemap01wrap, div.footer_main div.sitemap02wrap {
		width: 96%;
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 0 0 50px;
	}
	div.footer_main div.sitemap01wrap p.title {
		font-size: 0.9em;
		font-weight: 600;
		color: #2D69A6;
	}
	div.footer_main div.sitemap01wrap span {
		font-size: 0.8em;
	}
	div.footer_main div.sitemap01wrap .swell-block-linkList.is-style-default {
		--the-gap: .50em;
	}
	div.footer_main div.sitemap02wrap p.title {
		font-size: 0.9em;
		font-weight: 600;
		color: #2D69A6;
	}
	div.footer_main div.sitemap02wrap p.title a:hover {
		text-decoration: underline;
		transition: .2w;
	}
	.l-footer {
		background-color: #2D69A6;
	}
	div.l-footer__foot {
		padding: 1.3em 0;
	}
	p.copyright {
		color: #FFFFFF;
	}
	/***ボタン***/
	div.viewmorebutton {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 30px 0;
	}
	div.viewmorebutton a {
		min-width: 280px;
		width: 280px;
		height: 70px;
		display: flex;
		align-items: center;
		justify-content: center;
		box-shadow: none;
		position: relative;
	}
	div.viewmorebutton.buttonnm a {
		background-color: #FFFFFF;
		border-radius: 0;
	}
	div.viewmorebutton.buttonnm a:hover {
		width: 320px;
		height: 75px;
		box-shadow: none;
		transition: .5s;
	}
	div.viewmorebutton.buttonnm a::before {
		content: '';
		width: 280px;
		height: 2px;
		mix-blend-mode: multiply;
		position: absolute;
		right: 15px;
		top: 3px;
	}
	div.viewmorebutton.buttonnm a:hover::before {
		width: 318px;
		right: 0;
		transition: .5s;
	}
	div.viewmorebutton.buttonnm a::after {
		content: '';
		width: 280px;
		height: 2px;
		mix-blend-mode: multiply;
		position: absolute;
		left: 15px;
		bottom: 3px;
	}
	div.viewmorebutton.buttonnm a:hover::after {
		width: 318px;
		left: 0;
		transition: .5s;
	}
	div.viewmorebutton.buttonnm a:hover span {
		font-size: 1.2rem;
		transition: .3s;
	}
	/*ブルー*/
	div.viewmorebutton.buttonnm.bl a {
		border: 2px solid #2D69A6;
		color: #2D69A6;
	}
	div.viewmorebutton.buttonnm.bl a::before {
		background-color: #2D69A6;
	}
	div.viewmorebutton.buttonnm.bl a::after {
		background-color: #2D69A6;
	}
	/*グリーン*/
	div.viewmorebutton.buttonnm.gr a {
		border: 2px solid #2D8FA5;
		color: #2D8FA5;
	}
	div.viewmorebutton.buttonnm.gr a::before {
		background-color: #2D8FA5;
	}
	div.viewmorebutton.buttonnm.gr a::after {
		background-color: #2D8FA5;
	}
	/***タイトルエリア***/
	/*メインページ*/
	.l-topTitleArea {
		min-height: 300px;
	}
	h1.c-pageTitle {
		font-size: 2.3em;
		font-weight: 600;
		text-align: center;
		text-shadow: 0px 0px 0 rgba(0, 0, 0, 0);
	}
	/***パンくず***/
	.p-breadcrumb__list li span {
		font-size: 0.9em;
	}
	.p-breadcrumb__text .__home:before {
		display: none
	}
	/*製品詳細*/
	.p-breadcrumb.details ol {
		display: flex;
	}



	/***************
	HOME
	***************/

	/*メインビジュアル*/
	.p-mainVisual {
		display: flex;
		align-items: end;
		justify-content: end;
	}
	.p-mainVisual__inner {
		width: calc(100vw - 110px);
		height: 70vh;
		z-index: 9;
	}
	.p-mainVisual__slideTitle {
		font-size: 3.5em;
		font-weight: 600;
		color: #FFFFFF;
		text-shadow: 0px 0px 0px rgba(0, 0, 0, 00);
		padding-bottom: 10px;
	}
	.p-mainVisual__slideTitle span {
		font-size: 1.5rem;
		padding: 0 0 30px;
		display: block;
	}
	.p-mainVisual__scroll {
		bottom: 30vh;
		color: #333333;
		left: -55px;
		position: absolute;
		transition: opacity .25s;
		z-index: 9;
	}
	.p-mainVisual__scroll svg {
		display: none;
	}
	.p-mainVisual__scroll span {
		color: #2D8FA5;
		font-weight: 600;
		text-transform: uppercase;
		transform: rotate(-90deg);
		position: relative;
	}
	.p-mainVisual__scroll span::before {
		content: '';
		width: 30vh;
		height: 1px;
		background-color: #2D8FA5;
		position: absolute;
		left: -32vh;
		bottom: 5px;
	}
	/*home全体*/
	body#home div.l-content.l-container {
		margin-top: -110px;
		padding: 0;
	}
	/*home about*/
	div.homewrap div.homeabout {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		background-color: #2D8FA5;
		margin-bottom: 0;
		padding: 110px 5% 50px;
	}
	div.homewrap div.homeabout > div {
		max-width: 1200px;
		min-width: 960px;
		text-align:center;
		margin: 0 auto!important;
	}
	div.homeabout h2 {
		display: none;
	}
	div.homeabout p.en {
		font-family: "Arial", "メイリオ";
		font-size: 6.0em;
		color: rgba(255,255,255, .5);
		line-height: 70px;
		margin: 0 0 50px;
	}
	div.homeabout p.text {
		max-width: auto;
		color: #FFFFFF;
		line-height: 3.0em;
		margin: 0 auto;
	}
	/*home products*/
	div.homewrap div.homeproducts {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 110px 5% 0;
		overflow: hidden;
	}
	div.homewrap div.homeproducts > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
		position: relative;
	}
	div.homewrap div.homeproducts div.homeproductswrap {
		flex-direction: row-reverse;
	}
	div.wp-block-columns.homeproductswrap {
		gap: 0!important;
	}
	div.homeproducts div.homeproductswrap div.image {
		max-width: 380px;
	}
	div.homeproducts div.homeproductswrap div.image img {
		max-width: 380px;
		min-height: 600px;
		object-fit: cover;
		position: absolute;
		top: -190px;
		left: 0;
	}
	div.homeproducts div.homeproductswrap div.text {
		padding: 0 0 0 10%;
		position: relative;
	}
	div.homeproducts div.homeproductswrap h2 {
		color: #2D69A6;
		margin: 0;
		padding: 0px 0 20px;
	}
	div.homeproducts div.homeproductswrap p.en {
		font-family: "Arial", "メイリオ";
		font-size: clamp(80px, 8.5vw, 100px);
		color: rgba(45,143,165, .5);
		letter-spacing: 0;
		line-height: 70px;
		position: absolute;
		top: -110px;
		left: 0;
	}
	div.homeproducts div.homeproductswrap div.viewmorebutton
	{
		justify-content: end;
	}
	/*home sample test*/
	div.homewrap div.homesampletest {
		width: 100vw;
		max-width: 100vw;
		background-color: #E8EFF5;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 0px 5% 0;
		z-index: 1;
	}
	div.homewrap div.homesampletest > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
		position: relative;
	}
	div.homesampletest div.homesampletestwrap {
		position: relative;
	}
	div.homesampletest div.homesampletestwrap div.image {
		max-width: 380px;
		min-height: 600px;
		background-color: #2D69A6;
	}
	div.homesampletest div.homesampletestwrap div.image figure {
		max-width: 380px;
		min-height: 600px;
		background-color: #2D69A6;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.homesampletest div.homesampletestwrap div.image img {
		max-width: 300px;
		min-height: auto;
	}
	div.homesampletest div.homesampletestwrap div.text {
		padding: 110px 0 0 50px;
	}
	div.homesampletest div.homesampletestwrap h2 {
		color: #2D69A6;
		margin: 0;
		padding: 0px 0 20px;
	}
	div.homesampletest div.homesampletestwrap p.en {
		font-family: "Arial", "メイリオ";
		font-size: clamp(80px, 8.5vw, 100px);
		color: rgba(45,105,166, .3);
		letter-spacing: 0;
		line-height: 70px;
		position: absolute;
		top: 3px;
		left: -40px;
	}
	div.homesampletest div.homesampletestwrap div.viewmorebutton
	{
		justify-content: start;
	}
	/*home company*/
	div.homewrap div.homecompany {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		background: linear-gradient(-25deg, #F4F2DC 0%, #D3F2F1 100%);
		margin-bottom: 0;
		padding: 110px 5% 50px;
		position: relative;
	}
	div.homewrap div.homecompany > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		text-align:center;
		margin: 0 auto!important;
	}
	div.homecompany h2 {
		color: #2D8FA5;
		padding: 80px 0 20px 0;
	}
	div.homecompany p.en {
		font-family: "Arial", "メイリオ";
		font-size: clamp(80px, 8.5vw, 100px);
		color: #2D8FA5;
		line-height: 70px;
		position: absolute;
		top: 80px;
		left: 0;
		right: 0;
	}
	div.homecompany div.homecompanywrap {
		border-right: 1px solid #2D8FA5;
		gap: 0!important;
		padding: 0 0 20px;
	}
	div.homecompany a.c-bannerLink {
		height: 200px;
		background-color: rgba(255,255,255,0)!important;
		border-left: 1px solid #2D8FA5;
		position: relative;
	}
	div.homecompany a.c-bannerLink figure {
		height: 200px;
		padding: 0 0 50px 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.homecompany a.c-bannerLink img {
		width: 120px;
		height: auto;
		object-fit: cover;
	}
	div.c-bannerLink__title {
		font-size: 1.0em;
		font-weight: 600;
		color: #2D8FA5;
		position: absolute;
		bottom: 15px;
	}
	/*home recruit*/
	div.homewrap div.homerecruit {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 110px 5% 0;
		background-color: #E8EFF5;
		position: relative;
		z-index: 0;
		overflow: hidden;
	}
	div.homewrap div.homerecruit > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
	}
	div.homewrap div.homerecruit div.homerecruitwrap {
		flex-direction: row-reverse;
	}
	div.homerecruit div.homerecruitwrap div.image {
		max-width: 580px;
		position: absolute;
		top: 0;
		left: 0;
	}
	div.homerecruit div.homerecruitwrap div.image figure {
		max-width: 580px;
		min-width: 400px;
		width: 30vw;
		min-height: 700px;
		background-color: #2D69A6;
		padding-right: 70px;
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		top: -80px;
		left: 0;
	}
	div.homerecruit div.homerecruitwrap div.image img {
		max-width: 380px;
		min-height: auto;
	}
	div.homerecruit div.homerecruitwrap div.text {
		padding: 0 0 0 400px;
		position: relative;
	}
	div.homewrap div.homerecruit div.homerecruitwrap h2 {
		color: #2D69A6;
		margin: 0;
		padding: 0px 0 20px;
	}
	div.homerecruit div.homerecruitwrap p.en {
		font-family: "Arial", "メイリオ";
		font-size: clamp(80px, 8.5vw, 100px);
		color: rgba(45,143,165, .5);
		letter-spacing: 0;
		line-height: 70px;
		position: absolute;
		top: -107px;
		left: 350px;
	}
	div.homerecruit div.homerecruitwrap div.viewmorebutton
	{
		justify-content: end;
	}	
	/*home news*/
	div.homewrap div.homenews {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 110px 5%;
		position: relative;
	}
	div.homewrap div.homenews > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
	}
	div.homenews h2 {
		color: #2D69A6;
		margin: 0;
		padding: 50px 0 0 50px;
	}
	div.homenews p.en {
		font-family: "Arial", "メイリオ";
		font-size: clamp(80px, 8.5vw, 100px);
		color: rgba(45,105,166, .3);
		line-height: 70px;
		transform: rotate(-90deg);
		transform-origin: 0px 0px;
		position: absolute;
		top: 320px;
		left: 5px;
	}
	div.homenews div.viewmorebutton
	{
		justify-content: end;
		position: relative;
		top: -60px;
		right: 0;
	}
	div.homenews div.viewmorebutton.buttonnm.bl {
		margin: 0 auto 0em;
		z-index: 9;
	}
	div.homenews div.viewmorebutton.buttonnm.bl a {
		position: absolute;
		top: 0;
		right: 0;
	}
	div.homenews div.p-postListWrap {
		padding: 0 50px;
	}
	div.homenews .p-postList__body {
		display: flex;
	}
	div.homenews time.c-postTimes__posted.icon-posted::before, div.homenews span.p-postList__cat.u-thin.icon-folder::before {
		display: none;
	}
	div.homenews div.p-postList__meta {
		width: 250px;
		flex-wrap: nowrap;
	}
	div.homenews time, div.homenews span {
		white-space: nowrap;
	}
	div.homenews h3 {
		width: calc(100% - 250px);
	}
	div.homenews span.p-postList__cat.u-thin.icon-folder {
		font-size: 1.2em;
		color: #FFFFFF;
		background-color: #2D8FA5;
		opacity: 1;
		margin: 0 0 0 10px;
		padding: 5px 10px;
	}



	/***************
	原島電機工業について
	***************/

	#about h1.c-pageTitle::before {
		content: 'ABOUT US';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.3);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	/*about message*/
	div.aboutwrap div.aboutmessage {
		width: 100%;
		max-width: 100%;
		text-align: center;
		margin-bottom: 0;
		padding: 0 5% 100px;
	}
	div.aboutmessage h2 {
		font-size: 2.0em;
		font-weight: 500;
		color: #2D69A6;
		line-height: 1.5em;
		margin: 0 0 50px;
	}
	div.aboutmessage p {
		font-size: 1.1em;
		line-height: 2.0em;
	}
	/*about strength*/
	div.aboutwrap div.aboutstrength {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5%;
		background-color: rgba(45,143,165,.1);
	}
	div.aboutwrap div.aboutstrength > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		text-align: center;
		margin: 0 auto!important;
	}
	div.aboutstrength h2 {
		font-size: 2.0em;
		margin: 0 0 40px;
	}
	div.aboutstrength p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
	}
	div.aboutstrength div.aboutstrengthwrap {
		padding: 50px 0 0;
	}
	div.aboutstrength div.aboutstrengthwrap > div {
		background-color: #FFFFFF;
		padding: 50px 15px 30px;
		border-top: 5px solid #2D69A6;
	}
	div.aboutstrengthwrap h3 {
		font-size: 1.1em;
		color: #2D69A6;
	}
	div.aboutstrengthwrap p {
		font-size: 1.0em;
		padding: 0 15px;
		text-align: left;
	}
	/*about service*/
	div.aboutwrap div.aboutservice {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5%;
	}
	div.aboutwrap div.aboutservice > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
	}
	div.aboutservice h2 {
		font-size: 2.0em;
		text-align: center;
		margin: 0 0 40px;
	}
	div.aboutservice p {
		line-height: 2.0em;
	}
	div.aboutservice p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		text-align: center;
		padding: 0 0 40px;
	}
	/*about equipment*/
	div.aboutwrap div.aboutequipment {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5% 10px;
		background-color: rgba(45,143,165,.1);
	}
	div.aboutwrap div.aboutequipment > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		text-align: center;
		margin: 0 auto!important;
	}
	div.aboutequipment h2 {
		font-size: 2.0em;
		margin: 0 0 40px;
	}
	div.aboutequipment p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
	}
	div.aboutequipment div.aboutequipmentwrap {
		padding: 50px 0;
	}
	div.aboutequipmentwrap div.image {
		width: 40%;
		max-width: 400px;
	}
	div.aboutequipmentwrap div.image figure {
		height: 100%;
	}
	div.aboutequipmentwrap div.image img {
		height: 100%;
		object-fit: cover;
		object-position: bottom center;
	}
	div.aboutequipmentwrap div.text {
		width: 60%;
		padding: 0 0 0 50px;
	}
	div.aboutequipmentwrap dl {
		text-align: left;
	}
	div.aboutequipmentwrap dl dt {
		width: 60%;
		height: 20px;
		margin: 0;
		margin-top: 10px!important;
		padding: 0;
	}
	div.aboutequipmentwrap dl dt:before {
		content: '■';
		color: #2D69A6;
		padding: 0 10px 0 0;
	}
	div.aboutequipmentwrap dl dd {
		width: 40%;
		margin: -20px 0 0 60%;
		padding: 0;
	}



	/***************
	製品紹介
	***************/

	#products img.l-topTitleArea__img.c-filterLayer__img.u-obf-cover {
		object-position: center center;
	}
	#products h1.c-pageTitle::before {
		content: 'PRODUCTS';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.3);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	/*全体枠*/
	#products div.l-content.l-container, #standard div.l-content.l-container, #compact div.l-content.l-container, #hybrid div.l-content.l-container, #others div.l-content.l-container, #gravityseparator div.l-content.l-container, #pneumaticseparator div.l-content.l-container, #sievegrader div.l-content.l-container, #rollseparator div.l-content.l-container, #cleaningmachine div.l-content.l-container, #polisher div.l-content.l-container, #others div.l-content.l-container {
		max-width: 100vw;
		padding: 0;
	}
	#products main {
		height: 3000px;
	}
	/*サイドバー*/
	aside#sidebar {
		width: 250px!important;
		position: sticky;
		top: 100px;
		align-self: flex-start;
	}
	#products #sidebar {
		width: 250px!important;
	}
	div.productssidebar {
		padding: 40px 20px;
		position: relative;
	}
	div.productssidebar p {
		font-size: 0.9em;
		font-weight: 600;
		padding: 0 0 20px 35px;
		position: relative;
	}
	div.productssidebar p.title_list::before {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/harashima/wp-content/uploads/2026/06/category_icon_bl.png);
		background-size: cover;
		position: absolute;
		left: 0;
		transform: rotate(45deg);
	}
	div.productssidebar p.back {
		padding: 0;
		position: absolute;
		right: 0;
		top: 40px;
	}
	div.productssidebar p.back a {
		width: 100%;
		height: 100%;
		font-size: 0.8em;
		color: #FFFFFF;
		padding: 5px 10px 5px 10px;
		background-color: #2D8FA5;
	}
	div.productssidebar p.back a:hover {
		background-color: #2D69A6;
		transition: .2s;
	}
	div.productssidebar p.back a::after {
		content: '≫';
		padding: 0 0 0 5px;
	}
	div.productssidebar p.title_serch {
		padding-top: 30px;
	}
	div.productssidebar p.title_serch::before {
		content: '';
		width: 25px;
		height: 25px;
		background-image: url(/harashima/wp-content/uploads/2026/06/serch_icon_bl.png);
		background-size: cover;
		position: absolute;
		left: 0;
	}
	div.productssidebar ul {
		border-top: 1px solid #cccccc;
	}
	div.productssidebar ul li {
		border-bottom: 1px solid #cccccc;
	}
	div.productssidebar ul li a {
		width: 80%;
		height: 100%;
		font-size: 0.9em;
		padding: 11px 5px;
		display: block;
		position: relative;
	}
	div.productssidebar ul li a:hover {
		background-color: #E8EFF5;
	}
	div.productssidebar input {
		width: 150px;
		height: 40px;
		padding: 0 0 0 5px
	}
	div.productssidebar button {
		width: 50px;
		height: 40px;
		font-size: 0.8em;
		text-align: center;
		background-color: #CCCCCC;
		border: 1px solid #AAAAAA;
	}
	div.productssidebar .menu {
		list-style: none;
		padding: 0;
	}

	/* サイドバーチェックボックス非表示 */
	div.productssidebar .menu input {
		display: none;
	}
	/* サイドバー▼ボタン */
	li.has-submenu {
		position: relative;
	}
	div.productssidebar .toggle {
		cursor: pointer;
		width: 30px;
		height: 30px;
		background-image: url(/harashima/wp-content/uploads/2026/06/sidebarallows.png);
		background-size: cover;
		margin: 8px 0 0 0;
		display: inline-block;
		float: right;
		transform: rotate(90deg);
		transition: transform 0.2s;
	}
	/* サイドバー開いたとき回転 */
	div.productssidebar .menu input:checked + .toggle {
		transform: rotate(0deg);
	}
	div.productssidebar .menu a:hover {
		text-decoration: underline;
	}
	/* サイドバーサブメニュー */
	div.productssidebar ul.submenu {
		display: none;
		padding-left: 20px;
		border-top: 0px solid #cccccc;
	}
	div.productssidebar ul.submenu li {
		border-bottom: 0px solid #cccccc;
	}
	div.productssidebar ul.submenu li:last-child {
		margin-bottom: 8px;
	}
	div.productssidebar ul.submenu li a {
		width: 80%;
		height: 100%;
		font-size: 0.8em;
		padding: 0 0;
		display: block;
		position: relative;
	}
	/* サイドバー開閉制御 */
	div.productssidebar .menu input:checked ~ .submenu {
		display: block;
	}
	div.productssidebar .submenu li {
		padding: 3px 0;
	}
	/***製品紹介コンテンツ***/
	#products div.post_content {
		padding: 0;
	}
	div.productswrap {
		padding: 60px 5% 0 0;
	}
	div.productswrap input {
		display: none;
	}
	div.productswrap div.toptext p {
		line-height: 2.0em;
	}
	div.productswrap div.toptext p.choice {
		padding: 30px 0 20px;
	}
	/*製品検索*/
	div.productswrap div.tab-menu {
		width: 100%;
		height: auto;
		display: flex;
		justify-content: space-between;
		position: relative;
	}
	/*大分類*/
	div.productswrap div.tab-item {
		width: 30%;
	}
	/*大分類カテゴリから探す*/
	div.productswrap label.category, div.productswrap label.material, div.productswrap label.purpose {
		width: 100%;
		height: 120px;
		color: #2D69A6;
		background: #FFFFFF;
		border: 1px solid #2D69A6;
		border-bottom: 0px solid #FFFFFF;
		padding: 50px 0 0 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		position: relative;
	}
	div.productswrap label.category:hover, div.productswrap label.material:hover, div.productswrap label.purpose:hover {
		color: #FFFFFF;
		background-color: #2D69A6;
		transition: .2s;
	}
	div.productswrap label.category::before {
		content: '';
		width: 30px;
		height: 30px;
		background-image: url(/harashima/wp-content/uploads/2026/06/category_icon_bl.png);
		background-size: cover;
		position: absolute;
		top: 30px;
		left: 0;
		right: 0;
		margin: auto;
	}
	div.productswrap label.category:hover::before {
		background-image: url(/harashima/wp-content/uploads/2026/06/category_icon_wh.png);
	}
	div.productswrap label.material::before {
		content: '';
		width: 30px;
		height: 30px;
		background-image: url(/harashima/wp-content/uploads/2026/06/material_icon_bl.png);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center center;
		position: absolute;
		top: 30px;
		left: 0;
		right: 0;
		margin: auto;
	}
	div.productswrap label.material:hover::before {
		background-image: url(/harashima/wp-content/uploads/2026/06/material_icon_wh.png);
		transition: .2s;
	}
	div.productswrap label.purpose::before {
		content: '';
		width: 30px;
		height: 30px;
		background-image: url(/harashima/wp-content/uploads/2026/06/purpose_icon_bl.png);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center center;
		position: absolute;
		top: 30px;
		left: 0;
		right: 0;
		margin: auto;
	}
	div.productswrap label.purpose:hover::before {
		background-image: url(/harashima/wp-content/uploads/2026/06/purpose_icon_wh.png);
		transition: .2s;
	}
	div.productswrap label.category img {
		height: 30px;
		padding: 0 0 5px 0;
	}
	div.productswrap label.material img {
		height: 30px;
		padding: 0 0 5px 0;
	}
	/*開閉処理*/
	div.productswrap div.tab-content,
	div.productswrap div.tab-subcontent,
	div.productswrap div.tab-subcontent02{
		display: none;
		position: absolute;
		left: 0;
	}
	div.productswrap div.tab-subcontent p.text02 {
		padding: 0 0 50px;
	}
	/*大分類が開いたとき*/
	div.productswrap div.tab-content {
		width: 100%;
	}
	/*大分類①*/
	div.productswrap div.tab-contentinner01 {
		width: 100%;
		display: flex;
	}
	/*大分類①中分類*/
	div.productswrap div.tab-contentinner01 div.tab-subitem {
		width: 25%;
		height: 100px;
		background: #EEEEEE;
		border: 1px solid #2D8FA5;
		border-right: 0px solid #FFFFFF;
	}
	div.productswrap div.tab-contentinner01 div.tab-subitem:last-child {
		border-right: 1px solid #2D8FA5;
	}
	div.productswrap div.tab-contentinner01 div.tab-subitem input {
		display: none;
	}
	div.productswrap div.tab-contentinner01 div.tab-subitem label {
		width: 100%;
		height: 100px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	/*大分類②*/
	div.productswrap div.tab-contentinner02 {
		width: 100%;
		display: flex;
	}
	/*大分類②中分類*/
	div.productswrap div.tab-contentinner02 div.tab-subitem {
		width: 50%;
		height: 100px;
		background: #EEEEEE;
		border: 1px solid #2D8FA5;
		border-right: 0px solid #FFFFFF;
	}
	div.productswrap div.tab-contentinner02 div.tab-subitem:last-child {
		border-right: 1px solid #2D8FA5;
	}
	div.productswrap div.tab-contentinner02 div.tab-subitem input {
		display: none;
	}
	div.productswrap div.tab-contentinner02 div.tab-subitem label {
		width: 100%;
		height: 100px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	/*大分類③*/
	div.productswrap div.tab-contentinner03 {
		width: 100%;
		display: flex;
	}
	/*大分類③中分類*/
	div.productswrap div.tab-contentinner03 div.tab-subitem {
		width: 25%;
		height: 100px;
		background: #EEEEEE;
		border: 1px solid #2D8FA5;
		border-right: 0px solid #2D8FA5;
	}
	div.productswrap div.tab-contentinner03 div.tab-subitem:last-child {
		border-right: 1px solid #2D8FA5;
	}
	div.productswrap div.tab-contentinner03 div.tab-subitem input {
		display: none;
	}
	div.productswrap div.tab-contentinner03 div.tab-subitem label {
		width: 100%;
		height: 100px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	/*共通-中分類中身*/
	div.productswrap div.tab-subcontent {
		width: 100%;
	}
	div.productswrap div.tab-subcontent h3 {
		margin: 30px 0;
		padding: 50px 0 0;
	}
	div.productswrap div.tab-subcontent a {
		width: auto;
		height: 30px;
		font-size: 0.8em;
		color: #FFFFFF;
		background-color: #2D69A6;
		padding: 0 20px 0 20px;
		display: flex;
		flex-direction: row-reverse;
		align-items: center;
		justify-content: center;
		position: absolute;
		top: 50px;
		left: 250px;
	}
	div.productswrap div.tab-subcontent a:hover {
		background-color: #2D8FA5;
		transition: .2s;
	}
	div.productswrap div.tab-subcontent a::before {
		content: '＞';
		font-size: 0.7em;
		padding: 2px 0 0 15px;
	}
	div.productswrap .tab-subitem .tab-toggle:checked + label + .tab-subcontent div.standard {
		display: flex!important;
	}
	div.productswrap div.tab-subcontent .tab-toggle:checked + label::before {
		content: '';
		width: 100%;
		height: 100%;
		background-color: rgb(45, 105, 166, .1);
		background-blend-mode: multiply;
		position: absolute;
		top: 0;
		left: 0;
	}
	/* 大分類開く */
	div.productswrap .tab-toggle:checked + .tab-label + .tab-content {
		display: block;
	}
	#category:checked + label.category {
		color: #FFFFFF;
		background-color: #2D69A6;
	}
	#category:checked + label.category::before {
		background-image: url(/harashima/wp-content/uploads/2026/06/category_icon_wh.png);
	}
	#material:checked + label.material {
		color: #FFFFFF;
		background-color: #2D69A6;
	}
	#material:checked + label.material::before {
		background-image: url(/harashima/wp-content/uploads/2026/06/material_icon_wh.png);
	}
	#purpose:checked + label.purpose {
		color: #FFFFFF;
		background-color: #2D69A6;
	}
	#purpose:checked + label.purpose::before {
		background-image: url(/harashima/wp-content/uploads/2026/06/purpose_icon_wh.png);
	}
	/* 中分類開く */
	div.productswrap .tab-subitem .tab-toggle:checked + label + .tab-subcontent {
		display: block;
	}
	div.productswrap .tab-subitem02 .tab-toggle:checked + label + .tab-subcontent02 {
		display: block;
	}
	#standard:checked + label, #compact:checked + label, #hybrid:checked + label, #others:checked + label {
		color: #FFFFFF;
		background-color: #2D8FA5;
	}
	#agriculture:checked + label, #industry:checked + label {
		color: #FFFFFF;
		background-color: #2D8FA5;
	}
	#size:checked + label, #weight:checked + label, #shape:checked + label, #other:checked + label {
		color: #FFFFFF;
		background-color: #2D8FA5;
	}
	/*大分類①小分類*/
	div.productswrap div.tab-contentinner01-01 {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		position: relative;
	}
	div.productswrap div.tab-contentinner01-01 > div {
		width: 22%;
		margin: 20px 0;
		border: 1px solid #707070;
	}
	div.productswrap div.tab-contentinner01-01 > div:first-child {
		margin: 20px 0!important;
	}
	div.productswrap div.tab-contentinner01-01 > div:last-child {
		margin-bottom: 20px!important;
	}
	div.productswrap div.tab-contentinner01-01::after{
		content:"";
		display: block;
		width:22%;
	}
	div.productswrap div.tab-contentinner01-01 div.tab-subitem02 img {
		max-width: 100px;
		max-height: 100px;
		object-fit: cover;
	}
	div.productswrap div.tab-contentinner01-01 div.tab-subitem02 label {
		height: 170px;
		position: relative;
		padding: 0 0 30px
	}
	div.productswrap div.tab-contentinner01-01 div.tab-subitem02 label:hover::before {
		content: '';
		width: 100%;
		height: 100%;
		background-color: rgb(45, 105, 166, .1);
		background-blend-mode: multiply;
		position: absolute;
		top: 0;
		left: 0;
		transition: .2s;
	}
	div.productswrap div.tab-contentinner01-01 div.tab-subitem02 label span {
		height: 40px;
		font-size: 0.9em;
		font-weight: 600;
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		bottom: 0;
	}
	/*大分類①小分類選択肢*/
	div.productswrap div.tab-subcontent02 {
		width: 100%;
		position: absolute;
		top: 450px;
		left: 0;
	}
	div.productswrap div.tab-subcontent02.industry {
		top: 250px;
	}
	/*大分類②小分類*/
	div.productswrap div.tab-contentinner02-01 {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		position: relative;
	}
	div.productswrap div.tab-contentinner02-01 > div {
		width: 18%;
		margin: 20px 0;
		border: 1px solid #707070;
	}
	div.productswrap div.tab-contentinner02-01 > div:first-child {
		margin: 20px 0!important;
	}
	div.productswrap div.tab-contentinner02-01 > div:last-child {
		margin-bottom: 20px!important;
	}
	div.productswrap div.tab-contentinner02-01::after{
		content:"";
		display: block;
		width:36%;
		margin-left: 2.5%;
	}
	div.productswrap div.tab-contentinner02-01 div.tab-subitem02 img {
		max-width: 100px;
		max-height: 100px;
		object-fit: cover;
	}
	div.productswrap div.tab-contentinner02-01 div.tab-subitem02 label {
		height: 170px;
		position: relative;
		padding: 0 0 30px
	}
	div.productswrap div.tab-contentinner02-01 div.tab-subitem02 label:hover::before {
		content: '';
		width: 100%;
		height: 100%;
		background-color: rgb(45, 105, 166, .1);
		background-blend-mode: multiply;
		position: absolute;
		top: 0;
		left: 0;
		transition: .2s;
	}
	div.productswrap div.tab-contentinner02-01 div.tab-subitem02 label span {
		height: 40px;
		font-size: 0.9em;
		font-weight: 600;
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		bottom: 0;
	}
	/*大分類②小分類選択肢*/
	div.productswrap div.tab-subcontent02 {
		width: 100%;
		position: absolute;
		top: 450px;
		left: 0;
	}
	/*大分類③小分類選択肢*/
	div.productswrap div.tab-contentinner03 div.tab-subitem div.tab-subcontent {
		margin: 50px 0 0 0;
	}
	/*検索結果*/
	#products .post_content div>:last-child {
		margin-bottom: auto!important;
	}
	div.productswrap div.product-list {
		background-color: rgba(45, 143, 165, .1);
		padding: 50px 5%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	div.productswrap div.product-list article {
		width: 30%;
		margin: 0 0 30px;
		padding: 10px 3% 20px;
		background-color: #FFFFFF;
		position: relative;
	}
	div.productswrap div.product-list::after {
		content: '';
		width: 30%;
		display: block;
	}
	#products div.product-list article a {
		width: initial;
		height: initial;
		font-size: initial;
		color: initial;
		background-color: initial;
		padding: initial;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		position: relative;
		top: initial;
		left: initial;
	}
	#products div.productswrap div.tab-subcontent a::before {
		content: '';
		padding: 0 0 0 0;
		display: none;
	}
	div.productswrap div.tab-subcontent h4 {
		width: 100%;
		height: 45px;
		text-align: left;
		margin: 0px 0 20px;
	}
	div.productswrap div.tab-subcontent div.first-paragraph {
		width: 100%;
		text-align: left;
		margin: 10px 0 0 0;
	}
	#products div.productswrap div.tab-subcontent div.first-paragraph {
		font-size: 0.95em;
		text-align: center;
	}
	#products div.product-list article a img {
		max-width: 250px;
		height: auto;
		max-height: 120px;
		object-fit: contain;
		margin: 0 0 20px;
	}
	#products div.product-list article p {
		font-size: 0.9em;
		line-height: 1.2em;
	}
	div.productswrap div.tab-subcontent img {
		max-height: 100px;
	}



	/***************
	製品一覧
	***************/

	/*タイトルエリア*/
	#standard .l-topTitleArea, #compact .l-topTitleArea, #hybrid .l-topTitleArea, #others .l-topTitleArea, #gravityseparator .l-topTitleArea, #pneumaticseparator .l-topTitleArea, #sievegrader .l-topTitleArea, #rollseparator .l-topTitleArea, #cleaningmachine .l-topTitleArea, #polisher .l-topTitleArea, #others .l-topTitleArea {
		min-height: 230px;
	}
	#standard h1.c-pageTitle::before, #compact h1.c-pageTitle::before, #hybrid h1.c-pageTitle::before, #others h1.c-pageTitle::before, #gravityseparator h1.c-pageTitle::before {
		font-family: "Arial", "メイリオ";
		font-size: 1.5em;
		font-weight: 300;
		color: rgba(244, 242, 220, .3);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	div.productswrap div.listwrap {
		padding: 60px 0;
	}
	div.productswrap div.listwrap div.titlewrap {
		display: flex;
		margin: 0 0 10px 0;
	}
	div.productswrap div.listwrap div.titlewrap h2 {
		font-size: 1.8em;
		line-height: 1.0em;
		margin: 0;
	}
	div.productswrap div.listwrap div.titlewrap a {
		color: #FFFFFF;
		font-size: 0.8em;
		background-color: #2D69A6;
		margin: 0 0 0 50px;
		padding: 0 50px 0 20px;
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
	}
	div.productswrap div.listwrap div.titlewrap a::before {
		content: '≫';
		position: absolute;
		right: 20px;
	}
	div.productswrap  div.listwrap div.product-list {
		background-color: #FFFFFF;
		padding: 30px 0;
	}
	div.productswrap  div.listwrap div.product-list article {
		border: 1px solid #333333;
		margin: 0 0 50px 0!important;
		padding: 40px 3%;
	}
	div.productswrap  div.listwrap div.product-list article a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 100%;
	}
	div.productswrap  div.listwrap div.product-list img {
		width: auto;
		max-height: 200px;
	}
	div.productswrap  div.listwrap div.product-list h3 {
		width: 100%;
		text-align: left;
		margin: 0 0 10px;
	}
	div.productswrap  div.listwrap div.product-list div.first-paragraph {
		width: 100%;
		text-align: left;
		margin: 20px 0 0 0;
	}
	div.productswrap  div.listwrap div.product-list p {
		width: 100%;
		font-size: 0.9em;
		text-align: left;
	}
	div.productswrap  div.listwrap p.nolist {
		padding: 30px 0 100px;
	}



	/***************
	製品詳細
	***************/

	/*全体枠*/
	div.wp-singular.product-template-default div.l-content.l-container {
		max-width: 100vw;
		margin: 0 0 50px;
		padding: 0;
	}
	/*タイトルエリア*/
	div.wp-singular.product-template-default .l-topTitleArea {
		min-height: 200px;
	}
	div.wp-singular.product-template-default .l-topTitleArea img {
		display: none;
	}
	div.wp-singular.product-template-default .c-filterLayer.-texture-dot:before, div.wp-singular.product-template-default .c-filterLayer.-texture-dot:after {
		display: none;
	}
	div.wp-singular.product-template-default .l-topTitleArea h1 {
		font-size: 2.5em;
		font-weight: 600;
		color: #333333;
		text-shadow: none;
		text-align: center;
	}
	div.single-product div.p-articleMetas {
		display: none;
	}
	/*サイドバー*/
	div.wp-singular.product-template-default #sidebar {
		width: 250px!important;
	}
	div.productdetail {
		width: 100%;
		max-width: 1100px;

		padding: 50px 0 0 0;
	}
	div.productdetail div.detailwrap {
		height: auto;
		padding: 5%;
		border: 1px solid #707070;
	}
	div.productdetail div.detailwrap p.type {
		font-size: 1.3em;
		font-weight: 600;
		float: left;
		padding: 0 20px 0 0;
	}
	div.productdetail div.detailwrap p.en {
		font-size: 0.9em;
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		padding: 7px 0 0 0;
	}
	div.productdetail div.detailwrap h2 {
		font-size: 2.0em;
		margin: 30px 0 40px 0;;
		clear: both;
	}
	div.photowrap {
		margin: 30px 0;
	}
	div.photowrap div.sumnail {
		max-width: 450px;
		margin: 0 auto!important;
	}
	.n2-ss-slider .n2-ss-slide-background-image img {
		object-fit: contain!important;
	}
	div.detailwrap div.feature {
		background-color: rgb(45,143,165,.1);
		margin-bottom: 2.5em;
		padding: 30px 5%;
	}
	div.detailwrap div.feature h3 {
		color: rgb(45,143,165,1);
		margin: 0 0 20px;
		padding: 0px 5% 0 0;
	}
	div.detailwrap div.model div.content {
		width: 100%;
	}
	div.detailwrap div.model div.content th {
		font-size: 0.8em;
		letter-spacing: 0;
		text-align: center;
	}
	div.detailwrap div.model div.content td {
		font-size: 0.9em;
		text-align: right;
	}
	div.detailwrap div.model div.content h3 {
		color: rgb(45,143,165,1);
		margin: 0 0 20px;
	}
	div.detailwrap div.option {
		margin: 50px 0;
		padding: 30px 5%;
		border: 1px solid #2D8FA5;
	}
	div.detailwrap div.option h3 {
		color: rgb(45,143,165,1);
	}
	.wp-block-table .has-fixed-layout {
		table-layout: auto;
		width: 100%;
	}
	.p-pnLinks {
		display: none;
	}



	/***************
	サンプルテスト
	***************/

	#sampletest img.l-topTitleArea__img.c-filterLayer__img.u-obf-cover {
		object-position: center bottom;
	}
	#sampletest h1.c-pageTitle::before {
		content: 'SAMPLE TEST';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.5);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
		white-space: nowrap;
	}

	/*全体枠*/
	#sampletest div.l-content.l-container {
		max-width: 100vw;
		padding: 0;
	}

	/*サイドバー*/
	#sampletest #sidebar {
		width: 250px!important;
		position: sticky;
		top: 90px;
	}
	div.sampletestsidebar {
		padding: 40px 20px;
	}
	div.sampletestsidebar p {
		font-size: 0.9em;
		font-weight: 600;
		padding: 0 0 20px 30px;
		position: relative;
	}
	div.sampletestsidebar p.title_list::before {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/harashima/wp-content/uploads/2026/06/category_icon_bl.png);
		background-size: cover;
		position: absolute;
		left: 0;
		transform: rotate(45deg);
	}
	div.sampletestsidebar p.title_serch {
		padding-top: 30px;
	}
	div.sampletestsidebar p.title_serch::before {
		content: '';
		width: 25px;
		height: 25px;
		background-image: url(/harashima/wp-content/uploads/2026/06/serch_icon_bl.png);
		background-size: cover;
		position: absolute;
		left: 0;
	}
	div.sampletestsidebar ul {
		border-top: 1px solid #cccccc;
	}
	div.sampletestsidebar ul li {
		border-bottom: 1px solid #cccccc;
	}
	div.sampletestsidebar ul li a {
		width: 100%;
		height: 100%;
		font-size: 0.9em;
		padding: 5px 5px;
		display: block;
		position: relative;
	}
	div.sampletestsidebar ul li a:hover {
		text-decoration: underline;
		background-color: #E8EFF5;
	}
	div.sampletestsidebar ul li a::before {
		content: '＞';
		font-size: 0.6em;
		color: #2D69A6;
		position: absolute;
		right: 0;
		top: 33px;
	}
	div.sampletestsidebar input {
		width: 150px;
		height: 40px;
		padding: 0 0 0 5px
	}
	div.sampletestsidebar button {
		width: 50px;
		height: 40px;
		font-size: 0.8em;
		text-align: center;
		background-color: #CCCCCC;
		border: 1px solid #AAAAAA;
	}
	/*コンテンツ*/
	#sampletest div.post_content {
		padding: 0;
	}
	div.sampletestwrap {
		padding: 60px 5% 0 0;
	}
	/*サンプルテストについて*/
	div.sampletestwrap div.sampletestabout > div {
		width: 100%;
		max-width: 1200px;
		margin: 0 auto!important;
	}
	div.sampletestabout h2 {
		font-size: 2.0em;
		font-weight: 600;
		line-height: 1.5em;
		text-align: center;
		margin: 0 0 40px;
	}
	div.sampletestabout p {
		line-height: 2.0em;
	}
	div.sampletestabout p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		text-align: center;
		margin: 0 0 50px;
	}
	div.sampletestabout div.sampletestaboutwrap {
		width: 100%;
		text-align: center;
		background-color: rgba(45,105,166,.1);
		border-radius: 30px;
		padding: 50px 30px;
	}
	div.sampletestaboutwrap h3 {
		font-size: 1.5em;
		color: rgba(45,105,166,1);
	}
	div.sampletestaboutwrap div.melitwrap p {
		font-weight: 600;
		line-height: 1.5em;
	}
	div.sampletestaboutwrap div.melitwrap > div > div {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.sampletestaboutwrap div.melitwrap > div > div > div {
		max-width: 200px;
		height: 200px;
		background-color: #FFFFFF;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.sampletestaboutwrap div.melitwrap > div img {
		height: 100px;
		width: auto;
	}
	div.sampletestaboutwrap p.conclusion {
		font-weight: 600;
		color: #FFFFFF;
		margin: 40px 0;
		padding: 10px 0;
		background-color: #2D8FA5;
	}
	/*サンプルテスト事例*/
	div.sampletestwrap div.sampletestcase {
		width: 100%;
		max-width: 1200px;
		margin: 100px auto!important;
	}
	div.sampletestcase h2 {
		font-size: 2.0em;
		font-weight: 600;
		line-height: 1.5em;
		text-align: center;
		margin: 0 0 40px;
	}
	div.sampletestcase p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		text-align: center;
		margin: 0 0 60px;
	}
	div.sampletestcase div.sampletestcasewrap {
		padding: 30px 0 0 0;
	}
	div.sampletestcase div.sampletestcasewrap h3 {
		margin: 0 0 20px;
	}
	div.sampletestcasewrap div.sampletestcasewrapinner {
		padding: 30px 5%;
		border: 1px solid #707070;
	}
	div.sampletestcasewrap div.productsphoto div.image {
		width: 40%;
		max-width: 330px;
	}
	div.sampletestcasewrap div.productsphoto div.text {
		width: 60%;
		padding: 30px 0 0 0;
	}
	div.productsphoto div.text div.swell-block-button.is-style-btn_normal {
		float: right;
	}
	div.productsphoto div.text div.swell-block-button.is-style-btn_normal a {
		min-width: 130px;
		max-width: 150px;
		height: 40px;
		padding: 0;
		border-radius: 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.productsphoto div.text div.swell-block-button.is-style-btn_normal a span {
		font-size: 0.9em;
		font-weight: 500;
	}
	div.sampletestcasewrap div.productsphoto div.text p {
		font-size: 1.05em;
		font-weight: 600;
		line-height: 40px;
	}
	div.sampletestcasewrap div.productsphoto div.image {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.sampletestcasewrap div.productsphoto div.image figure {
		text-align: left;
	}
	div.sampletestcasewrap div.productsphoto div.image img {
		max-width: 300px;
		max-height: 350px;
		width: auto;
	}
	/*ビューワー*/
	div.sampletestcasewrap div.testwrap {
		padding: 20px 0;
	}
	div.sampletestcasewrap div.testwrap input {
		display: none;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap {
		display: flex;
		justify-content: space-evenly;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap p {
		display: block;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap ul {
		width: 20%;
		min-width: 200px;
		list-style: none;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap ul li {
		width: 50%;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap ul li label {
		font-size: 0.9em;
		font-weight: 600;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap ul img {
		width: 80px;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap div.viewer {
		width: 80%;
		max-width: 650px;
		min-height: 270px;
		background-color: rgba(45,143,165,.1);
		margin: 0 0 0 20px;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap div.viewer > div {
		height: 100%;
		align-items: center;
		justify-content: start;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap div.viewer p {
		display: inline;
		padding: 0 0 0 10px;
	}
	div.sampletestcasewrap div.testwrap div.viewerwrap div.viewer img {
		width: 50%;
		min-height: 100%;
		object-fit: cover;
	}
	/* すべての画像を一旦非表示 */
	div.sampletestcasewrap .viewer #img1-1, div.sampletestcasewrap .viewer #img1-2, div.sampletestcasewrap .viewer #img1-3, div.sampletestcasewrap .viewer #img1-4, div.sampletestcasewrap .viewer #img1-5,div.sampletestcasewrap .viewer #img1-6 {
		display: none;
	}
	div.sampletestcasewrap .viewer #img2-1, div.sampletestcasewrap .viewer #img2-2, div.sampletestcasewrap .viewer #img2-3, div.sampletestcasewrap .viewer #img2-4 {
		display: none;
	}
	div.sampletestcasewrap .viewer #img3-1, div.sampletestcasewrap .viewer #img3-2, div.sampletestcasewrap .viewer #img3-3, div.sampletestcasewrap .viewer #img3-4 {
		display: none;
	}
	div.sampletestcasewrap .viewer #img4-1, div.sampletestcasewrap .viewer #img4-2, div.sampletestcasewrap .viewer #img4-3 {
		display: none;
	}
	div.sampletestcasewrap .viewer #img5-1, div.sampletestcasewrap .viewer #img5-2, div.sampletestcasewrap .viewer #img5-3 {
		display: none;
	}
	div.sampletestcasewrap .viewer #img6-1, div.sampletestcasewrap .viewer #img6-2, div.sampletestcasewrap .viewer #img6-3, div.sampletestcasewrap .viewer #img6-4, div.sampletestcasewrap .viewer #img6-5,div.sampletestcasewrap .viewer #img6-6 {
		display: none;
	}
	div.sampletestcasewrap .viewer #img7-1, div.sampletestcasewrap .viewer #img7-2, div.sampletestcasewrap .viewer #img7-3 {
		display: none;
	}
	div.sampletestcasewrap .viewer #img8-1, div.sampletestcasewrap .viewer #img8-2, div.sampletestcasewrap .viewer #img8-3, div.sampletestcasewrap .viewer #img8-4 {
		display: none;
	}
	/* item1 がチェックされたら img1 を表示 */
	div.sampletestcasewrap #item1-1:checked ~ .viewer #img1-1, div.sampletestcasewrap #item2-1:checked ~ .viewer #img2-1, div.sampletestcasewrap #item3-1:checked ~ .viewer #img3-1, div.sampletestcasewrap #item4-1:checked ~ .viewer #img4-1, div.sampletestcasewrap #item5-1:checked ~ .viewer #img5-1, div.sampletestcasewrap #item6-1:checked ~ .viewer #img6-1, div.sampletestcasewrap #item7-1:checked ~ .viewer #img7-1, div.sampletestcasewrap #item8-1:checked ~ .viewer #img8-1 {
		display: flex;
	}
	/* item2 */
	div.sampletestcasewrap #item1-2:checked ~ .viewer #img1-2, div.sampletestcasewrap #item2-2:checked ~ .viewer #img2-2, div.sampletestcasewrap #item3-2:checked ~ .viewer #img3-2, div.sampletestcasewrap #item4-2:checked ~ .viewer #img4-2, div.sampletestcasewrap #item5-2:checked ~ .viewer #img5-2, div.sampletestcasewrap #item6-2:checked ~ .viewer #img6-2, div.sampletestcasewrap #item7-2:checked ~ .viewer #img7-2, div.sampletestcasewrap #item8-2:checked ~ .viewer #img8-2 {
		display: flex;
	}
	/* item3 */
	div.sampletestcasewrap #item1-3:checked ~ .viewer #img1-3, div.sampletestcasewrap #item2-3:checked ~ .viewer #img2-3, div.sampletestcasewrap #item3-3:checked ~ .viewer #img3-3, div.sampletestcasewrap #item4-3:checked ~ .viewer #img4-3, div.sampletestcasewrap #item5-3:checked ~ .viewer #img5-3, div.sampletestcasewrap #item6-3:checked ~ .viewer #img6-3, div.sampletestcasewrap #item7-3:checked ~ .viewer #img7-3, div.sampletestcasewrap #item8-3:checked ~ .viewer #img8-3 {
		display: flex;
	}
	/* item4 */
	div.sampletestcasewrap #item1-4:checked ~ .viewer #img1-4, div.sampletestcasewrap #item2-4:checked ~ .viewer #img2-4, div.sampletestcasewrap #item3-4:checked ~ .viewer #img3-4, div.sampletestcasewrap #item4-4:checked ~ .viewer #img4-4, div.sampletestcasewrap #item5-4:checked ~ .viewer #img5-4, div.sampletestcasewrap #item6-4:checked ~ .viewer #img6-4, div.sampletestcasewrap #item7-4:checked ~ .viewer #img7-4, div.sampletestcasewrap #item8-4:checked ~ .viewer #img8-4 {
		display: flex;
	}
	/* item5 */
	div.sampletestcasewrap #item1-5:checked ~ .viewer #img1-5, div.sampletestcasewrap #item2-5:checked ~ .viewer #img2-5, div.sampletestcasewrap #item3-5:checked ~ .viewer #img3-5, div.sampletestcasewrap #item4-5:checked ~ .viewer #img4-5, div.sampletestcasewrap #item5-5:checked ~ .viewer #img5-5, div.sampletestcasewrap #item6-5:checked ~ .viewer #img6-5, div.sampletestcasewrap #item7-5:checked ~ .viewer #img7-5, div.sampletestcasewrap #item8-5:checked ~ .viewer #img8-5 {
		display: flex;
	}
	/* item6 */
	div.sampletestcasewrap #item1-6:checked ~ .viewer #img1-6, div.sampletestcasewrap #item2-6:checked ~ .viewer #img2-6, div.sampletestcasewrap #item3-6:checked ~ .viewer #img3-6, div.sampletestcasewrap #item4-6:checked ~ .viewer #img4-6, div.sampletestcasewrap #item5-6:checked ~ .viewer #img5-6, div.sampletestcasewrap #item6-6:checked ~ .viewer #img6-6, div.sampletestcasewrap #item7-6:checked ~ .viewer #img7-6, div.sampletestcasewrap #item8-6:checked ~ .viewer #img8-6 {
		display: flex;
	}
	/* 初期状態（任意） */
	.list li {
		background: #FFFFFF;
		cursor: pointer;
	}
	/* item1 がチェックされたとき */
	#item1-1:checked ~ .list li:first-child, #item2-1:checked ~ .list li:first-child, #item3-1:checked ~ .list li:first-child, #item4-1:checked ~ .list li:first-child, #item5-1:checked ~ .list li:first-child, #item6-1:checked ~ .list li:first-child, #item7-1:checked ~ .list li:first-child, #item8-1:checked ~ .list li:first-child {
		background: rgba(45,143,165,.1);
	}
	/* item2 */
	#item1-2:checked ~ .list li:nth-child(2), #item2-2:checked ~ .list li:nth-child(2), #item3-2:checked ~ .list li:nth-child(2), #item4-2:checked ~ .list li:nth-child(2), #item5-2:checked ~ .list li:nth-child(2), #item6-2:checked ~ .list li:nth-child(2), #item7-2:checked ~ .list li:nth-child(2), #item8-2:checked ~ .list li:nth-child(2) {
		background: rgba(45,143,165,.1);
	}
	/* item3 */
	#item1-3:checked ~ .list li:nth-child(3), #item2-3:checked ~ .list li:nth-child(3), #item3-3:checked ~ .list li:nth-child(3), #item4-3:checked ~ .list li:nth-child(3), #item5-3:checked ~ .list li:nth-child(3), #item6-3:checked ~ .list li:nth-child(3), #item7-3:checked ~ .list li:nth-child(3), #item8-3:checked ~ .list li:nth-child(3) {
		background: rgba(45,143,165,.1);
	}
	/* item4 */
	#item1-4:checked ~ .list li:nth-child(4), #item2-4:checked ~ .list li:nth-child(4), #item3-4:checked ~ .list li:nth-child(4), #item4-4:checked ~ .list li:nth-child(4), #item5-4:checked ~ .list li:nth-child(4), #item6-4:checked ~ .list li:nth-child(4), #item7-4:checked ~ .list li:nth-child(4), #item8-4:checked ~ .list li:nth-child(4) {
		background: rgba(45,143,165,.1);
	}
	/* item5 */
	#item1-5:checked ~ .list li:nth-child(5), #item2-5:checked ~ .list li:nth-child(5), #item3-5:checked ~ .list li:nth-child(5), #item4-5:checked ~ .list li:nth-child(5), #item5-5:checked ~ .list li:nth-child(5), #item6-5:checked ~ .list li:nth-child(5), #item7-5:checked ~ .list li:nth-child(5), #item8-5:checked ~ .list li:nth-child(5) {
		background: rgba(45,143,165,.1);
	}
	/* item6 */
	#item1-6:checked ~ .list li:nth-child(6), #item2-6:checked ~ .list li:nth-child(6), #item3-6:checked ~ .list li:nth-child(6), #item4-6:checked ~ .list li:nth-child(6), #item5-6:checked ~ .list li:nth-child(6), #item6-6:checked ~ .list li:nth-child(6), #item7-6:checked ~ .list li:nth-child(6), #item8-6:checked ~ .list li:nth-child(6) {
		background: rgba(45,143,165,.1);
	}




	/***************
	会社案内
	***************/

	#company img.l-topTitleArea__img.c-filterLayer__img.u-obf-cover {
		object-position: center center;
		object-fit: cover;
	}
	#company h1.c-pageTitle::before {
		content: 'COMPANY';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.3);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	/*compan message*/
	div.companywrap div.companymessage {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 0 5% 0px;
	}
	div.companywrap div.companymessage > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
	}
	div.companymessage h2 {
		font-size: 2.0em;
		font-weight: 600;
		line-height: 1.5em;
		text-align: center;
		margin: 0 0 40px;
	}
	div.companymessage p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		text-align: center;
	}
	div.companymessage div.companymessagewrap {
		padding: 50px 0;
	}
	div.companymessagewrap div.image {
		width: 35%;
		max-width: 400px;
	}
	div.companymessagewrap div.text {
		width: 65%;
		max-width: 750px;
		display: flex;
		flex-direction: column;
		align-items: start;
		justify-content: center;
	}
	div.companymessagewrap div.text h3 {
		font-size: clamp(20px, 2.4vw, 30px);
		font-weight: 600;
		color: #2D69A6;
		text-indent: -9em;
		padding-left: 9em;
	}
	div.companymessagewrap div.text p.post {
		width: 100%;
		font-size: 1.0em;
		font-weight: 600;
		letter-spacing: 0.2em;
		line-height: 1.0em;
		text-align: right;
	}
	div.companymessagewrap div.text p.name {
		width: 100%;
		font-size: 1.3em;
		font-weight: 600;
		letter-spacing: 0.2em;
		text-align: right;
	}
	div.companymessage p {
		font-size: 1.1em;
		line-height: 1.5em;
	}
	/*compan outline*/
	div.companywrap div.companyoutline_pre {
		width: 250vw;
		max-width: 250vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		position: relative;
		padding: 10vw 10vw;
		overflow: hidden;
	}
	div.companywrap div.companyoutline_pre::before, div.companywrap div.companyoutline_pre::after {
		content: 'HARASHIMA ELECTRIC MACHINE INDUSTRY';
		width: 100%;
		height: auto;
		font-size: 11vw;
		color: rgba(45,143,165,.25);
		font-family: 'Arial', serif;
		line-height: 0.8;
		white-space: nowrap;
		text-align: center;
		z-index: -1;
		position: absolute;
		bottom: -9px;
		overflow: hidden;
	}
	div.companywrap div.companyoutline_pre::before {
		left: 0;
		animation: flowimg 60s linear infinite;
	}
	div.companywrap div.companyoutline_pre::after {
		left: 100%;
		animation: flowimg 60s linear infinite;
	}
	div.companywrap div.companyoutline {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5% 100px;
		background-image: 
			linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)),
			url("/harashima/wp-content/uploads/2026/06/company_outline.jpg");
		background-size: cover;
		position: relative;
	}
	div.companywrap div.companyoutline > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
	}
	div.companyoutline h2 {
		font-size: 2.0em;
		font-weight: 600;
		line-height: 1.5em;
		margin: 0 0 25px;
	}
	div.companyoutline p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
	}
	div.companyoutline div.image {
		width: 30%;
		max-width: 350px;
		position: relative;
	}
	div.companyoutline div.image figure {
		min-height: 250px;
		padding: 0 20px 0 0;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	div.companyoutline div.image img {
		min-height: 250px;
		object-fit: cover;
	}
	div.companyoutline div.text {
		width: 70%;
		max-width: 900px;
	}
	div.companyoutline div.text table {
		border: 0px solid #FFFFFF;
		border-top: 1px solid #999999;
	}
	div.companyoutline div.text table tr, div.companyoutline div.text table td, div.companyoutline div.text table th {
		border: 0px solid #FFFFFF;
	}
	div.companyoutline div.text table td, div.companyoutline div.text table th {
		padding: 15px 0;
		border-bottom: 1px solid #999999;
	}
	div.companyoutline div.text table th {
		width: 150px!important;
		background-color: rgba(255,255,255,0);
		border-bottom: 1px solid #2D69A6;
	}
	/*company history*/
	div.companywrap div.companyhistory {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5% 150px;
		position: relative;
	}
	div.companywrap div.companyhistory > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
	}
	div.companyhistory h2 {
		font-size: 2.0em;
		font-weight: 600;
		line-height: 1.5em;
		margin: 0 0 25px;
	}
	div.companyhistory p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
	}
	div.companyhistory div.title {
		width: 20%;
		max-width: 250px;
		position: relative;
	}
	div.companyhistory div.text {
		width: 80%;
		max-width: 950px;
	}
	div.companyhistory div.text dl {
		border-left: 1px solid #919CA6;
		padding: 0 80px 0;
	}
	div.companyhistory div.text dl dt {
		font-family: "Arial", "メイリオ";
		color: #2D69A6;
		font-size: 2.0em;
		font-weight: 300;
		position: relative;
	}
	div.companyhistory div.text dl dt::before {
		content: '';
		width: 60px;
		height: 1px;
		border: 1px dotted #2D69A6;
		position: absolute;
		top: 25px;
		left: -80px;
	}
	div.companyhistory div.text dl dd {
		margin: 0;
		padding: 5px 0 0 0;
	}
	div.companyhistory div.text dl dt::after {
		content: '';
		width: 30px;
		height: 30px;
		background-color: #2D8FA5;
		border-radius: 50%;
		position: absolute;
		top: 10px;
		left: -95px;
	}
	/*compan access*/
	div.companywrap div.companyaccess {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 0 0px;
		background-color: rgba(45,143,165,.1);
	}
	div.companyaccess h2 {
		font-size: 2.0em;
		font-weight: 600;
		line-height: 1.5em;
		text-align: center;
		margin: 0 0 40px;
	}
	div.companyaccess p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		text-align: center;
		padding: 0 0 50px;
	}
	div.companyaccess iframe {
		margin: 0;
	}
	div.companyaccess div.companyaccesswrap {
		max-width: 1200px;
		min-width: 960px;
		margin: 0 auto!important;
		align-items: center;
		justify-content: center;
	}
	div.companyaccesswrap div.image {
		width: 40%;
		max-width: 450px;
		position: relative;
	}
	div.companyaccesswrap div.image figure {
		min-height: 250px;
	}
	div.companyaccesswrap div.image img {
		min-height: 250px;
		object-fit: cover;
		object-position: right bottom;
	}
	div.companyaccesswrap div.text {
		width: 60%;
		max-width: 750px;
		padding: 30px 0 30px 50px;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	div.companyaccesswrap div.text p.name {
		font-size: 1.2em;
		font-weight: 600;
	}
	/*compan privacypolicy*/
	div.companywrap div.companyprivacypolicy {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 0;
	}
	div.companywrap div.companyprivacypolicy > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
		padding: 0 5%;
	}
	div.companyprivacypolicy h2 {
		font-size: 2.0em;
		font-weight: 600;
		line-height: 1.5em;
		margin: 0 0 40px;
	}
	div.companyprivacypolicy p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		padding: 0 0 50px;
	}
	div.companyprivacypolicy ul.list {
		padding:0 0 0 30%;
	}
	div.companyprivacypolicy ul.list li {
		padding: 0 0 10px 0;
	}
	div.companyprivacypolicy ul.list li a span {
		font-size: 1.1em;
		text-decoration: underline;
	}



	/***************
	採用情報
	***************/

	#recruit img.l-topTitleArea__img.c-filterLayer__img.u-obf-cover {
		object-position: center center;
	}
	#recruit h1.c-pageTitle::before {
		content: 'RECRUIT';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.3);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	/*recruit message*/
	div.recruitwrap div.recruitmessage {
		width: 100vw;
		max-width: 100vw;
		text-align: center;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 0 5% 100px;
	}
	div.recruitwrap div.recruitmessage > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
	}
	div.recruitmessage h2 {
		font-size: 2.0em;
		font-weight: 500;
		line-height: 1.5em;
		margin: 0 0 30px;
	}
	div.recruitmessage p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
	}
	div.recruitmessage h3 {
		font-size: 1.4em;
		font-weight: 500;
		color: #2D69A6;
		line-height: 1.5em;
		margin: 60px 0 40px;
	}
	div.recruitmessage p.text {
		font-size: 1.1em;
		line-height: 2.5em;
	}
	/*recruit person*/
	div.recruitwrap div.recruitperson {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5%;
	}
	div.recruitwrap div.recruitperson > div {
		max-width: 2000px;
		min-width: calc(960px 10%);
		width: 90%;
		text-align: center;
		background-color: #D3F2F1;
		border-radius: 30px;
		margin: 0 auto!important;
		padding: 0 0 80px;
	}
	div.recruitperson h2 {
		font-size: 2.0em;
		margin: 0 0 40px;
		padding: 100px 0 0 0;
	}
	div.recruitperson p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
	}
	div.recruitperson div.recruitpersonwrap {
		max-width: 960px;
		margin: 0 auto;
		padding: 50px 0 0;
		justify-content: space-evenly;
	}
	div.recruitperson div.recruitpersonwrap > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.recruitperson div.recruitpersonwrap > div > div > div {
		max-width: 250px;
		width: 30vw;
		max-height: 250px;
		height: 30vw;
		border-radius: 200px;
		background-color: #FFFFFF;
	}
	div.recruitperson div.recruitpersonwrap > div figure {
		max-width: 250px;
		width: 30vw;
		max-height: 250px;
		height: 30vw;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.recruitperson div.recruitpersonwrap > div img {
		width: 100px;
	}
	div.recruitperson div.recruitpersonwrap p {
		font-weight: 600;
	}
	/*recruit jobtype*/
	div.recruitwrap div.recruitjobtype {
		width: 100vw;
		max-width: 100vw;
		text-align: center;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 0 5% 100px;
	}
	div.recruitwrap div.recruitjobtype > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
	}
	div.recruitjobtype h2 {
		font-size: 2.0em;
		font-weight: 500;
		line-height: 1.5em;
		margin: 0 0 30px;
	}
	div.recruitjobtype p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
	}
	div.recruitjobtypewrap {
		justify-content: space-evenly;
		margin: 50px 0 0 0;
	}
	div.recruitjobtypewrap div.jobtype {
		max-width: 400px;
	}
	div.recruitjobtypewrap div.jobtype div.technology, div.recruitjobtypewrap div.jobtype div.production {
		position: relative;
	}
	div.recruitjobtypewrap div.jobtype figure {
		position: relative;
	}
	div.recruitjobtypewrap div.jobtype figure::before {
		content: '';
		width: 100%;
		height: 100%;
		background-color: rgb(0,0,0,.5);
		position: absolute;
		z-index: 1;
	}
	div.recruitjobtypewrap div.jobtype img {
		max-width: 400px;
		height: 250px;
		object-fit: cover;
		object-position: center center;
		position: relative;
	}
	div.recruitjobtypewrap div.jobtype h3 {
		color: #FFFFFF;
		position: absolute;
		top: 110px;
		left: 0;
		right: 0;
		z-index: 2;
	}
	div.recruitjobtypewrap div.jobtype h4 {
		min-height: 50px;
		color: #2D69A6;
		text-align: left;
		margin: 30px 0 20px;
	}
	div.recruitjobtypewrap div.jobtype p {
		text-align: left;
	}
	/*recruit office*/
	div.recruitwrap div.recruitoffice {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5% 150px;
		background-color: rgba(45,105,166,.1);
	}
	div.recruitwrap div.recruitoffice > div {
		max-width: 1200px;
		min-width: calc(960px - 10%);
		text-align: center;
		margin: 0 auto!important;
	}
	div.recruitoffice h2 {
		font-size: 2.0em;
		margin: 0 0 40px;
	}
	div.recruitoffice p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		margin: 0 0 100px;
	}
	div.recruitoffice div.recruitofficewrap {
		padding: 0;
		justify-content: space-around;
	}
	div.recruitoffice div.recruitofficewrap > div {
		display: flex;
		align-items: center;
	}
	div.recruitoffice div.recruitofficewrap.rev {
		flex-direction: row-reverse;
	}
	div.recruitofficewrap div.image {
		width: 40%;
		max-width: 500px;
		max-height: 300px;
	}
	div.recruitofficewrap div.image img {
		padding: 0 0 0 10px;
		object-fit: cover;
	}
	div.recruitoffice div.recruitofficewrap.rev div.image {
		width: 40%;
		max-width: 500px;
	}
	div.recruitoffice div.recruitofficewrap.rev div.image img {
		padding: 0 10px 0 0;
		object-fit: cover;
	}
	div.recruitofficewrap div.text {
		width: 60%;
		line-height: 2.0em;
		text-align: left;
	}
	/*recruit benefits*/
	div.recruitwrap div.recritbenefits {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5% 150px;
	}
	div.recruitwrap div.recritbenefits > div {
		max-width: 1200px;
		min-width: calc(960px - 10%);
		text-align: center;
		margin: 0 auto!important;
	}
	div.recritbenefits h2 {
		font-size: 2.0em;
		margin: 0 0 40px;
	}
	div.recritbenefits p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		margin: 0 0 100px;
	}
	div.recritbenefits div.recritbenefitswrap {
		max-width: 960px;
		min-width: calc(960px - 10%);
		margin: 0 auto 40px;
	}
	div.recritbenefits div.recritbenefitswrap > div {
		align-items: space-between;
	}
	div.recritbenefits div.recritbenefitswrap div.title {
		width: 20%;
		min-height: 100%;
		max-width: 250px;
		background-color: #2D69A6;
		border-radius: 10px;
	}
	div.recritbenefits div.recritbenefitswrap div.title {
		color: #FFFFFF;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.recritbenefits div.recritbenefitswrap div.title img {
		width: 80px;
	}
	div.recritbenefits div.recritbenefitswrap div.title p {
		font-size: 1.1em;
		padding: 15px 0 0 0;
	}
	div.recritbenefits div.recritbenefitswrap div.itemwrap {
		width: 80%;
	}
	div.recritbenefits div.recritbenefitswrap div.itemwrap > div {
		flex-wrap: wrap!important;
	}
	div.recritbenefits div.recritbenefitswrap div.itemwrap div.item {
		width: auto;
		min-width: 280px;
		background-color: rgba(244,242,220, .5);
		border-radius: 10px;
		padding: 30px 25px;
		flex-grow: 0;
	}
	div.recritbenefits div.recritbenefitswrap div.itemwrap div.item img {
		height: 50px;
		width: auto;
	}
	div.recritbenefits div.recritbenefitswrap div.itemwrap div.item p {
		font-size: 0.85em;
		text-align: left;
	}
	div.recritbenefits div.recritbenefitswrap div.itemwrap div.item p.title {
		font-size: 0.9em;
		font-weight: 600;
		color: #2D69A6;
		text-align: center;
	}
	/*recruit requirement*/
	div.recruitwrap div.recruitrequirement {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5% 150px;
		background-color: rgba(45,143,165,.1);
	}
	div.recruitwrap div.recruitrequirement > div {
		max-width: 1200px;
		min-width: calc(960px - 10%);
		text-align: center;
		margin: 0 auto!important;
	}
	div.recruitrequirement h2 {
		font-size: 2.0em;
		margin: 0 0 40px;
	}
	div.recruitrequirement p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		margin: 0 0 100px;
	}
	div.recruitrequirement table {
		border: 0px solid #FFFFFF;
		border-top: 1px solid #999999;
	}
	div.recruitrequirement table tr, div.recruitrequirement table td, div.recruitrequirement table th {
		border: 0px solid #FFFFFF;
	}
	div.recruitrequirement table td, div.recruitrequirement table th {
		padding: 15px 0;
		border-bottom: 1px solid #999999;
	}
	div.recruitrequirement table th {
		width: 250px!important;
		background-color: rgba(255,255,255,0);
	}
	/*recruit flow*/
	div.recruitwrap div.recruitflow {
		width: 100vw;
		max-width: 100vw;
		text-align: center;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		margin-bottom: 0;
		padding: 100px 5%;
	}
	div.recruitwrap div.recruitflow > div {
		max-width: 1100px;
		min-width: calc(960px - 10%);
		margin: 0 auto!important;
	}
	div.recruitflow h2 {
		font-size: 2.0em;
		text-align: center;
		margin: 0 0 40px;
	}
	div.recruitflow p {
		line-height: 2.0em;
	}
	div.recruitflow p.en {
		font-family: "Arial", "メイリオ";
		color: #2D8FA5;
		font-weight: 600;
		text-align: center;
		padding: 0 0 40px;
	}
	div.recruitflowwrap > div {
		display: block;
		background-color: #EEEEEE;
		padding: 40px 0 0;
		display: flex;
		flex-direction: column;
		justify-content: end;
		position: relative;
	}
	div.recruitflowwrap > div::before {
		content: '→';
		font-size: 25px;
		position: absolute;
		top: 45%;
		left: -25px;
	}
	div.recruitflowwrap > div:first-child::before {
		display: none;
	}
	div.recruitflowwrap img {
		height: 80px;
		width: auto;
		padding: 0 0 10px 0;
	}
	div.recruitflowwrap p {
		height: 60px;
		font-weight: 600;
		color: #FFFFFF;
		line-height: 1.4em;
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: #2D8FA5;
	}



	/***************
	お知らせ
	***************/

	/*ページTOP*/
	#news img.l-topTitleArea__img.c-filterLayer__img.u-obf-cover {
		object-position: center center;
	}
	#news h1.c-pageTitle::before {
		content: 'NEWS';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.3);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	div.news {
		position: relative;
		text-align: center;
		padding: 0 0 100px;
	}
	div.news h2 {
		font-size: 2.6em;
		margin: 0 0 30px;
		text-align: left;
	}
	/*一覧*/
	body#news ul {
		list-style: none;
	}
	body#news div.swellx-posts-list ul.c-list.c-list--simple {
		border-top: 1px solid var(--color_border);
		padding: 0;
	}
	body#news div.swellx-posts-list  ul.c-list.c-list--simple li {
		text-align: left;
		border-bottom: 1px solid var(--color_border);
		display: flex;
		flex-wrap: nowrap!important;
		padding: 1em .25em;
		position: relative;
	}
	body#news div.swellx-posts-list .c-list__text.swellx-list-cat {
		height: 25px;
		font-size: 0.8em;
		color: #FFFFFF;
		background-color: #2D8FA5;
		margin: 0 50px 0 0;
		padding: 3px 15px 5px;
		white-space: nowrap;
	}
	body#news div.swellx-posts-list time {
		min-width: 120px;
		font-size: 0.9em;
	}
	body#news div.swellx-posts-list li.c-list__item a {
		text-decoration: underline;
	}
	/*ページネーション*/
	body#news nav.pagination ul.page-numbers {
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: rgba(255,255,255,0);
		box-shadow: none;
		padding: 50px 0 0 0;
	}
	body#news nav.pagination a.next.page-numbers, body#news nav.pagination a.prev.page-numbers {
		display: none;
	}
	/*詳細ページ*/
	div.single .l-topTitleArea.c-filterLayer.-texture-dot {
		min-height: 150px;
	}
	div.single div.l-topTitleArea.c-filterLayer.-texture-dot img {
		display: none;
	}
	div.single .l-topTitleArea.c-filterLayer::before {
		display: none;
	}
	div.single .c-filterLayer.-texture-dot:after {
		display: none;
	}
	div.single h1, div.single time {
		color: #333333;
		text-shadow: 0px 0px 0 rgba(0, 0, 0, .0);
	}
	div.single h1 {
		font-size: 2.0em;
	}



	/***************
	各種問い合わせ
	***************/

	#inquiry h1.c-pageTitle::before {
		content: 'CONTACT';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.5);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	#sampletestreq h1.c-pageTitle::before {
		content: 'CONTACT';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.5);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	#catalogreq h1.c-pageTitle::before {
		content: 'CONTACT';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.5);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	div.contactwrap {
		width: 100%;
		max-width: 960px;
		margin: 0 auto;
		padding: 50px 0;
	}
	div.contactwrap a {
		text-decoration: underline;
	}
	div.contactformwrap {
		width: 100%;
		padding: 50px 0 100px;
	}
	div.contactformwrap label, div.contactformwrap div.labelwrap {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: start;
		margin-bottom: 50px;
		justify-content: space-between;
	}
	/*入力ボックス（通常）*/
	div.contactformwrap span.title, div.contactformwrap span.title02 {
		width: 40%;
		min-width: 250px;
		max-width: 350px;
		max-height: 50px;
		font-size: 1rem;
		font-weight: 700;
		margin-top: 0px;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	div.contactformwrap span.entry {
		width: 60%;
	}
	div.contactformwrap span.title02::after {
		width: auto;
		height: 25px;
		content: '必須';
		font-size:0.7rem;
		font-weight: 700;
		color: #FFFFFF;
		background-color: #2D8FA5;
		margin: 0px 30px 0px 10px;
		padding: 0px 20px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	/*入力ボックス（セレクト）*/
	div.contactformwrap span.title_select {
		width: 40%;
		min-width: 200px;
		max-width: 300px;
		font-weight: 700;
		margin-top: 6px;
		display: flex;
		justify-content: space-between;
	}
	div.contactformwrap span.entry_select {
		width: 60%;
	}
	div.contactformwrap span.title_select::after {
		width: auto;
		height: 25px;
		content: '必須';
		font-size:0.7rem;
		font-weight: 500;
		color: #FFFFFF;
		background-color: #2D8FA5;
		margin: 0px 30px 0px 10px;
		padding: 0px 20px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	/*入力ボックス（日付）*/
	div.contactformwrap span.entry_birth {
		width: 70%;
	}
	/*入力エリア*/
	div.contactformwrap input, div.contactformwrap textarea, div.contactformwrap select {
		width: 100%;
		min-height: 50px;
		border: 1px solid #666666;
		border-radius: 3px;
		padding: 0 15px;
		font-weight: 500;
		color: #777777;
		background-color: #FFFFFF;
	}
	div.contactformwrap input::placeholder, div.contactformwrap textarea::placeholder {
		color: #CCCCCC;
	}
	div.contactformwrap textarea
	{
		padding: 10px 15px;
	}
	/*入力ボックス（チェック）*/
	div.contactformwrap span.check input {
		width: 20px;
		margin-right: 10px;
		appearance: auto;
	}
	span.wpcf7-list-item-label {
		font-size: 1.0rem;
	}
	/*ボタン*/
	div.contactformwrap div.buttonwrap {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 50px 0 0;
	}
	div.contactformwrap div.buttonwrap > div {
		margin: 0
	}
	div.contactformwrap div.buttonwrap p span {
		position: absolute;
		right: 0;
		top: 30px;
	}
	div.contactformwrap div.buttonwrap input {
		width: 300px;
		height: 80px;
		margin: 0 30px;
		text-align: center;
		background-color: #035AA6;
		border: 0px solid #FFFFFF;
		position: relative;
		color: #FFFFFF;
		display: block;
	}
	div.contactformwrap div.buttonwrap input:hover {
		background-color: #2D8FA5;
		color: #FFFFFF;
		transition: .5s;
	}
	.wpcf7 form .wpcf7-response-output {
		margin: 0em 0.5em 2em;
		padding: 0.2em 1em 0;
		border: 2px solid #00a0d2;
	}
	p.policy {
		font-weight: 600;
		text-align: center;
		padding: 20px 0;
	}
	p.policy a {
		text-decoration: underline;
	}
	div.contactformwrap div.contactdetails {
		background-color: rgb(45, 143, 165, .1);
		margin: 0 0 50px;
		padding: 0px 5% 50px;
	}
	div.contactformwrap div.catalog {
		background-color: rgb(45, 105, 166, .1);
		margin: 0 0 50px;
		padding: 0px 5% 50px;
	}
	div.contactformwrap div.contactdetails p.title, div.contactformwrap div.catalog p.title {
		font-size: 1.1em;
		font-weight: 600;
		margin: 50px 0 0 0;
		padding: 40px 0 20px 0;
		border-top: 1px solid #333333;
	}
	div.contactformwrap div.contactdetails p.title.first, div.contactformwrap div.catalog p.title.first {
		border-top: 0px solid #333333;
	}
	div.contactformwrap div.contactdetails label, div.contactformwrap div.catalog div.checkbox {
		margin-bottom: 10px;
		padding: 0 0 0 50px;
	}
	div.contactformwrap span.checkbox input {
		width: 20px;
		margin-right: 10px;
		appearance: auto;
	}
	div.contactformwrap span.entry.notitle {
		width: 100%;
	}
	div.contactformwrap div.catalog div.checkbox label {
		margin-bottom: 0px;
	}
	div.contactformwrap div.catalog div.checkbox label input {
		min-height: 30px;
	}
	div.contactformwrap div.catalog span.title {
		width: 100%;
		max-width: 100%;
		color: #FFFFFF;
		background-color: #2D69A6;
		margin: 30px 0 0 0;
		padding: 5px 10px;
		display: block;
	}
	div.contactformwrap span.entry.checkbox {
		width: 100%;
		border-bottom: 1px solid #333333;
		padding: 0 0 20px;
		display: block;
	}
	div.contactformwrap span.agreement {
		font-weight: 600;
		display: block;
		text-align: center;
		margin: 0!important;
	}
	div.contactformwrap span.agreement a {
		text-decoration: underline;
	}
	div.contactformwrap span.agreement a::before {
		width: 70px;
		height: 25px;
		content: '必須';
		font-size:0.7rem;
		font-weight: 500;
		color: #FFFFFF;
		background-color: #2D8FA5;
		margin: 0px 20px 0px 0;
		padding: 5px 20px;
	}
	div.contactformwrap span.agreement span.entry.checkbox {
		width: 100%;
		border-bottom: 0px solid #333333;
		padding: 0 0 20px;
		display: block;
	}
	div.contactformwrap span.agreement label {
		margin: 0;
	}
	/*問い合わせ下*/
	div.informationwrap > div > div {
		text-align: center;
		background-color: #E8EFF5;
		border-radius: 20px;
		padding: 50px 3% 30px;
	}
	div.informationwrap p.text {
		font-weight: 600;
	}
	div.informationwrap p.tel {
		font-family: "Arial", "メイリオ";
		font-size: 2.5em;
		font-weight: 600;
		color: #2D69A6;
		padding: 0 0 0 50px;
		display: inline-block;
		position: relative;
	}
	div.informationwrap p.tel::before {
		content: '';
		width: 40px;
		height: 40px;
		background-image: url(/harashima/wp-content/uploads/2026/06/tel_icon_bl.png);
		background-size: cover;
		position: absolute;
		top: 10px;
		left: 0;
	}
	div.informationwrap div.infobuttonwrap {
		max-width: 650px;
		margin: 0 auto;
	}
	div.informationwrap  div.viewmorebutton {
		padding-top: 0;
	}



	/***************
	採用エントリー
	***************/
	#entry h1.c-pageTitle::before {
		content: 'ENTRY';
		font-family: "Arial", "メイリオ";
		font-size: 3.0em;
		font-weight: 300;
		color: rgba(244,242,220,.5);
		letter-spacing: 0.1em;
		line-height: 0.6em;
		display: block;
	}
	div.contactformwrap span.entry.file input {
		padding: 10px;
	}
}



/*ボタンアニメーション*/
@keyframes flowimg {
	0% { transform: translateX(0); }
	100% { transform: translateX(-100%); }
}