<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";

/*
Theme Name: Kankyohozen
Author: arnk
*/

:root {
	--font-color: #101112;
	--main-color: #0b5abe;
	/* --font-family-poppins: 'Poppins', sans-serif; */
	--heading-color: #364442;
	/* --zenkaku-gothic: "Zen Kaku Gothic New", sans-serif; */
	--montserrat:  "Montserrat", sans-serif;
	--questrial: "Questrial", sans-serif;
	/* --heading-jp: "Zen Kaku Gothic New", sans-serif; */
	--haeding-en: "Questrial", sans-serif;
	--gnav-font:  "Questrial", 'Noto Sans JP', sans-serif;
	--lineheight-s: 1.3;
	--lineheight-m: 1.6;
	--lineheight-l: 1.8;
	--linheight-xl: 2.6;
	--linheight-content-p: 2;
}

body {
	color: var(--font-color);
	font-size: 1.4rem;
}

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

.upper_case {
	text-transform: uppercase;
}

address {
	font-style: normal;
}

.heading_h2_en {
	font-family: var(--haeding-en);
}

.link_btn,
.news_wrapper dl dt,
.gnav_pc a,
.font_questrial {
	font-family: var(--haeding-en);
}

.gnav_pc a {
	font-family: var(--gnav-font);
}

.font_montserrat {
	font-family: var(--montserrat);
}

.anchor,
.anchor2 {
	padding-top: 60px;
	margin-top: -60px;
}


.heading_icon.block_item {
	display: block;
}

.process_h2 h2 {
	margin-top: 20px;
}

a:hover {
	text-decoration: none;
}

/***********
ヘッダーグローバルナビ
************************/
header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 60px;
	background: rgba(255, 255, 255, 1);
	z-index: 30;
	
}

.top_header {
	transform: translateY(-100%);
	opacity: 0;
	animation:  slideDown 2s .5s cubic-bezier(.28,.97,.77,1.01) 1 normal forwards;
}

@keyframes slideDown {
	0% {
		opacity: 0;
		transform: translateY(-100%);
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

.header_inner {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 14px;
}

.gnav_pc,
.gnav_sp {
	position: fixed;
	z-index: 25;
	width: 100%;
	height: 100%;
	background: #fff;
	top: 0;
	right: -100%;
	transition: .3s;
	/* padding: 121px 20px 20px; */
	padding: 80px 20px 20px;
	overflow-y: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none;
	
}

.gnav_pc {
	display: none;
}

.gnav_pc::-webkit-scrollbar,
.gnav_sp::-webkit-scrollbar {
	display: none;
}

.gnav_sp.open {
	transform: translateX(-100%);
}

.logo {
	position: relative;
	z-index: 50;
	font-size: 1.4rem;
}

.logo span {
	font-size: 1rem;
}

.logo a {
	text-decoration: none;
	color: var(--font-color);
}

.logo a img {
	width: 220px;
}

.logo a:hover {
	opacity: 0.8;
}

.toggle {
	display: block;
	width: 40px;
	height: 40px;
	position: absolute;
	top: 50%;
	right: 12px;
	transform: translateY(-50%);
	transition: .3s;
	z-index: 50;
}

.toggle span {
	display: block;
	width: 36px;
	height: 1px;
	background: var(--main-color);
	position: absolute;
	left: 2px;
	transition: .3s;
}

.toggle span:first-child {
	top: 13px;

}

.toggle span:nth-child(2) {
	top: 20px
}

.toggle span:nth-child(3) {
	top: 27px;
}

.toggle.open span {
	left: 3px;
}

.toggle.open span:first-child {
	top: 18px;
	transform: rotate(20deg);
}

.toggle.open span:nth-child(2) {
	opacity: 0;
}

.toggle.open span:nth-child(3) {
	top: 18px;
	transform: rotate(-20deg);
}

.gnav_sp {
	display: flex;
	flex-direction: column;
	row-gap: 30px;
	
}

.gnav_pc ul li a,
.gnav_sp ul li a {
	text-decoration: none;
	color: var(--font-color);
	font-size: 1.4rem;
	/* padding: 30px 0; */
	padding: 26px 0;
}

.gnav_pc ul li a {
	display: inline-block;
}

.gnav_sp ul li a {
	display: block;
}

.gnav_pc ul li a:hover,
.gnav_sp ul li a:hover {
	color: var(--main-color);
}

.gnav_sp ul li {
	border-bottom: 1px solid #e5e5e5;
}

.gnav_contact {
	display: block;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: var(--main-color);
	padding: 15px;
	border: 1px solid var(--main-color);
	border-radius: 30px;
	position: relative;
	overflow: hidden;
	z-index: 1;
}

.gnav_contact:hover,
.contact_tel_btn a:hover,
.submit_btn [type="submit"]:hover,
.submit_btn [type="submit"]:focus {
	color: var(--main-color);
}

.gnav_contact::after,
.contact_tel_btn a::after,
.submit_btn [type="submit"]::after {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background: #fff;
	position: absolute;
	top: 0;
	left: -100%;
	transition: .5s;
	z-index: -1;
}

.gnav_contact::after {
	border-radius: 30px;
}

.contact_tel_btn a::after,
.submit_btn [type="submit"]::after {
	border-radius: 50px;
}

.gnav_contact:hover::after,
.contact_tel_btn a:hover::after,
.submit_btn [type="submit"]:hover::after,
.submit_btn [type="submit"]:focus::after {
	transform: translateX(100%);
}

/*******
メインスライドショー
*******************/
.main_img {
	position: relative;
}

.main_slider img {
	width: 100%;
}

.top_eyecatch {
	position: absolute;
	top: 50%;
	left: 3.8vw;
	/* transform: translateY(calc(-50% + 60px)); */
	transform: translateY(-50%);
	z-index: 10;
}

.top_eyecatch p {
	overflow: hidden;
}

/* .eyecatch1 {
	margin-bottom: 2.6vw;
} */

.slide_up {
	opacity: 0;
	transform: translateY(100%);
}

.eyecatch1 img {
	width: 52.53vw;
	animation: slideUp  1.2s .5s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards;
	
}

.eyecatch2 {
	margin-bottom: 4.8vw;
}

.eyecatch2 img {
	/* width: 86.66vw; */
	width: 91.2vw;
	animation: slideUp  1.2s .7s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards;
}

.eyecatch3 span {
	font-size: clamp(1.4rem, 1.5vw,2.6rem);
	color: #fff;
	font-weight: bold;
	letter-spacing: .2rem;
	animation: slideUp  1.2s 1.3s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards;
}

@keyframes slideUp {
	0% {
		transform: translateY(100%);
		opacity: 0;
	}
	100% {
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes fadeInup {
	0% {
		opacity: 0;
		transform: translateY(50px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/*Scroll*/
.scroll {
	position: absolute;
	bottom: 15px;
	right: 15px;
	z-index: 20;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
	row-gap: 15px;
}

.scroll_txt {
	display: inline-block;
	font-size: 1rem;
	font-family: var(--haeding-en);
	/* transform: rotate(90deg) translateX(1rem); */
	color: #fff;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	letter-spacing: .2rem;
}

.line {
	display: inline-block;
	width: 1px;
	background: #fff;
	height: 78px;
	transform-origin: top;
	animation: scrollLine 3s linear  infinite normal;
}

@keyframes scrollLine {
	0% {
		transform-origin: top;
		transform: scale(0);
	}
	50% {
		transform-origin: top;
		transform: scale(1);
	}
	51% {
		transform-origin: bottom;
		transform: scale(1);
	}
	100% {
		transform-origin: bottom;
		transform: scale(0);
	}
}

/*******
スマートフォン
*******************/
/*基本*/
.top_main {
	padding: 80px 0 40px;
	overflow: hidden;
}

.inner {
	padding: 0 20px;
}

.top_col2_container {
	display: flex;
	flex-direction: column;
	row-gap: 70px;
}

.top_col2_container.reverse {
	flex-direction: column-reverse;
}

.top_section {
	margin-bottom: 100px;
}

.top_news.top_section {
	margin-bottom: 80px;
}

/*見出し*/
.h2_wrap {
	margin-bottom: 50px;
	color: var(--main-color);
}

.h2_wrap p {
	font-size: 5.6rem;
	line-height: 1;
	margin-bottom: 10px;
	overflow: hidden;
}

.h2_wrap h2 {
	font-size: 1.6rem;
	overflow: hidden;
}

.h2_wrap p .slide_up,
.h2_wrap h2 .slide_up {
	display: inline-block;
}

.h2_wrap.active p .slide_up,
.subpage_h2 &gt;span .slide_up {
	animation: slideUp  1.2s .5s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards;
}

.h2_wrap.active h2 .slide_up,
.subpage_h2 h2 .slide_up {
	animation: slideUp  1.2s 1s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards;
}


/*2カラムテキストボックス余白・行の高さ*/
.text_box {
	margin-bottom: 60px;
}

.top_products .text_box,
.top_process .text_box,
.top_company .text_box {
	margin-bottom: 0;
}

.text_box p {
	line-height: var(--linheight-content-p);
}

/*リンクボタン*/
.link_btn a,
.back_btn a {
	display: block;
	position: relative;
	border: 1px solid #f1f3f5;
	background: #f1f3f5;
	width: 260px;
	height: 60.8px;
	border-radius: 40px;
	overflow: hidden;
}

.link_btn a {
	padding: 15px 30px 15px 58px;
}

.back_btn a {
	padding: 15px 42px 15px 30px;
	text-align: right;
	margin: 0 auto;
}

.btn_txt,
.back_btn_txt {
	color: var(--main-color);
	position: relative;
/* 	top: 50%;
	transform: translateY(-50%);
	left: 58px; */
	z-index: 3;
	/* transition: .3s; */
}

.back_btn_txt {
	transition: .2s .2s;
}

.btn_hover_txt,
.back_btn_hover_txt {
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);

	z-index: 4;
	color: #fff;
	
}

.btn_hover_txt {
	left: 58px;
	transition: .2s .2s;
}

.back_btn_hover_txt {
	right: 58px;
	transition: .2s .2s;
}

.btn_txt,
.btn_hover_txt,
.back_btn_txt,
.back_btn_hover_txt {
	display: inline-block;
	font-size: 1.8rem;
	font-family: var(--questrial);
}

.link_btn a:hover .btn_txt {
	opacity: 0;
}

.back_btn a:hover .back_btn_txt {
	color: #fff;
}

.link_btn a:hover .btn_hover_txt,
.back_btn a:hover .back_btn_hover_txt {
	opacity: 1;
}

.link_btn a:hover::before {
	transform: translate(100%, -50%);
}

.back_btn a:hover::before {
	transform: translate(-100%, -50%);
}

.link_btn a::before {
	content: '';
	width: 100%;
	height: 100%;
	display: block;
	background: #0b5abe;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -100%;
	z-index: 1;
	transition: .5s;
	border-radius: 40px;
}

.back_btn a::before {
	content: '';
	width: 100%;
	height: 100%;
	display: block;
	background: #0b5abe;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -100%;
	z-index: 1;
	transition: .5s;
	border-radius: 40px;
}

.link_btn a::after {
	content: '';
	display: inline-block;
	width: 46px;
	height: 46px;
	background: url(img/link_arrow1.svg) no-repeat center/ contain;
	position: absolute;
	left: calc(100% - 52px);
	top: 50%;
	transform: translate(0, -50%);
	z-index: 3;
	/* transition: .5s; */
	transition: .5s;
}

.back_btn a::after {
	content: '';
	display: inline-block;
	width: 46px;
	height: 46px;
	background: url(img/link_arrow1.svg) no-repeat center/ contain;
	position: absolute;
	right: calc(100% - 52px);
	top: 50%;
	transform: translate(0, -50%) rotate(180deg);
	z-index: 3;
	/* transition: .5s; */
	transition: .5s;
}

.link_btn a:hover::after {
	left: 6px;
	background: url(img/link_arrow2.svg) no-repeat center/ contain;
	animation: btnMove .5s linear 1 forwards normal;
}

.back_btn a:hover::after {
	right: 6px;
	background: url(img/link_arrow2.svg) no-repeat center/ contain;
	animation: btnMoveRverse .5s linear 1 forwards normal;
}

.link_btn.align_right a {
	margin-left: auto;
}

.link_btn_pc {
	display: none;
}

.link_btn_sp {
	margin-top: 60px;
}

.top_process .link_btn_sp,
.top_company  .link_btn_sp {
	padding-left: 20px;
}

@keyframes btnMove {

	0% {
		background: url(img/link_arrow2.svg) no-repeat center/ contain;
		left: 6px;
	}
	100% {
		background: url(img/link_arrow2.svg) no-repeat center/ contain;
		left: calc(100% - 52px);
	}
}

@keyframes btnMoveRverse {
	0% {
		background: url(img/link_arrow2.svg) no-repeat center/ contain;
		right: 6px;
	}
	100% {
		background: url(img/link_arrow2.svg) no-repeat center/ contain;
		right: calc(100% - 52px);
	}
}

.top_news .h2_wrap {
	margin-bottom: 0;
}

.loop_slider {
	margin-top: 80px;
}

/* スライドの動き等速 */
.slider2 .swiper-wrapper {
	transition-timing-function: linear;
}

/*左端にきたら大きくなる*/
.slider3 .swiper-slide {
	/* opacity: .35; */
	transform: scale(.8);
	transition: .3s .1s;
	transform-origin: bottom;
}

.slider3 .swiper-slide-active {
	/* opacity: 1; */
	transform: scale(1);
	transition: .5s 2s;
}

/*slider-wrapper*/
.loop_slider,
.slider3_wrapper,
.slider4_wrapper {
	overflow: hidden;
}

/* .slider4 .swiper-wrapper {
	justify-content: center;
	justify-content: flex-end;
} */

.slider4 .swiper-slide {
	opacity: .35;
}

.slider4 .swiper-slide-active {
	opacity: 1;
}

.top_process .inner,
.top_company .inner {
	padding: 0;
}

.top_process .left_box,
.top_company .left_box {
	padding: 0 20px;
}

.top_company .right_box  {
	position: relative;
}

/*お知らせ*/
.news_wrapper {
	margin-bottom: 40px;
}

.news_wrapper a {
	text-decoration: none;
}

/* .news_wrapper a, */
.news_wrapper div {
	display: block;
	padding: 24px 0;
	border-bottom: 1px solid #e5e5e5;
}

/* .news_wrapper a dl, */
.news_wrapper div dl {
	display: grid;
	row-gap: 6px;
}

.news_wrapper dt {
	color: var(--main-color);
	font-size: 1.2rem;
}

.news_wrapper dd {
	color: var(--font-color);
}

.news_wrapper a:hover dd {
	color: var(--main-color);
}

/*お問い合わせバナー*/
.contact_card_wrapper {
	position: relative;
	/* display: inline-block; */
}

.contact_card {
	display: flex;
	flex-direction: column;
	row-gap: 20px;
}

.contact_card li a {
	display: grid;
	align-items: center;
	overflow: hidden;
	border: 1px solid var(--main-color);
	background: var(--main-color);
	border-radius: 15px;
	width: 100%;
	height: 100px;
	text-decoration: none;
	color: #fff;
	max-width: 585px;
	margin: 0 auto;
	padding-left: 15px;
	position: relative;
}

.contact_card li a:hover {
	color: var(--main-color);
}

.contact_card li a::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 15px;
	top: 0;
	transition: .5s;
	background: #fff;
	position: absolute;
	top: 0;
	left: -100%;
}

.contact_card li a:hover::before {
	transform: translateX(100%);
}

.contact_card li:nth-child(2) a::after {
	content: '';
	display: inline-block;
	width: 32px;
	height: 32px;
	background: url(img/link_arrow2.svg) no-repeat center/ contain;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
	/* transition: .5s; */
	z-index: 10;
}

.contact_card li:nth-child(2) a:hover::after {
	right: calc(100% - 42px);
	background: url(img/link_arrow1.svg) no-repeat center/ contain;
	animation: moveAnime2 .5s  linear 1 normal forwards;

}

@keyframes moveAnime2 {

	0% {
		background: url(img/link_arrow1.svg) no-repeat center/ contain;
		right: calc(100% - 42px);
	}

	100% {
		background: url(img/link_arrow1.svg) no-repeat center/ contain;
		right: 10px;;
	}
}



.contact_card h2 {
	font-size: 1.2rem;
	margin-bottom: 6px;
}

.contact_card li:first-child p:first-of-type {
	font-size: 2.2rem;
	font-weight: 600;
	line-height: var(--lineheight-s);
	margin-bottom: 4px;
}

.contact_card li:first-child p:nth-of-type(2) {
	font-size: 1rem;
}

.contact_card li:nth-child(2) p {
	font-size: 1.8rem;
	font-weight: bold;
}

.contact_text {
	display: inline-block;
	position: relative;
	z-index: 15;
}

.card_tel_icon,
.card_mail_icon {
	position: absolute;
	top: 50%;
	left: 19px;
	z-index: 10;
	display: inline-block;
	transform: translateY(-50%);
	transition: .5s;
}

.contact_card li a:hover .card_tel_icon,
.contact_card li a:hover .card_mail_icon {
	opacity: .3;
}

.card_tel_icon {
	width: 66px;
	height: 66px;
	background: url(img/tell_icon_blue.svg) no-repeat center/ contain;
}

.card_mail_icon {
	width: 66px;
	height: 50px;
	background: url(img/mail_icon_blue.svg) no-repeat center/ contain;
}

/* .contact_card li a:hover .card_tel_icon, */
/* .contact_card li a:hover .card_mail_icon {
	left: 52px;
} */

/*背景 円*/
.top_product_image_box {
	position: relative;
}

.bg_circle {
	position: absolute;
	
	border-radius: 50%;
}

.circle1 {
	width: 11.47vw;
	height: 11.47vw;
	background: rgba(241, 192, 9, .7);
	top: 14.13vw;
	right: 32vw;
	z-index: 2;
	transform: translate(1vw, -18vw);
	transition: 1s 1s;
}

.top_product_image_box.active .circle1,
.top_product_image_box.active .circle2,
.top_product_image_box.active .circle3,
.top_company .h2_wrap.active .circle7,
.top_company.active .circle7_pc,
.top_news .top_col2_container.active .circle8,
.top_news .link_btn.active + .circle9,
.contact_card_wrapper.active .circle10,
.top_news .top_col2_container.active .circle8_pc,
.top_news .link_btn.active ~ .circle9_pc,
.subpage_main.active .contact-circle1,
.submit_btn.active .contact-circle2_sp,
.submit_btn.active .contact-circle3_sp,
.form_wrap dl.active .contact-circle2,
.confirm_txt.active + .contact-circle3,
.regulation4.active + .privacy-circle2_sp,
.contact_card_wrapper.active .privacy-circle3,
.regulation3.active .privacy-circle2_pc,
.subpage_main.active .privacy-circle1,
.subpage_main.active .news-circle1,
.news-circle2.active,
.news-circle3_pc.active,
.contact_card_wrapper.active .news-circle3_sp,
.subpage_main.active .article-circle1,
.contact_card_wrapper.active .article-circle3,
.article-circle2.active {
	transform: translate(0, 0);
}

.top_product_image_box.active .circle1,
.subpage_main.active .contact-circle1,
.subpage_main.active .privacy-circle1,
.subpage_main.active .news-circle1,
.subpage_main.active .article-circle1 {
	animation: altVertical 3s 2s ease-in-out infinite alternate;
}

.top_product_image_box.active .circle2,
.submit_btn.active .contact-circle2_sp,
.form_wrap dl.active .contact-circle2,
.regulation4.active + .privacy-circle2_sp,
.regulation3.active .privacy-circle2_pc,
.news-circle2.active,
.article-circle2.active {
	animation: altVertical2 3.2s 2s ease-in-out infinite alternate;
}

.top_product_image_box.active .circle3,
.submit_btn.active .contact-circle3_sp,
.confirm_txt.active + .contact-circle3 {
	animation: altVertical 3.1s 2s ease-in-out infinite alternate;
}

.top_company .h2_wrap.active .circle7,
.top_company.active .circle7_pc {
	animation: altVertical 2.8s 1.5s ease-in-out infinite alternate;
}

.top_news .top_col2_container.active .circle8,
.top_news .top_col2_container.active .circle8_pc {
	animation: altVertical2 3.1s 2s ease-in-out infinite alternate;
}

.top_news .link_btn.active + .circle9,
.top_news .link_btn.active ~ .circle9_pc {
	animation: altVertical 3.3s 1.5s ease-in-out infinite alternate;
}

.contact_card_wrapper.active .circle10,
.contact_card_wrapper.active .privacy-circle3,
.contact_card_wrapper.active .news-circle3_sp,
.news-circle3_pc.active,
.contact_card_wrapper.active .article-circle3 {
	animation: altVertical2 3.5s 2s linear infinite alternate;
}


/* .top_product_image_box.delay .circle1 {
	transform: translate(0, 0);
	animation: altVertical 3s 2s linear infinite alternate both;
} */

.circle2 {
	width: 5.86vw;
	height: 5.86vw;
	background: rgba(112, 215, 126, .7);
	left: 12vw;
	bottom: 31.7vw;
	z-index: 2;
	transform: translate(-17vw, -2vw);
	transition: 1s 1s;
}

.circle3 {
	width: 7.7vw;
	height: 7.7vw;
	background: rgba(6, 124, 208, .7);
	right: .00346vw;
	bottom: 30vw;
	z-index: 2;
	transform: translate(7.9vw, -3vw);
	transition: 1s 1s;
}

@keyframes altVertical {
	0% {
		transform: translate(0, 0);
	}


	100% {
		transform: translate(0, 20px);
	}
}

@keyframes altVertical2 {
	0% {
		transform: translate(0, 0);
	}

	10% {
		transform: translate(0, 0);
	}

	90% {
		transform: translate(0, -20px);
	}
	
	100% {
		transform: translate(0, -20px);
	}
}

.slider4_wrapper {
	position: relative;
}

.circle4 {
	width: 14.9vw;
	height: 14.9vw;
	background: #067cd0 ;
	z-index: 5;
	top: 0;
	left: 9vw;
}

.slider4 .swiper-wrapper {
	text-align: right;
}

.slider4 img {
	width: calc(100% - 10px);
}

.circle5 {
	width: 14.9vw;
	height: 14.9vw;
	background: #70d774;
	right: 27.4vw;
	bottom: -6.4vw ;
	z-index: -1;
}

.circle6 {
	width: 7.46vw;
	height: 7.46vw;
	background: #f1c009;
	right: 10.96vw;
	bottom: 0;
	z-index: -1;
}

.top_company .h2_wrap,
.top_news .top_col2_container {
	position: relative;
}

.circle7 {
	width: 18.13vw;
	height: 18.13vw;
	background: rgba(241, 192, 9, .45);
	top: -18vw;
	right: -8vw;
	z-index: 5;
	transform: translate(18vw, -8vw);
	transition: .5s 1s;
}

.circle8 {
	width: 52.8vw;
	height: 52.8vw;
	background: rgba( 6, 124, 208, .45);
	top: -70px;
	right: -26.4vw;
	z-index: 5;
	transform: translate(50vw, -50vw);
	transition: 1s 1s;
}

.circle9 {
	width: 29vw;
	height: 29vw;
	background:  rgba(241, 192, 9, .45);
	bottom: -10.4vw;
	left: -12.8vw;
	z-index: -1;
	transform: translate(-30vw, 0);
	transition: .5s 1s;
}

.circle7_pc,
.circle8_pc,
.circle9_pc {
	display: none
}

.circle10,
.privacy-circle3,
.news-circle3_sp,
.article-circle3 {
	top: -8.5vw;
	right: -8.5vw;
	z-index: -1;
	transform: translate(20vw, -10vw);
	transition: 1s 1s;
}


.circle10,
.privacy-circle3,
.news-circle3_sp,
.article-circle3 {
	width: 15.2vw;
	height: 15.2vw;
	background: rgba(112, 215, 116, .45);
}

.contact-circle1,
.privacy-circle1,
.news-circle1,
.article-circle1 {
	top: 55px;
	right: -22.13vw;
	z-index: -3;
	transform: translate(31vw, -2vw);
	transition: 1s 1s;
}


.contact-circle1,
.privacy-circle1,
.news-circle1,
.article-circle1 {
	width: 52.8vw;
	height: 52.8vw;
	background: rgba( 6, 124, 208, .45);
}

.contact-circle2_sp,
.privacy-circle2_sp,
.news-circle2,
.article-circle2 {
	width: 29vw;
	height: 29vw;
	background: rgba(241, 192, 9, .45);
}

.contact-circle2_sp {
	top: 85%;
	left: calc(-9.06vw - 20px);
	transition: 1s 1s;
	transform: translate(-30vw, -1.5vw);
	z-index: -1;
}

.privacy-circle2_sp,
.news-circle2 {
	bottom: -45px;
	left: calc(-9.06vw - 20px);
	transition: 1s 1s;
	transform: translate(-30vw, -1.5vw);
	z-index: -1;
}

.article-circle2 {
	bottom: -45px;
	left: -9.06vw;
	transition: 1s 1s;
	transform: translate(-30vw, -1.5vw);
	z-index: -1;
}

.news-circle2 {
	left: -9.06vw;
}

.contact-circle3_sp {
	width: 15.2vw;
	height: 15.2vw;
	background: rgba(112, 215, 116, .45);
	top: 90.3%;
	right: calc(-3.46vw - 20px);
	transition: 1s 1s;
	transform: translate(18vw, 2vw);
	z-index: -1;
}

.news-circle3_pc {
	display: none;
}

/* .news-circle3 {
	width: 15.2vw;
	height: 15.2vw;
	background: rgba(112, 215, 116, .45);
	bottom: ;
	right: calc(-3.46vw - 20px);
	transition: 1s 1s;
	transform: translate(18vw, 2vw);
	z-index: -1;
} */



/*メイン画像 スライドショー*/


/*メイン*/


/*トップ お問い合わせ*/




/*footer*/
footer {
	position: relative;
	z-index: 0;
	background: #222222;
	color: #fff;
	padding-top: 55px;
	padding-bottom: 125px;
	overflow: hidden;
}

footer .inner {
	position: relative;
	max-width: 1240px;
	margin:  auto;
}

.footer_container {
	display: flex;
	flex-direction: column;
	row-gap: 30px;
	border-bottom: 1px solid #fff;
	padding-bottom:  50px;
	margin-bottom: 30px;
}

.f_logo {
	margin-bottom: 30px;
	font-size: 1.6rem;
	font-weight: bold;
}

.f_logo.tablet {
	display: none;
}

.f_logo span {
	font-size: 1rem;
	margin-right: 3px;
}

.f_logo img {
	/* width: 90px; */
	/* width: 218px; */
	max-width: 250px;
	width: 100%;
}


.business_hour {
	/* margin-bottom: 3.5rem; */
	display: grid;
	row-gap: 6px;
}

.business_hour dl {
	display: flex;
	column-gap: 1rem;
}

/* .business_hour dl dt {
	flex-basis: 75px;
} */

.business_hour dl dd {
	flex-basis: calc(100% - 70px);
}

.f_tel {
	display: grid;
	row-gap: 5px;
	margin-bottom: 6px;
}

.f_tel a,
.f_nav a,
.modal_open_btn {
	color: #fff;
	text-decoration: none;
	display: inline-block;
}

.modal_open_btn {
	text-align: left;
}

.f_tel a:hover {
	text-decoration: underline;
}

.f_nav {
	display: flex;
	flex-direction: column;
}

.f_nav ul {
	display: inline-block;
}


/* .f_nav ul li:not(:last-child) {
	margin-bottom: 30px;
} */

.f_nav ul li {
	position: relative;
	/* padding-left: 1.8rem; */
}

.f_nav ul li a,
.modal_open_btn {
	display: inline-block;
	max-width: 204px;
	width: 100%;
	padding: 15px 0;
	background: url(img/nav_arrow_white.svg) no-repeat right 6px center/ 6px;
	transition: .3s;
}

.f_nav ul li a:hover,
.modal_open_btn:hover {
	opacity: 0.8;
	background: url(img/nav_arrow_white.svg) no-repeat right 3px center/ 6px;
}

/* .f_nav ul li a::before {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #dadada;
	transition: .3s;
} */

.insta_icon {
	text-align: center;
	margin: 40px 0;
}

.insta_icon img {
	width: 20px;
}

.copy {
	color: #fff;
	text-align: center;
	/* line-height: 1.6; */
}

.copy small {
	font-size: 1rem;
}

.copy small span {
	margin-left: 1.4rem;
}

.button_wrapper.align_left {
	text-align: left;
}

.f_tel_inner {
	display: grid;
	row-gap: 10px;
}

.place {
	margin-bottom: 5px;
	font-size: 1.5rem;
}



/*ページトップ*/
.pageTop {
	position: absolute;
	z-index: 20;
	bottom: 40px;
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
	text-decoration: none;
	color: #324542;
}

.pageTop img {
	width: 42px;
	transition: .3s;
}

.pageTop:hover img {
	transform: scale(.9);
}


/*プライバシーポリシー*/
/* .modal-body {
	opacity: 0;
	visibility: hidden;
	display: none;
} */

/* .privacy_ul_2 a {
	word-break: break-all;
} */

.privacy_section {
	margin-bottom: 80px;
	position: relative;
}

.plivacy_declaration {
	margin-bottom: 40px;
	display: grid;
	justify-content: center;
}

.privacy_regulation h3 {
	font-size: 1.4rem;
}

.privacy_regulation {
	display: grid;
	row-gap: 20px;
	padding: 15px;
	border-bottom: 1px solid #e5e5e5;
}

.privacy_regulation:first-of-type {
	border-top: 1px solid #e5e5e5;
}

.privacy_txt {
	line-height: 2;
}


/*お問い合わせ
-----------------------------------*/
.contact_section {
	margin-bottom: 70px;
}

.contact_h3 {
	text-align: center;
	margin-bottom: 45px;
}

.contact_h3 h3 {
	display: inline-block;
	font-size: 2rem;

}

.contact_h3.tel {
	padding: 18px 0;
	background: url(img/contact/phone_icon.svg) no-repeat center/ contain;
}

.contact_h3.mail {
	padding: 11px 0;
	background: url(img/contact/mail_icon.svg) no-repeat center/ contain;
}

.contact_tel_btn {
	text-align: center;
	margin-bottom: 80px;
}

.contact_tel_btn a {
	display: block;
	width: 300px;
	line-height: 1;
	padding: 20px 15px;
	margin: 0 auto 1.6rem;
	text-decoration: none;
	color: #fff;
	background: var(--main-color);
	border: 1px solid var(--main-color);
	font-size: 1.8rem;
	font-weight: bold;
	border-radius: 50px;
	position: relative;
	overflow: hidden;
	z-index: 1;
}

.contact_tel_btn p {
	font-size: 1.2rem;
}

.contact_h3.mail + p {
	margin: 35px 0 40px;
	line-height: 2;
}

.confirm_txt p {
	line-height: 2;
}

.confirm_txt a {
	text-decoration: none;
	color: var(--main-color);
}

.confirm_txt a:hover,
.confirm_txt a:active,
.confirm_txt a:focus {
	text-decoration: underline;
}

.note {
	line-height: 2;
}

.note a {
	display: inline-block;
}

.submit_note {
	display: grid;
	justify-content: center;
	row-gap: 12px;
}

.submit_note,
.submit_note a {
	color: #acacac;
	font-size: 1.2rem;
}

.submit_note li {
	padding-left: 1.7rem;
	position: relative;
}

.submit_note li::before {
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}

.submit_note a:hover {
	text-decoration: none;
}


/*フォーム*/

.input_area dl dt {
	color: var(--main-color);
	font-weight: bold;
	margin-bottom: 1.4rem;
}

.input_area dl dt label {
	display: flex;
	align-items: center;
	column-gap: 7px;
}

.input_area dl:not(:last-of-type) {
	margin-bottom: 50px;
}

.input_area dl:last-of-type {
	margin-bottom: 50px;
}

.form_wrap {
	max-width: 800px;
	margin: 0 auto;
}

.form_wrap input[type="text"],
.form_wrap input[type="tel"],
.form_wrap input[type="email"],
.form_wrap textarea {
	background: #f4f4f4;
	width: 100%;
	line-height: 1.6;
	padding: 1.9rem 1.6rem;
}

.form_wrap textarea {
	height: 26rem;
	resize: vertical;
}

::placeholder {
	color: #a9a8a8;
}

.required {
	color: #fff;
	display: inline-block;
	background: var(--main-color);
	/* border: 1px solid #11ba71; */
	border-radius: 5px;
	/* padding: 2px  10px 0; */
	padding: 0 5px 2px;
	font-size: 1.2rem;
	font-weight: normal;
	/* font-family: var(--font-mplus); */
}

.accept {
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: center;
}

.accept p {
	margin-bottom: 20px;
}

.accept p a {
	color: var(--font-color);
}

.accept p a:hover,
.accept p a:focus {
	text-decoration: none;
}

.accept p label {
	display: flex;
}

.submit_btn {
	text-align: center;
	margin-bottom: 34px;
	position: relative;
}

.submit_btn [type="submit"] {
	display: block;
	color: #fff;
	background: var(--main-color);
	border: 1px solid var(--main-color);
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
	padding: 21px 15px;
	line-height: 1;
	border-radius: 50px;
	transition: .3s;
	font-weight: bold;
	font-size: 1.6rem;
	letter-spacing: .3rem;
	position: relative;
	overflow: hidden;
	z-index: 1;
}

/* .submit_btn [type="submit"]:hover {
	color: #fff;
	background: #11ba71;
} */

.form_wrap .note,
.form_wrap .note a {
	color: #9c9c9c;
}

.form_wrap .note p {
	padding-left: 2rem;
	position: relative;
}

.form_wrap .note p::before {
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}

.form_wrap .note p small {
	font-size: 1.3rem;
}

.form_wrap .note a:hover,
.form_wrap .note a:focus {
	text-decoration: none;
}

.form_wrap input[type="text"]:focus,
.form_wrap input[type="tel"]:focus,
.form_wrap input[type="email"]:focus,
.form_wrap textarea:focus {
	border: 2px solid var(--main-color);
}


/*チェックボックス*/
.form_wrap [type="checkbox"] {
	margin: 0 10px;
	/* display: none; */
	filter: alpha(opacity=0);
  -moz-opacity:0;
  opacity:0;
  /* ブラウザのデフォルトのスタイルを削除 */
  -webkit-appearance: none;
  appearance: none;
  /* レイアウトから無視 */
  position: absolute;
}

.form_wrap [type="checkbox"] + .wpcf7-list-item-label {
	position: relative;
	padding-left: 20px;
	/*チェックボックス分の隙間を作る*/
}


.form_wrap [type="checkbox"]+ .wpcf7-list-item-label::before {
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	position: absolute;
	top: 5px;
	left: 0;
	/* transform: translateY(-50%); */
	/*中央ぞろえにする*/
	border: 1px solid var(--main-color);
	/*お好きな太さで。*/
	/* border-radius: 3px; */
	cursor: pointer;
	/*ポインターを表示する*/
	background: #fff;
}

.form_wrap [type="checkbox"]:focus + .wpcf7-list-item-label::before {
	border: 3px solid var(--main-color);
}


.form_wrap [type="checkbox"]:checked+ .wpcf7-list-item-label::before {
	/*チェックしたときの箱の色を変える*/
	background: var(--main-color);
}

.form_wrap [type=checkbox]:checked+ .wpcf7-list-item-label::after {
	/*チェックの✓をつくる*/
	content: "";
	display: block;
	width: 10px;
	height: 6px;
	box-sizing: border-box;
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
	position: absolute;
	/*ここから下は位置を調整する*/
	top: 8px;
	left: 3px;
	/*箱を斜めに傾けてチェック表示にする*/
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/*お知らせ*/
.news_list_section {
	margin-bottom: 115px;
	position: relative;
}

.news_list_section .news_wrapper {
	margin-bottom: 35px;
}

/*ページナビ*/
.page_nav {
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	/* margin-top: 60px; */
	/* margin-bottom: 40px; */
	/* font-family: var(--font-barlow); */
	/* margin: 60px 0; */
}

.page-numbers {
	display: grid;
	justify-content: center;
	align-items: center;
	/* border-radius: 5px; */
	text-decoration: none;
	/* padding: 0 2px; */
	/* box-sizing: border-box; */
	/* color: #fff; */
	color: var(--font-color);
	width: 24px;
	height: 24px;
	/* background: #232323; */
	text-align: center;
	/* margin: 0 4px; */
	font-size: 1.3rem;
}

.page-numbers:hover {
	/* opacity: 0.8; */
	color: var(--main-color);
}

.page-numbers.dots {
	color: #4d4d4d;
	background: none;
}

.page-numbers.current {
	/* background: #d31132; */
	/* border-bottom: 1px solid #11ba71; */
	background: var(--main-color);
	color: #fff;
	border-radius: 50%;
}

.prev.page-numbers {
	margin-right: 20px;
}

.next.page-numbers {
	margin-left: 20px;
}

.prev.page-numbers,
.next.page-numbers {
	position: relative;
	width: 6px;
	height: 14px;
}

.prev.page-numbers::before {
	content: '';
	display: inline-block;
	width: 6px;
	height: 14px;
	background: url(img/news_prev_arrow.svg) no-repeat center/ contain;
	position: absolute;
	top: 50%;
	left: 0;
	/* left: 50%; */
	transform: translateY(-50%);
}

.next.page-numbers::before {
	content: '';
	display: inline-block;
	width: 6px;
	height: 14px;
	background: url(img/news_next_arrow.svg) no-repeat center/ contain;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

/*お知らせ記事
---------------------------------*/
/* .news_article {
	padding: 50px 30px 70px;
	max-width: 810px;
	margin: 0 auto;
}

.article_heading {
	margin-bottom: 40px;
}

.article_heading time {
	color: #11ba71;
	display: inline-block;
	margin-bottom: 15px;
}

.article_heading h2 {
	font-weight: normal;
	font-size: 1.8rem; 
}

.article_main {
	margin-bottom: 50px;
}

.article_main p,
.article_main div {
	margin-bottom: 30px;
} */

.pnkz ol li {
	display: inline-block;
	font-size: 1.2rem;
}

.pnkz ol li a {
	color: var(--font-color);
	text-decoration: none;
}

.pnkz ol li:not(:last-child):after {
	content: '';
	display: inline-block;
	width: 6px;
	height: 10px;
	background: url(img/pnkz_arrow.svg) no-repeat center/ contain;
	margin: 0 14px;
}

.article_wrapper {
	margin-bottom: 115px;
	position: relative;
}

.article_heading {
	margin-bottom: 45px;
}

.article_heading h2 {
	font-size: 2.2rem;
	margin-bottom: 10px;
}

.article_heading p {
	font-size: 1.2rem;
	font-family: var(--haeding-en);
	color: var(--main-color);
}

.article_body {
	margin-bottom: 80px;
}

.article_body p {
	line-height: 2;
	margin-bottom: 30px;
}


/*スクロールアニメーション*/


/*下層ページ
--------------------------------*/
/*会社案内*/
.subpage_main {
	/* margin-top: 60px; */
	padding: 0 0 40px;/*105px 0 80px*/
	overflow: hidden;
	position: relative;
}

.subpage_main_wrapper {
	overflow: hidden;
}

.inner_1400w,
.inner_1200w,
.inner_1000w,
.inner_800w {
	margin: 0 auto;
	padding: 0 20px;
}

.inner_1400w {
	max-width: 1440px;
}

.inner_1200w {
	max-width: 1240px;
}

.inner_1000w {
	max-width: 1040px;
}

.inner_800w {
	max-width: 840px;
}

.txt_wbr p {
	/* word-break: keep-all; */
	word-break: keep-all;
	/* white-space: pre-wrap; */
	text-align: left;
	/* overflow-wrap: break-word; */
}

.subpage_section {
	margin-bottom: 115px;
}

/*h2*/
.subpage_heading_section {
	padding-top: 100px;
	/* padding-bottom: 40px; */
	/* margin-bottom: 355px; */
	background: #fff;
}

.subpage_heading_section2,
.product_detail_section_wrapper {
	padding-top: 100px;
}

.pnkz {
	margin-bottom: 35px;
}

.subpage_h2 {
	margin-bottom: 40px;
	overflow: hidden;
}

.subpage_h2 &gt; span {
	font-family: var(--haeding-en);
	/* font-size: 5.6rem; */
	font-size: 4.5rem;
	color: var(--main-color);
	line-height: 1.1;
	position: relative;
	/* padding-right: 78px; */
	/* padding-right: 55px; */
	padding-top: 1px;
	display: inline-block;
	overflow: hidden;
}

.subpage_h2 &gt; span .slide_up,
.subpage_h2 h2 .slide_up {
	transform: translateY(100%);
	display: inline-block;
}

.heading_icon {
	display: inline-block;
	padding-right: 58px;
	position: relative;
}

.heading_icon::after {
	content: '';
	display: inline-block;
	width: 44px;
	height: 50px;
	background: url(img/subpage_h2_icon.svg) no-repeat center/ contain;
	position: absolute;
	right: 0;
	top: 0;
	overflow: hidden;
	transform: translateY(62px);
	animation: iconSlideUp 1.2s .5s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards ;
	z-index: 1;
}

.heading_icon.privacy_heading_icon {
	padding-right: 60px;
}

.subpage_h2 h2 {
	font-size: 1.6rem;
	font-weight: bold;
	color: var(--main-color);
	overflow: hidden;
}

@keyframes iconSlideUp {
	0% {
		transform: translateY(62px);
	}
	100% {
		transform: translateY(0);
	}
}

/*main img*/
.subpabe_main_img {
	/* margin-left: 20px;
	aspect-ratio: 355/ 300;
	margin-bottom: 80px */
	
	width: calc(100% - 20px);
	height: 355px;
	margin-left: auto;
	top: 0;
	left: 0;
	z-index: -1;
	clip-path: inset(0 0 round 30px 0 0 30px);
}

.subpabe_main_img::before {
	content: '';
	top: 0;
	left: 0;
	/* padding-left: 20px; */
	/* transform: translate(40px, 0); */
	position: fixed;
	width: 100%;
	height: 100vh;
	display: block;
	z-index: -1;
}

.company_main {
	background: url(img/company/company_main_sp.jpg) no-repeat center/cover;
}

/* .company_main::before {
	background: url(img/company/company_main_sp.webp) no-repeat left 20px center/cover;
} */

.process_main {
	background: url(img/process/process_main_sp.jpg) no-repeat center/cover;
}

/* .process_main::before {
	background: url(img/process/process_main_sp.webp) no-repeat left 20px center/cover;
} */

.products_main {
	/* background: url(img/products/products_main_sp.webp) no-repeat left 20px center/cover; */
	background: url(img/products/products_main_sp.webp) no-repeat center top 20%/cover;
}

/* .products_main::before {
	background: url(img/products/products_main_sp.webp) no-repeat left 20px center/cover;
} */

/* .subpabe_main_img img {
	width: 100%;
} */

/* .company_main {
	background: url(img/company/company_main_sp.png) no-repeat center/ cover;
} */

.eyecatch_container {
	background: #fff;
	padding-top: 80px;
}

.col2_eyecatch {
	display: flex;
	flex-direction: column;
	row-gap: 50px;
	margin-bottom: 80px;
}

.col2_eyecatch .left_box {
	width: 350px;
	overflow: hidden;
}

.col2_eyecatch .left_box p {
	font-size: 1.5rem;/*2rem*/
	font-weight: bold;
	color: var(--main-color);
	line-height: 2;
	transform: translateY(-100%);
}

.col2_eyecatch.active .left_box p {
	animation: slideUp  1.2s .5s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards;
}

.fade_in_up {
	opacity: 0;
	transform: translateY(50px);
}

.fade_in_up.active {
	animation: fadeInup 1.5s .2s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards;
}

.col2_eyecatch .right_box p {
	line-height: 2.5;
}

.subpage_loop_slider {
	margin-bottom: 80px;
}

/*h3*/
.subpage_h3 {
	text-align: center;
	margin-bottom: 60px;
}

.subpage_h3 h3 {
	font-size: 2.2rem;
}

.subpage_h3 span {
	font-size: 1.2rem;
	color: var(--main-color);
	font-family: var(--haeding-en);
}

/*強み 代表挨拶*/
.strength_section,
.president_section {
	margin-bottom: 80px;
	display: flex;
	flex-direction: column-reverse;
	row-gap: 38px;
	position: relative;
	/* background: url(img/company/company_bg01.png) no-repeat center/ 106%; */
}

.strength_section::before {
	content: '';
	width: 106vw;
	height: 106vw;
	background: url(img/company/company_bg01.png) no-repeat center/ contain;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;

}

.strength_ttl {
	margin-bottom: 25px;
}

.strength_ttl span {
	font-family: var(--haeding-en);
	color: var(--main-color);
	font-size: 1.6rem;
	display: inline-block;
	margin-bottom: 20px;
	padding-left: 17px;
	position: relative;
}

.strength_ttl span::before {
	content: '';
	display: block;
	width: 30px;
	height: 30px;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 50%;
	z-index: -1;
}

.strength01 .strength_ttl span::before,
.strength03 .strength_ttl span::before {
	background: #f1c009;
}

.strength02 .strength_ttl span::before {
	background: #70d774;
}

.strength_ttl h4 {
	font-size: 2.2rem;/*2.6*/
	/* display: inline-block; */
	word-break: keep-all;
	line-height: 1.6;
}

.strength01 .strength_ttl h4 {
	width: 150px;
}

.strength02 .strength_ttl h4 {
	width: 150px;
}

.strength03 .strength_ttl h4 {
	width: 150px;
}

.strength_section .left_box p,
.president_section .left_box p {
	line-height: 2.5;
}

.president_section .left_box p:not(:last-of-type) {
	margin-bottom: 25px;
}

.strength_section .right_box figure,
.president_section .right_box figure {
	text-align: center;
}

.strength_section.active .fade_in_up,
.president_section.active .fade_in_up {
	animation: fadeInup 1.5s .2s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards;
}

.strength_img img {
	border-radius: 50px;
}

.president_sign {
	text-align: right;
	font-weight: bold;
	font-size: 1.8rem;
}

.company_position {
	margin-right: 18px;
	font-size: 1.4rem;
}

/*会社概要*/
.dl_table &gt; dl {
	display: flex;
	flex-direction: column;
	padding: 15px 0;
	row-gap: 15px;
	position: relative;
	font-size: 1.4rem;
}

.dl_table &gt; dl::before {
	width: 83px;
}

.dl_table &gt; dl:nth-of-type(odd)::before {
	content: '';
	border-bottom: 1px solid #f1c009;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}

.dl_table &gt; dl:nth-of-type(even)::before {
	content: '';
	border-bottom: 1px solid #70d774;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}

.dl_table &gt; dl::after {
	content: '';
	border-bottom: 1px solid #e5e5e5;
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.dl_table &gt; dl &gt; dt {
	font-weight: bold;
	color: var(--main-color);
}

.dl_table &gt; dl &gt; dd {
	line-height: 2;
}

.dl_table address dl,
.dl_table div dl {
	display: grid;
}

.dl_dd_grid {
	display: grid;
	row-gap: 20px;
}

/*経営理念*/
.policy_bg {
	margin-top: -10px;
	padding: 43px 0;
	display: grid;
	row-gap: 115px;
	background: url(img/company/company_bg01.png) no-repeat left -6.1vw top/ 235px, url(img/company/company_bg01.png) no-repeat center/ 235px, url(img/company/company_bg01.png) no-repeat right -6.1vw bottom/ 235px;
}

.policy_section:not(:last-of-type) {
	margin-bottom: 80px;
}

.policy_section h4 {
	font-size: 2.6rem;
	margin-bottom: 20px;
	padding-left: 30px;
	position: relative;
}

.policy_section h4 span {
	display: inline-block;
	position: relative;
	z-index: 2;
}

.policy_section h4::before {
	content: '';
	display: block;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	z-index: 0;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate3d(0, -50%, 0);
}

.policy_section.policy01 h4::before,
.policy_section.policy03 h4::before {
	background: #f1c009;
}

.policy_section.policy02 h4::before {
	background: #70d774;
}

.policy_section p,
.policy_section ol {
	line-height: 2.5;
}

.policy_section section h5 {
	font-size: 1.6rem;
	margin-bottom: 15px;
}

.policy_section section:not(:last-of-type) {
	margin-bottom: 30px;
}

.policy_3_editor {
	display: grid;
	row-gap: 15px;
}

/*
製造工程・設備紹介
-------------------------*/
.process_section {
	padding: 80px 0 0;
}

.process_flow li {
	display: grid;
	position: relative;
}

.process_flow li:not(:last-child) {
	margin-bottom: 24px;
	padding-bottom: 53px;
}

.process_flow li:not(:last-child)::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	display: inline-block;
	width: 18px;
	height: 13.5px;
	background: #0b5abe;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.process_flow .flow_left {
	text-align: center;
	margin-bottom: 30px;
}

.process_flow .flow_left img {
	width: 200px;
}

.process_flow .flow_center {
	margin-bottom: 40px;
}

.process_flow .flow_center h4 {
	font-size: 2.6rem;
	margin-bottom: 25px;
	text-align: center;
}

.process_flow .flow_center p {
	line-height: 2;
}

.flow_right {
	text-align: center;
}

.facility_section h4,
.products_section h4 {
	font-size: 1.6rem;
	color: var(--main-color);
	margin-bottom: 35px;
	border-bottom: 2px solid var(--main-color);
	display: inline-block;
	padding: 0 2px 2px 18px;
	position: relative;
}

.facility_section h4::before,
.products_section h4::before {
	content: '';
	display: inline-block;
	width: 13px;
	height: 10px;
	background: var(--main-color);
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.facility_section ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 10px;/*25*/
	row-gap: 10px;/*25*/
}

.facility_section ul figcaption {
	margin-top: 10px;
	font-size: 1rem;
	font-weight: bold;
	text-align: center;
}

.facility_section ul li,
.products_section ul li {
	position: relative;
}

.facility_section ul li {
	padding-bottom: 10px;
}

.facility_section ul li::before,
.products_section ul li::before,
.product_image_and_detail_section figure h4::before,
.detail_table_section h4::before {
	content: '';
	width: 100%;
	display: inline-block;
	height: 4px;
	background: #f1c009;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.facility_section ul li::after,
.products_section ul li::after,
.product_image_and_detail_section figure h4::after,
.detail_table_section h4::after {
	content: '';
	width: 29.87%;
	height: 4px;
	display: inline-block;
	background: #70d774;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}

.facility_section section {
	margin-bottom: 80px;
}

.facility_section figure img {
	width: 100%;
	height: auto;
	object-fit: cover;
	overflow: hidden;
	object-position: center;
	aspect-ratio: 313/ 220;
}

.video_area {
	position: relative;
	aspect-ratio: 375/ 278;
	/* background: url(img/process/process_video_bg_sp.webp) no-repeat center/ cover; */
	margin-bottom: 115px;
}

.mask_blue {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(9, 102, 207, .8);
	z-index: 1;
}

.subpage_section.facility_section {
	margin-bottom: 80px;
}

/*loop テキスト*/
.loop_txt {
	display: flex;
	position: absolute;
	width: 100%;
	/* bottom: 0; */
	/* margin: auto 0; */
	padding-inline: 0;
	margin-inline: 0;
	gap: 0;
	align-items: center;
	z-index: 5;
	mix-blend-mode: difference;
	top: 50%;
	transform: translateY(-50%);
	line-height: var(--lineheight-s);
	font-family: var(--haeding-en);
}


/* .video_area img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 3;
	width: 90%;
	max-width: 1200px;
} */

.video_area .video_wrap {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 3;
	width: 100%;
	/* max-width: 1200px; */
	height: 100%;
	/* aspect-ratio: 1200/ 650; */
	overflow: hidden;
	/* border-radius: 15px; */
}

.video_area .video_wrap video {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.dot_mask {
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(img/process/pattern-07.png) repeat center/ 4px;
	top: 0;
	left: 0;
	z-index: 1;
	/* opacity: .3; */
	opacity: .6;
}


.video_txt {
	font-family: var(--montserrat);
	font-weight: 500;
	color: #fff;
	/* font-size: clamp(64px, 26vw, 100px); */
	word-break: keep-all;
	white-space: nowrap;
	/* margin: 0 30px; */
	font-size: clamp(5rem, 1.4vw, 8rem);
	
}


.video_txt:nth-child(odd) {
	animation:  loopTxt 30s  linear infinite;
	/* padding-left: 2rem; */
}

.video_txt:nth-child(even) {
	animation:  loopTxt2 30s  linear infinite;
	/* padding-left: 2rem; */
}

@keyframes loopTxt {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-100%);
	}
}

@keyframes loopTxt2 {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-100%);
	}
}

/*製品情報ページ*/
.products_description_wrapper {
	margin-top: 80px;
	margin-bottom: 115px;
}

.products_description_wrapper .inner_1400w {
	display: grid;
	row-gap: 70px;
}

.products_description {
	display: grid;
	row-gap: 50px;
	line-height: 2;
}

.products_description h3 {
	color: #0b5abe;
	font-size: 22px;
	margin-bottom: 35px;
}

.products_description .left_box {
	grid-row: 1/2;
	text-align: center;
}

.products_description .right_box {
	grid-row: 2/3;
}

.products_section_wrapper .subpage_h3 {
	position: relative;
	z-index: 1;
}

.product_contents_wrapper {
	display: grid;
	row-gap: 100px;
}


.product_contents_nav nav {
	position: relative;
}

.product_contents_nav nav::before {
	content: '';
	display: block;
	width: 300px;
	height: 300px;
	z-index: -2;
	position: absolute;
	top: 50%;
	left: -52px;
	transform: translateY(-50%);
	background: url(img/company/company_bg01.png) no-repeat center/contain;
}


.product_contents_nav ul li:not(:last-child) {
	margin-bottom: 30px;
}

.product_contents_nav li a {
	color: #0b5abe;
	text-decoration: none;
	display: inline-block;
	border-bottom: 2px solid #0b5abe;
	padding-bottom: 6px;
	position: relative;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1;
}

.product_contents_nav li a::before {
	content: '';
	display: inline-block;
	width: 10px;
	height: 13px;
	background: #0b5abe;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	margin-right: 8px;
}

.product_contents_nav li a:hover {
	opacity: .8;
}

.products_section ul {
	display: grid;
	row-gap: 55px;
	column-gap: 70px;
}

.products_section ul li {
	max-width: 430px;
	margin: 0 auto;
	padding-bottom: 15px;
	width: 100%;
}

.products_section ul li figure {
	overflow: hidden;
	margin-bottom: 15px;
}

.products_section ul li a {
	text-decoration: none;
	color: #000000;
	font-weight: bold;
	font-size: 1.6rem;
}

.products_section ul li a img {
	transition: .3s;
}

.products_section ul li a:hover img {
	transform: scale(1.05);
}

.products_section ul li p {
	display: flex;
	justify-content: space-between;
	padding: 0 15px;
	align-items: center;
	position: relative;
}

.post_link_arrow {
	width: 40px;
	height: 40px;
	display: inline-block;
	position: relative;
	overflow: hidden;
}

.post_link_arrow::before {
	content: '';
	width: 12px;
	height: 12px;
	display: inline-block;
	background: url(img/post_link_arrow.svg) no-repeat center/ contain;
	position: absolute;
	right: 50%;
	top: 50%;
	transform: translate(50%, -50%);
	z-index: 1;

}

.products_section ul li a:hover .post_link_arrow::before {
	animation: arrow_right .5s ease-out 1 normal forwards;;
}

.post_link_arrow::after {
	content: '';
	width: 100%;
	height: 100%;
	z-index: 0;
	background: #0b5abe;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 0;
}

.product_list {
	display: grid;
	row-gap: 80px;
}

@keyframes arrow_right {
	0% {
		right: 50%;
	}

	50% {
		right: -100%;
		opacity: 0;
	}

	51% {
		right: 100%;
		opacity: 0;
	}

	100% {
		right: 50%;
		opacity: 1;
	}
}

/*製品詳細ページ*/
.product_detail_wrapper {
	display: grid;
	row-gap: 60px;
}

.product_name_section h3 {
	font-size: 2.2rem;
	color: #0b5abe;
	margin-bottom: 35px;
}

.product_image_and_detail_section figure {
	text-align: center;
	max-width: 600px;
	margin: 0 auto;
	position: relative;
}

.product_image_and_detail_section figure:not(:last-of-type) {
	margin: 0 auto 90px;
}

/* .product_image_and_detail_section figure {
	padding-bottom: 25px;
} */

.product_image_and_detail_section figure img {
	width: 100%;
}

.product_image_and_detail_section h4 {
	font-size: 1.6rem;
}

.product_image_and_detail_section figure h4 {
	margin-top: 25px;
	padding-bottom: 25px;
	position: relative;
}

.detail_table_section {
	margin-top: 115px;
}

.detail_table_section h4 {
	position: relative;
	padding-bottom: 25px;
	margin-bottom: 35px;
	text-align: center;
}

.detail_table table {
	width: 100%;
	border-collapse: collapse;
}

.clogroup1 {
	width: 140px;
}

.clogroup2 {
	width: calc(100% - 140px);
}

.detail_category_header {
	padding: 15px;
	background: #eee;
	font-size: 1.6rem;
	text-align: center;
}

.detail_header {
	background: #f4f4f4;
}

.detail_table table th,
.detail_table table td {
	border-bottom: 1px solid #eee;
	padding: 12px 18px;
	font-weight: normal;
	text-align: left;
}

.detail_table table:not(:last-child) .tr_end th,
.detail_table table:not(:last-child) .tr_end td {
	border-bottom: none;
}

.product_detail_txt p {
	line-height: 2;
}

.product_detail_txt p:not(:last-of-type) {
	margin-bottom: 25px;
}

.single_product_image1 &gt; div {
	display: grid;
	row-gap: 30px;
}

@media screen and (min-width: 375px) {
	/*ロゴ*/
	.logo {
		font-size: 1.6rem;
	}

	/*お問い合わせバナー余白*/
	.contact_card li a {
		padding-left: 65px;
	}

	/* .f_nav {
		flex-direction: row;
	} */
	/*下層ページ
	---------------------------*/
	.subpage_h2 &gt; span {
		font-size: 5.6rem;
		/* padding-right: 58px; */
	}
	
	/*会社案内 アイキャッチ*/
	.col2_eyecatch .left_box p {
		font-size: 1.8rem;
	}

	/*強み*/
	.strength_ttl h4 {
		font-size: 2.6rem;
	}
	
	.strength01 .strength_ttl h4 {
		width: 280px;
	}
	
	.strength02 .strength_ttl h4 {
		width: 200px;
	}
	
	.strength03 .strength_ttl h4 {
		width: 300px;
	}
	/*ページナビ*/
	.page-numbers {
		width: 28px;
		height: 28px;
		font-size: 1.5rem;
	}

	.prev.page-numbers {
		margin-right: 30px;
	}
	
	.next.page-numbers {
		margin-left: 30px;
	}

	/*
	製造工程・設備紹介
	---------------------*/
	.facility_section ul {
		column-gap: 25px;
		row-gap: 25px;
	}

}

@media screen and (min-width: 600px) {
	/*逆回転スライドショー*/
	/* .slider4 .swiper-wrapper {
		justify-content: flex-end;
	} */

	/*
	製造工程・設備紹介
	---------------------*/
	.facility_section ul {
		grid-template-columns: repeat(3, 1fr);
	}

}

@media screen and (min-width: 631px) {

}


@media screen and (min-width: 751px) {
	body {
		font-size: 1.6rem;
	}

	

	/*トップ NEWS*/
	


}

@media screen and (min-width: 768px) {
	body {
		font-size: 1.6rem;
	}

	.top_main {
		padding: 110px 0 80px;
	}

	.subpage_main.subpage_products_main {
		overflow: visible;
	}
	
	.loop_slider {
		margin-top: 110px;
	}

	.top_section {
		margin-bottom: 185px;
	}

	.top_news.top_section {
		margin-bottom: 150px;
	}
	/*見出し*/
	.h2_wrap {
		margin-bottom: 60px;
	}

	.h2_wrap p {
		/* font-size: clamp(56px , 9.1vw, 110px); */
		font-size: clamp(56px , 5.8vw, 110px);
	}

	.h2_wrap h2 {
		font-size: 1.8rem;
	}

	.text_box,
	.top_products .text_box,
	.top_process .text_box,
	.top_company .text_box {
		margin-bottom: 90px;
	}

	

	.subpage_h2.process_h2 h2 {
		margin-top: 20px;
	}

	/*ボタン*/
	.link_btn a,
	.back_btn a  {
		width: 100%;
		max-width: 300px;
		height: 72px;
	}

	.link_btn a {
		padding: 20px 30px 20px 74px;
	}

	.back_btn a {
		padding: 20px 44px 20px 30px;
	}

	.link_btn a::after,
	.back_btn a::after {
		width: 56px;
		height: 56px;
	}

	.link_btn a::after {
		left: calc(100% - 62px);
	}

	.back_btn a::after {
		right: calc(100% - 62px);
	}

	.link_btn a:hover::after {
		
		left: 6px;
		animation: btnMove .5s linear 1 forwards normal;
	}

	.back_btn a:hover::after {
		
		right: 6px;
		animation: btnMoveRverse .5s linear 1 forwards normal;
	}

	@keyframes btnMove {

		0% {
			background: url(img/link_arrow2.svg) no-repeat center/ contain;
			left: 6px;
		}
		100% {
			background: url(img/link_arrow2.svg) no-repeat center/ contain;
			left: calc(100% - 62px);
		}
	}

	@keyframes btnMoveRverse {
		0% {
			background: url(img/link_arrow2.svg) no-repeat center/ contain;
			right: 6px;
		}
		100% {
			background: url(img/link_arrow2.svg) no-repeat center/ contain;
			right: calc(100% - 62px);
		}
	}

	.btn_txt,
	.btn_hover_txt,
	.back_btn_txt,
	.back_btn_hover_txt {
		font-size: 2rem;
	}

	.btn_hover_txt {
		left: 74px;
	}

	.back_btn_hover_txt {
		right: 74px;
	}
	/* .btn_hover_txt {
		
	} */

	/*ヘッダー*/
	

	/*トップ メインビジュアル*/
	/* .eyecatch1 {
		margin-bottom: 1.875vw;
	} */

	.eyecatch1 img {
		width: 27.08vw;
		
	}

	.eyecatch2 {
		margin-bottom: 2vw;
	}

	.eyecatch2 img {
		width: 43.33vw;
	}

	.eyecatch3 span {
		letter-spacing: .3rem;
	}

	/*Scroll*/
	.scroll {
		bottom: 50px;
		right: 30px;
		row-gap: 20px;
	}

	.scroll_txt {
		font-size: 1.4rem;
	}

	.line {
		height: 110px;
	}
	
	/*トップ 製品情報*/
	.top_col2_container {
		flex-direction: row;
		align-items: center;
	}
	.top_products .top_col2_container {
		max-width: 1760px;
		justify-content: space-between;
	}

	.top_products .left_box {
		padding-left: calc((100% - 1400px) / 2);
		width: 43%;
	}

	.top_products .right_box {
		width: 50%;
		max-width: 800px;
		margin-left: auto;
	}

	.link_btn_pc {
		display: block;
	}

	.link_btn_sp {
		display: none;
	}
	

	/*トップサービス*/
	.top_process .top_col2_container {
		max-width: 1400px;
		margin: 0 auto;
		justify-content: space-between;
	}

	.top_process .text_box {
		max-width: 521px;
	}

	.top_process .left_box,
	.top_process .right_box{
		width: 50%;
	}

	.top_process .right_box {
		width: 48%;
	}

	.top_process .left_box,
	.top_company .left_box {
		padding: 0 20px 0 0;
	}

	.slider3_wrapper {
		width: calc(50vw);
	}

	.slider3_wrapper img {
		width: 100%;
	}

	.top_process .inner,
	.top_company .inner {
		padding-left: 20px;
	}

	/*会社案内*/
	.top_col2_container.reverse {
		flex-direction: row-reverse;
		justify-content: space-between;
		/* column-gap: 2%; */
	}

	.top_company .top_col2_container {
		padding-left: calc((100% - 1400px) / 2);
		justify-content: space-between;
	}

	.top_company .left_box {
		/* width: 42.5%; */
		max-width: 700px;
		padding-right: 4vw;
		width: 50%;
	}

	.top_company .left_box div {
		max-width: 520px;
	}

	.top_company .right_box {
		/* width: 57%; */
		width: 48%;
	}

	/* .slider4 .swiper-wrapper {
		margin-left: 18vw;
	}

	.slider4 .swiper-slide {
		width: 30.72vw;
	} */

	/* .slider4_wrapper {
		width: 80%;
		margin-left: auto;
	} */

	/* .slider4_wrapper {
		width: 50vw;
	} */

	.slider4 img {
		width: 100%;
	}

	/*トップ お知らせ*/

	.top_news .top_col2_container {
		max-width: 1200px;
		margin: 0 auto;
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
	}

	.top_news .left_box {
		width: 32.25%;
	}

	.top_news .right_box {
		width: calc(67.75% - 30px);
	}

	/* .news_wrapper a, */
	.news_wrapper div {
		padding: 30px 0;
	}


	/*トップ お問い合わせバナー*/
	.contact_container .inner {
		max-width: 1200px;
		margin: 0 auto;
	}

	.contact_card {
		flex-direction: row;
		justify-content: center;
		column-gap: 30px;
	}

	.contact_card li {
		width: 48.75%;
		max-width: 585px;
		height: 150px;
	}

	.contact_card li a {
		height: 100%;
		padding-left: min(136px, 7vw);
		border-radius: 30px;
	}

	.contact_card h2 {
		font-size: 1.2rem;/*1.5rem*/
		margin-bottom: 10px;
	}

	.contact_card li:first-child p:first-of-type {
		font-size: 1.8rem;
	}

	.contact_card li:nth-child(2) p {
		font-size: 1.5rem;
	}

	.contact_card li:first-child p:nth-of-type(2) {
		font-size: 1rem;
	}

	.contact_card li:first-child p:first-of-type {
		margin-bottom: 5px;
	}

	.card_tel_icon {
		width: 6vw;
		height: 6vw;
		max-width: 115px;
		max-height: 115px;
	}

	.card_mail_icon {
		width: 6vw;
		height: 4.47916vw;
		max-width: 115px;
		max-height: 86px;
	}


	.card_tel_icon, .card_mail_icon {
		left: 35px;
	}

	

	/* .slider4 .swiper-wrapper {
		width: 50vw;
		justify-content: center;
		margin-left: 65vw;
	} */

	/*トップ 先輩の声*/
	
	



	/*背景画像*/
	

	/*トップ お問い合わせ*/
	

	/*フッター*/
	footer {
		margin-bottom: 0;
		padding-top: 110px;
		/* padding-top:  max(90px, min(10vw, 190px)); */
		padding-bottom: 100px;
	}

	/*フッター*/
	.f_logo.tablet {
		display: block;
	}

	.f_logo.pc {
		display: none;
	}

	.footer_container {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		padding-bottom: 90px;
		margin-bottom: 50px;
	}

	.footer_company_info {
		width: 210px;
	}

	.f_logo,
	footer address {
		margin-bottom: 30px;
	}

	.copy small {
		font-size: 1.6rem;
	}

	/* .business_hour {
		margin-bottom: 4.5rem;
	} */

	.business_hour dl dt {
		word-break: keep-all;
	}

	.f_nav a,
	.f_nav ul li a,
	.modal_open_btn {
		padding: 0;
	}

	.f_nav ul li:not(:last-child) {
		margin-bottom: 20px;
	}

	.f_logo img {
		/* width: 110px; */
		width: 436px;
		max-width: 436px;
	}

	.footer_right {
		max-width: 640px;
		width: 100%;
	}

	.f_nav {
		margin-bottom: 30px;
		display: flex;
		flex-direction: row;
		column-gap: 60px;
	}

	.f_nav ul {
		width: 200px;
	}

	/* .f_nav ul {
		display: flex;
		flex-wrap: wrap;
		flex-grow: 1;
		justify-content: space-between;
		row-gap: 20px;
	} */
/* 
	.f_nav ul:first-child li {
		width: calc(100% / 2);
	}

	.f_nav ul li:first-child {
		order: 1;
	}

	.f_nav ul li:nth-child(2) {
		order: 3;
	}

	.f_nav ul li:nth-child(3) {
		order: 2;
	}

	.f_nav ul li:nth-child(4) {
		order: 4;
	} */


	/* .f_nav ul li:not(:last-child) {
		margin-bottom: 0;
	} */

	

	/*下層ページ*/
	

	/*お問い合わせ
	------------------------------*/
	/* .hero_txt {
		padding-bottom: 3rem;
	} */

	.contact_section {
		margin-bottom: 120px
	}

	.contact_h3 h3 {
		font-size: 40px;
	}

	.contact_h3.tel h3 {
		padding: 30px 0;
	}

	.contact_tel_btn {
		margin-bottom: 120px;
	}

	.contact_h3.mail h3 {
		padding: 25px 0;
	}


	.contact_h3.mail + p {
		text-align: center;
		margin: 60px 0 75px;
	}

	.input_area dl dt {
		margin-bottom: 1rem;
	}

	.input_bg_circle_wrapper {
		position: relative;
	}

	.form_section {
		position: relative;
	}
	
	.form_wrap input[type="text"],
	.form_wrap input[type="tel"],
	.form_wrap input[type="email"],
	.form_wrap textarea {
		padding: 22.25px max(30px, min(47px, 2.5vw));
	}

	/* .form_wrap textarea {
		height: 20rem;
	} */

	.input_area dl:not(:last-of-type) {
		margin-bottom: 50px;
	}

	.input_area dl:last-of-type {
		margin-bottom: 100px;
	}

	.required {
		font-size: 1.4rem;
	}

	.confirm_txt {
		text-align: center;
	}

	.accept {
		margin-top: 55px;
		margin-bottom: 60px;
	}

	.submit_btn {
		margin-bottom: 60px;
	}

	.note {
		max-width: 420px;
		margin: 0 auto;
	}

	/*お知らせ
	------------------------------------*/
	.pnkz {
		margin-bottom: 45px;
	}

	.pnkz ol li {
		font-size: 1.2rem;
	}
	
	.pnkz ol li a:hover {
		color: var(--main-color);
	}
	
	.pnkz ol li:not(:last-child):after {
		margin: 0 16px;
	}
	
	.article_wrapper {
		margin-bottom: 200px;
	}
	
	.article_heading {
		margin-bottom: 60px;
	}
	
	.article_heading h2 {
		font-size: 3.2rem;
		margin-bottom: 20px;
	}
	
	.article_heading p {
		font-size: 1.4rem;
	}
	
	.article_body {
		margin-bottom: 150px;
	}
	
	.article_body p {
		line-height: 2;
		margin-bottom: 30px;
	}
	/* .news_hero_section {
		margin-bottom: 120px;
	} */

	/* .subpage_heading_h2.align_center_pc {
		text-align: center;
	}

	.single_column_wrapper {
		padding: 0 0 max(100px, min(190px, 12.9vw));
	}

	.subpage_section .news_list dl {
		padding: 30px 0;
	} */

	/*お知らせ記事一覧
	---------------------------------*/
	.news_list_section {
		margin-bottom: 200px;
	}

	.news_list_section .news_wrapper {
		margin-bottom: 70px;
	}
	/* .news_article {
		padding: 70px 30px  max(100px, min(190px, 12.9vw));
	}

	.article_heading {
		margin-bottom: 80px;
	}

	.article_heading h2 {
		font-size: 2.4rem;
	}

	.article_main {
		margin-bottom: 70px;
	}

	.article_main p,
	.article_main div {
		margin-bottom: 60px;
	} */

	/*円 背景*/
	.circle1 {
		width: 5.4vw;
		height: 5.4vw;
		top: 9.25%;
		right: 30%;
		transform: translate(2vw, -8.9vw);
	}
	
	.circle2 {
		width: 2.76vw;
		height: 2.76vw;
		left: 13.5%;
		bottom: 32.875%;
		transform: translate(-9vw, -1vw);
	}
	
	.circle3 {
		width: 3.6979vw;
		height: 3.6979vw;
		right: .4%;
		bottom: 31.75%;
		transform: translate(4.1vw, -2vw);
	}
	
	
	.circle4 {
		width: 5.83vw;
		height: 5.83vw;
		top: 0;
		left: 5%;
	}

	/* .slider4_wrapper {
		transform: scale(1.5);
		transform-origin: right center;
	} */

	.slider4 .swiper-slide {
		opacity: .35;
		transition: .3s 2s;
	}
	
	.slider4 .swiper-slide-active {
		opacity: 1;
		transition: .3s 2s;
	}
	
	.circle5 {
		width: 5.83vw;
		height: 5.83vw;
		/* left: 27.4vw; */
		left: 39%;
		bottom: -6.4% ;
		z-index: -1;
	}
	
	.circle6 {
		width: 2.96vw;
		height: 2.96vw;
		/* left: 10.96vw; */
		left: 57%;
		bottom: 0;
		z-index: -1;
	}

	.top_company,
	.top_news {
		position: relative;
	}

	.circle7 {
		display: none;
	}

	.circle7_pc {
		display: block;
		background: rgba(241, 192, 9, .45);
		width: 7.8125vw;
		height: 7.8125vw;
		/* top: 1.14vw; */
		top: -5vw;
		left: 6.25vw;
		z-index: -5;
		transition: .5s 1s;
		transform: translate(-20vw, -5vw);

	}

	.top_news .top_col2_container {
		position: static;
	}

	.circle8,
	.circle9,
	.contact-circle2_sp,
	.contact-circle3_sp,
	.privacy-circle2_sp,
	.news-circle3_sp {
		display: none;
	}
	
	.circle8_pc {
		display: block;
		width: 22.65vw;
		height: 22.65vw;
		background: rgba( 6, 124, 208, .45);
		top: -19vw;
		left: -2.96vw;
		z-index: -1;
		transition: 1s 1s;
		transform: translate(-40vw, 0);
	}
	
	.circle9_pc {
		display: block;
		width: 15.625vw;
		height: 15.625vw;
		background:  rgba(241, 192, 9, .45);
		bottom: -4.6875vw;
		right: 4.6875vw;
		z-index: -2;
		transition: .5s 1s;
		transform: translate(22vw, 0);
	}

	.circle10 {
		top: -5.57vw;
		right: auto;
		left: .625vw;
		transform: translate(-30vw, -3vw);
	}

	.circle10,
	.privacy-circle3,
	.news-circle3_pc,
	.article-circle3 {
		width: 8.9vw;
		height: 8.9vw;
		
	}

	
	.news-circle3_pc {
		display: block;
		top: -252px;
		right: -1.25vw;
		background: rgba(112, 215, 116, .45);
		z-index: -3;
		transition: 1s 1s;
	}

	.privacy-circle3,
	.news-circle3_pc,
	.article-circle3 {
		top: -5.57vw;
		right: -1.25vw;
		transform: translate(30vw, -3vw);
	}


	.contact-circle1 {
		top: 235px;
	}

	.privacy-circle1,
	.news-circle1 {
		top: 120px;
	}

	.article-circle1 {
		top: 1px;
	}

	.contact-circle1,
	.privacy-circle1,
	.news-circle1,
	.article-circle1 {
		width: 22.65vw;
		height: 22.65vw;
		right: -3.07vw;
		transform: translate(26vw, -4vw);
		transition: 1s 1s;
	}
	
	.contact-circle2 {
		/* top: 26.66vw; */
		top: 512px;
		left: 1.92vw;
		transition: 1s 1s;
		transform: translate(-21.545vw, -1.5vw);
		z-index: -1;
	}

	.privacy-circle2_pc {
		top: 504px;
		left: 1.92vw;
		transition: 1s 1s;
		transform: translate(-21.545vw, -1.5vw);
		z-index: -1;
	}

	.news-circle2 {
		bottom: min(190px, 9.89%);
		left: 1.92vw;
		transform: translate(-21.545vw, -1.5vw);
	}

	.article-circle2 {
		bottom: 70px;
		left: 1.92vw;
		transform: translate(-21.545vw, -1.5vw);
	}

	.contact-circle2,
	.privacy-circle2_pc,
	.news-circle2,
	.article-circle2 {
		width: 15.625vw;
		height: 15.625vw;
		background: rgba(241, 192, 9, .45);
	}
	
	.contact-circle3 {
		width: 8.9vw;
		height: 8.9vw;
		background: rgba(112, 215, 116, .45);
		bottom: 40px;
		right: 17.44vw;
		transition: 1s 1s;
		transform: translate(26.34vw, 2vw);
		z-index: -1;
	}

	@keyframes altVertical {
		0% {
			transform: translate(0, 0);
		}

		100% {
			transform: translate(0, 40px);
		}
	}
	
	@keyframes altVertical2 {
		0% {
			transform: translate(0, 0);
		}


		100% {
			transform: translate(0, -45px);
		}
	}

	/*下層ページ
	--------------------------------*/
	/*会社案内*/
	.subpage_main {
		/* margin-top: 80px; */
		padding: 0 0 80px;/*105px 0 80px*/
	}

	.subpage_heading_section,
	.subpage_heading_section2,
	.product_detail_section_wrapper {
		padding-top: 185px;
	}

	.pnkz {
		margin-bottom: 50px;
	}

	.subpage_h2 {
		margin-bottom: 80px;
	}

	.subpage_h2 &gt; span {
		font-size: clamp(80px, 5.7vw, 110px);
		
		padding-top: min(10px, 0.5vw);
	}

	.heading_icon,
	.heading_icon.privacy_heading_icon {
		padding-right: max(120px, min(150px, 7.9vw));
	}

	.heading_icon::after {
		width: max(70px, min(100px, 5.2vw));
		height: max(77px,min(111px, 5.78vw));
		transform: translateY(max(calc(77px + 3.5vw),min(calc(111px + 3.5vw), 6.28vw)));
		
	}


	@keyframes iconSlideUp {
		0% {
			transform: translateY(max(calc(77px + 3.5vw),min(calc(111px + 3.5vw), 6.28vw)));
		}
		100% {
			transform: translateY(0);
		}
	}

	.subpage_h2 h2 {
		font-size: 1.8rem;
	}

	/* .subpabe_main_img {
		aspect-ratio: 1660/ 510;
		margin-left: max(20px, calc((100% - 1400px) / 2));
		margin-bottom: 150px;
	} */


	
	.subpage_section {
		margin-bottom: 200px;
	}

	.subpage_h3 {
		margin-bottom: 90px;
	}

	.strength_section_wrapper .subpage_h3,
	.president_message .subpage_h3 {
		margin-bottom: 140px;
	}

	.subpage_h3 h3 {
		font-size: 3.2rem;
	}

	.subpage_h3 span {
		font-size: 2rem;
	}

	.subpabe_main_img {
		width: 100%;
		height: 510px;
		margin-left: max(20px, calc((100% - 1400px) / 2));
		clip-path: inset(0 0 round 50px 0 0 50px);
	}
	
	/* .subpabe_main_img::before {
		content: '';
		top: 0;
		left: 0;
		position: fixed;
		width: 100%;
		height: 100vh;
		display: block;
		z-index: 100;
	} */
	.company_main {
		background: url(img/company/company_main.jpg) no-repeat center/cover;
		/* background: url(img/company/company_main.jpg) no-repeat center/cover; */
	}
	/* .company_main::before {
		background: url(img/company/company_main.webp) no-repeat left center/cover;
		transform: translate(max(20px, calc((100% - 1400px) / 2)), 100px);
	} */

	.process_main {
		background: url(img/process/process_main.jpg) no-repeat center/ cover;
	}

	/* .process_main::before {
		background: url(img/process/process_main.webp) no-repeat left center/cover;
		transform: translate(max(20px, calc((100% - 1400px) / 2)), 100px);
	} */

	.products_main {
		background: url(img/products/products_main.webp) no-repeat center/ cover;
		/* transform: translate(max(20px, calc((100% - 1400px) / 2)), 100px); */
	}

	/* .products_main::before {
		background: url(img/products/products_main.webp) no-repeat left center/cover;
		transform: translate(max(20px, calc((100% - 1400px) / 2)), 100px);
	} */

	.col2_eyecatch .left_box {
		width: 560px;
	}

	.col2_eyecatch .left_box p {
		/* font-size: 3.2rem; */
		font-size: 2.4rem;
		line-height: 2;
	}

	.col2_eyecatch {
		margin-bottom: 150px;
	}

	.subpage_loop_slider {
		margin-bottom: 150px;
	}

	.strength_section,
	.president_section {
		flex-direction: row;
		column-gap: 50px;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 150px;
	}

	.strength_section.reverse,
	.president_section.reverse {
		flex-direction: row-reverse;
	}

	.strength_section .left_box,
	.president_section .left_box {
		width: calc(50% - 50px);
	}

	.strength_section .right_box,
	.president_section .right_box {
		width: 50%;
	}

	.strength_section::before {
		min-width: 420px;
		width: 41.6vw;
		max-width: 800px;
		height: 41.6vw;
		max-height: 800px;
	}

	.president_section .left_box p:not(:last-of-type) {
		margin-bottom: 40px;
	}

	.president_sign {
		font-size: 2rem;
	}
	
	.company_position {
		margin-right: 20px;
		font-size: 1.6rem;
	}

	/*会社概要*/


	.dl_table {
		max-width: 1200px;
		margin: 0 auto;
	}

	.dl_table &gt; dl {
		flex-direction: row;
		padding: 25px 0;
	}

	.dl_table &gt; dl &gt; dt,
	.dl_table &gt; dl::before {
		width: 27%;
		max-width: 300px;
		padding: 0 30px
	}

	.dl_table &gt; dl &gt; dd {
		padding: 0 30px;
	}

	/*社内方針*/
	.company_policy .subpage_h3 {
		margin-bottom: 54px;
	}

	.policy_bg {
		padding: 86px min(192px, 10vw);
		background-size: 470px, 470px, 470px;
		background-position: left 20px top, center, right 20px bottom;
		max-width: 1200px;
		margin: 0 auto;
	}

	.policy_section h4 {
		padding-left: 47px;
		font-size: 4rem;
		margin-bottom: 50px;
	}

	.policy_section h4::before {
		width: 75px;
		height: 75px;
	}

	.policy_bg .inner_1200w {
		padding: 0;
	}

	.policy_section:not(:last-of-type) {
		margin-bottom: 200px;
	}

	/*プライバシーポリシー*/
	.plivacy_declaration {
		margin-bottom: 80px;
	}

	.privacy_regulation {
		padding: 30px 20px;
		grid-template-columns: 260px auto;
		column-gap: 40px;
	}

	.privacy_regulation h3 {
		font-size: 1.6rem;
	}

	.privacy_section {
		margin-bottom: 200px;
	}

	/*ページナビ*/
	.prev.page-numbers {
		margin-right: 40px;
	}

	.next.page-numbers {
		margin-left: 40px;
	}

	/*
	製造工程・設備紹介
	---------------------*/
	.process_section {
		padding-top: 150px;
	}

	.process_flow li {
		grid-template-columns: 22.857% 37.714% min(400px, 28.6%);
		column-gap: 40px;/*80px*/
		align-items: center;
	}

	.process_flow .flow_left,
	.process_flow .flow_center {
		margin-bottom: 0;
	}

	.process_flow .flow_left,
	.process_flow .flow_center,
	.process_flow .flow_right {
		padding-bottom: 75px;
	}

	.process_flow li:not(:last-child) {
		margin-bottom: 30px;
		padding-bottom: 0;
	}

	.process_flow li:not(:last-child)::after {
		content: none;
	}

	.process_flow .flow_left {
		position: relative;
	}

	.process_flow li:not(:last-child) .flow_left::after {
		content: '';
		display: inline-block;
		width: 28px;/*36*/
		height: 21px;/*27*/
		background: var(--main-color);
		clip-path: polygon(0 0, 100% 0, 50% 100%);
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
	}

	.process_flow .flow_left img {
		width: 100%;
	}

	.process_flow .flow_center h4 {
		text-align: left;
		margin-bottom: 25px;/*55px*/
	}

	.facility_section section {
		margin-bottom: 150px;
	}

	.facility_section h4,
	.products_section h4  {
		font-size: 2.4rem;
		padding-left: 30px;
		padding-bottom: 10px;
		margin-bottom: 50px;
	}

	.facility_section h4::before,
	.products_section h4::before {
		width: 20px;
		height: 15px;
	}

	.facility_section ul figcaption {
		font-size: 1.6rem;
		margin-top: 25px;
	}

	.facility_section ul {
		column-gap: 40px;
		row-gap: 40px;
	}

	.facility_section ul li {
		padding-bottom: 25px;
	}

	.subpage_section.facility_section {
		margin-bottom: 150px;
	}


	.video_area  {
		aspect-ratio: 1920/ 1000;
		/* background: url(img/process/process_video_bg.webp) no-repeat center/ cover; */
		margin-bottom: 200px;
		
	}

	/* .video_area .video_wrap {
		border-radius: 50px;
		width: 62.5%;
	} */

	/* .video_area .video_wrap video {
		
	} */

	/* .video_area img {
		width: 62.5%;
	} */

	.video_txt {
		font-size: clamp( 100px ,9.375vw, 180px);
	}

	/*製品情報ページ*/
	.anchor2 {
		padding-top: 80px;
		margin-top: -80px;
	}
	.products_description_wrapper {
		margin-top: 150px;
		margin-bottom: 200px;
	}
	
	.products_description_wrapper .inner_1400w {
		row-gap: 100px;
	}

	.products_description {
		display: grid;
		grid-template-columns: min(500px, 35.715%) 53.57%;
		justify-content: space-between;
		align-items: center;
	}

	.products_description .right_box {
		grid-row: 1/2;
		grid-column: 2/3;
	}

	.products_description .left_box {
		grid-column: 1/2;
	}

	.product_contents_wrapper {
		/* display: flex; */
		display: grid;
		grid-template-columns: 255px auto;
		column-gap: 50px;
		justify-content: space-between;
	}

	.product_contents_nav {
		/* width: 240px; */
		position: sticky;
		top: 100px;
		height: fit-content;
		/* height: 100%; */
	}

	.product_contents_nav nav::before {
		left: -20px;
		transform: translate(0, -50%);
		background: url(img/products/products_nav_bg.png) no-repeat center/ contain;
		width: 658px;
		height: 800px;
	}

	/* .product_contents_wrapper .product_list {
		width: calc(100% - 290px);
	} */

	.product_contents_nav li a {
		font-size: 2.4rem;
		color: #101112;
		border-bottom-color: transparent;
	}

	.product_contents_nav li a::before {
		display: none;
	}

	.products_section ul li a {
		font-size: 2rem;
	}

	.post_link_arrow {
		width: 50px;
		height: 50px;
	}

	.post_link_arrow::before {
		width: 17px;
		height: 17px;
	}

	.products_section ul {
		column-gap: 30px;
		/* grid-template-columns: repeat(2, 1fr); */
	}

	.link_txt .txt {
		width: calc(100% - 65px);
	}

	/* .product_list {
		row-gap: 150px;
	} */

	.product_list .anchor2:not(:last-of-type) {
		padding-bottom: 150px;
	}


	.product_contents_nav ul li.is-active a,
	.product_contents_nav ul li a:hover {
		color: #0b5abe;
		border-bottom: 2px solid #0b5abe;
		position: relative;
	}

	.product_contents_nav ul li.is-active a {
		padding-left: 27px;
	}


	.product_contents_nav ul li.is-active a::before {
		display: inline-block;
		width: 15px;
		height: 20px;
		position: absolute;
		left: 0;
		top: 3px;
	}

	/*製品詳細ページ*/
	.product_detail_wrapper {
		grid-template-columns: 40% min(600px, 50%);
		justify-content: space-between;
	}
	
	.product_name_section {
		position: sticky;
		top: 80px;
		height: fit-content;
	}

	.product_name_section h3 {
		font-size: 3.2rem;
		margin-bottom: 40px;
	}

	.product_detail_txt p:not(:last-of-type) {
		margin-bottom: 40px;
	}

	.detail_category_header {
		padding: 16px;
	}

	.single_product_image1 &gt; div {
		display: grid;
		row-gap: 60px;
	}

	.product_image_and_detail_section {
		padding-top: 75px;
	}


}

@media screen and (min-width: 913px) {
	
}

@media screen and (min-width: 1024px) {
	.anchor {
		padding-top: 80px;
		margin-top: -80px;
	}

	.anchor2 {
		padding-top: 100px;
		margin-top: -100px;
	}

	

	/*ヘッダー*/
	header {
		height: 80px;
	}

	.header_inner {
		padding: 0 50px 0 47px;
	}

	/* header.top_header.active {
		height: 70px;
		background: #fff;
	} */

	.logo a img {
		width: 250px;
	}

	.gnav_pc {
		display: flex;
		flex-direction: row;
		position: static;
		background: none;
		width: auto;
		height: auto;
		padding: 0;
		column-gap: 30px;
		align-items: center;
	}

	.gnav_pc ul {
		display: flex;
		column-gap: 25px;
	}

	.gnav_pc ul li {
		border: none;
	}

	.gnav_pc ul li a {
		padding: 0;
	}

	.gnav_sp,
	.toggle {
		display: none;
	}

	.gnav_contact {
		display: flex;
		align-self: center;
		/* width: 100px; */
		width: 130px;
		/* padding: 5px 0; */
		padding: 5px 0 3px;
		justify-content: center;
		font-size: 1.4rem;
	}

	/*メイン アイキャッチ*/
	.top_eyecatch {
		transform: translateY(-50%);
	}



	/*お知らせ*/
	.news_wrapper dl {
		display: grid;
		grid-template-columns: 146px auto;
	}

	.news_wrapper dt {
		font-size: 1.4rem;
	}
	

	/*フッター*/
	.f_logo.tablet {
		display: none;
	}

	.f_logo.pc {
		display: block;
	}

	/* footer {
		padding-bottom: 100px;
	} */

	.footer_container {
		display: flex;
		justify-content: space-between;
		column-gap: 50px;
	}

	.footer_company_info {
		width: auto;
	}

	/* .f_logo {
		flex-basis: 110px;
	} */

	.footer_right {
		flex-basis: calc(100% - 160px);
	}

	/* .footer_company_info {
		flex-basis: 330px;
	} */

	/* .f_nav {
		flex-basis: 400px;
	} */

	.insta_icon,
	.copy {
		text-align: right;
	}

	/* .insta_icon {
		margin-bottom: 100px;
	}
 */
	.footer_inner::after {
		left: 30px;
		bottom: -123px;
		transform: translateX(0);
		width: 15vw;
		height: 24vw;
		z-index: -1;
	}

	.f_tel {
		max-width: 364px;
	}

	.f_tel_inner {
		grid-template-columns: repeat(2, 1fr);
		column-gap: 50px;
	}

	/*ページトップ*/
	.pageTop {
		bottom: 200px;
		right: 11%;
		transform: translateX(0);
		left: auto;
		display: inline-block;
		
	}

	.pageTop img {
		width: 80px;
	}

	/*ページトップ*/
	/* .pageTop {
		bottom: 2px;
		right: 2px;
		left: auto;

	} */

	/* .pageTop img {
		width: 49px;
	} */
	

	/*お問い合わせ
	------------------------------*/
	

	/* .input_area dl dt {
		margin-bottom: .8rem;
	} */

	/* .form_wrap input[type="text"],
	.form_wrap input[type="tel"],
	.form_wrap input[type="email"],
	.form_wrap textarea {
		padding: 20px 30px;
	} */

	/* .form_wrap textarea {
		height: 20rem;
	} */

	/* .input_area dl:not(:last-of-type) {
		margin-bottom: 35px;
	} */

	/* .input_area dl:last-of-type {
		margin-bottom: 45px;
	} */

	/* .required {
		font-size: 1.2rem;
	} */

	/* .accept {
		margin-bottom: 45px;
	} */

	.submit_btn {
		margin-bottom: 30px;
	}

	/*下層ページ
	-----------------------------*/
	.col2_eyecatch {
		flex-direction: row;
		justify-content: space-between;
	}
	
	.col2_eyecatch .right_box {
		width: 48%;
	}

	.right_box.fade_in_up.active {
		animation: fadeInup 1.5s .5s cubic-bezier(0.33, 1, 0.68, 1)  normal 1 forwards;
	}

	/*
	製造工程・設備紹介
	---------------------*/
	.process_flow li {
		column-gap: 80px;
	}


	.process_flow .flow_left {
		position: relative;
	}

	.process_flow li:not(:last-child) .flow_left::after {
		width: 36px;
		height: 27px;
	}

	.process_flow .flow_center h4 {
		text-align: left;
		margin-bottom: 55px;
	}

	.facility_section ul {
		grid-template-columns: repeat(4, 1fr);
		column-gap: 50px;
		row-gap: 50px;
	}

	.products_section ul {
		column-gap: 40px;
		grid-template-columns: repeat(2, 1fr);
	}

	/*製品情報*/
	.product_contents_nav {
		top: 130px;
	}

	.product_name_section {
		/* top: 100px; */
		top: 185px;
	}


}

@media screen and (min-width: 1025px) {
	/*強み*/
	.top_business.top_section {
		padding-bottom: 180px;
	}

	.top_contents.top_section {
		padding-top: 180px;
	}

	/*下層ページ
	-----------------------------*/
	.strength_ttl {
		margin-bottom: 45px;
	}

	.strength_ttl span {
		font-size: 2.4rem;
		margin-bottom: 45px;
	}

	.strength_ttl span::before {
		width: 45px;
		height: 45px;
	}

	.strength01 .strength_ttl h4 {
		font-size: 40px;
		width: 420px;
	}

	.strength02 .strength_ttl h4 {
		font-size: 40px;
		width: 300px;
	}

	.strength03 .strength_ttl h4 {
		font-size: 40px;
		width: 450px;
	}
	/*
	製造工程・設備紹介
	---------------------*/
	.process_flow .flow_center h4 {
		font-size: 40px;
	}
}

@media screen and (min-width: 1280px) {
	/*ロゴ*/
	.logo {
		font-size: 2.4rem;
	}

	.logo span {
		font-size: 1.6rem;
	}

	.logo a img {
		width: 436px;
	}

	/*ナビゲーション*/
	.gnav_pc,
	.gnav_pc ul {
		column-gap: 45px;
	}

	/*会社案内*/
	.top_company .left_box {
		width: 42.5%;
	}

	.top_company .right_box {
		/* width: 55%; */
		width: 51.0813%;
	}

	/*トップ お問い合わせバナー*/
	.contact_card h2 {
		font-size: 1.5rem;/*1.5rem*/
	}

	.contact_card li {
		height: 200px;
	}

	.contact_card li:first-child p:first-of-type {
		font-size: 3rem;
	}

	.contact_card li:nth-child(2) p {
		font-size: 2.5rem;
	}

	.contact_card li:nth-child(2) a::after {
		width: 56px;
		height: 56px;
		right: 25px;
	}

	.contact_card li:nth-child(2) a:hover::after {
		right: calc(100% - 81px);
		background: url(img/link_arrow1.svg);
		z-index: 10;
	}

	@keyframes moveAnime2 {
		0% {
			background: url(img/link_arrow1.svg) no-repeat center/ contain;
			right: calc(100% - 81px);
		}
		100% {
			background: url(img/link_arrow1.svg) no-repeat center/ contain;
			right: 25px;
		}
	}

	/* .contact_card li a:hover .card_tel_icon, */
	/* .contact_card li a:hover .card_mail_icon {
		left: 91px;
	} */

	.strength_section .left_box,
	.president_section .left_box {
		width: 36%;
	}

	.col2_eyecatch .left_box p {
		font-size: 3.2rem;
	}
	
	/*製品紹介*/
	.products_section ul {
		column-gap: 70px;
	}

	/*製品詳細ページ*/
	.product_detail_wrapper {
		grid-template-columns: 42.857% 600px;
	}
}

@media screen and (min-width: 1281px) {
	/* .logo {
		width: 200px;
		height: 200px;
	}

	.logo img {
		width: 120px;
	} */
}



@media screen and (min-width: 1410px) {
	footer {
		padding-bottom: 100px;
	}

	
}

@media screen and (min-width: 1441px) {
	.product_contents_nav nav::before {
		left: calc(((100vw - 1400px) / 2) * -1);
	}



	
}</pre></body></html>