html {
			background: #FFF;
			color: #000;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
			margin: 0;
			padding: 0;
}

body {
			-webkit-text-size-adjust: 100%;
}

article, aside, details, figcaption, figur.sub_contents_wrappere, footer, header, hgroup, menu, nav, section {
			display: block;
}

audio, canvas, progress, video {
			display: inline-block;
			vertical-align: baseline;
}

svg:not(:root) {
			overflow: hidden;
}

table {
			border-collapse: collapse;
			border-spacing: 0;
}

fieldset, img {
			height: auto;
			border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
			font-style: normal;
			font-weight: normal;
}

li {
			list-style: none;
}

caption, th {
			text-align: left;
}

h1, h2, h3, h4, h5, h6 {
			font-size: 100%;
			font-weight: normal;
}


q:before, q:after {
			content: "";
}

abbr, acronym {
			border: 0;
			font-variant: normal;
}

sup {
			vertical-align: super;
}

sub {
			vertical-align: sub;
}

input, textarea, select {
			font-family: inherit;
			font-size: inherit;
			font-weight: inherit;
}

input, textarea, select {
			*font-size: 100%;
}

input, select {
			vertical-align: middle;
}

legend {
			color: #000;
}

*, *:before, *:after {
			-webkit-box-sizing: border-box;
			-o-box-sizing: border-box;
			-ms-box-sizing: border-box;
			box-sizing: border-box;
}

/* ACCORDER Inc. */
/* Base Style
----------------------- */


*, body {
			
font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
			letter-spacing: 0.5px;
			line-height: 1.7;
			font-size: 1rem;
	font-weight: 400;
}




@media screen and (max-width: 650px) {
*, body {line-height: 1.5;
  font-weight: 500;
}
}
*,
*:before,
*:after {
			-webkit-box-sizing: border-box;
			        box-sizing: border-box;
}

body {
			position: relative;
			z-index: -2;
}

img {
			display: block;
			width: 100%;
}

figure {
			-webkit-margin-start: 0;
			        margin-inline-start: 0;
			-webkit-margin-end: 0;
			        margin-inline-end: 0;
}

a {
			color: #333333;
			text-decoration: none;
}

a._hover {
			text-decoration: none;
}

html, body {
			height: 100%;
}

body {
			background: #fff;
}

@media (hover: hover) {
			a[href^="tel:"] {
						pointer-events: none;
			}
}
button {
			background-color: transparent;
			border: none;
			cursor: pointer;
			outline: none;
			padding: 0;
			margin: 0;
			-webkit-appearance: none;
			   -moz-appearance: none;
			        appearance: none;
}

/* wrapper  ----------------------- */
/* font  ----------------------- */
.mont {
			
}

/*共通  ----------------------- */
.sp {
			display: none;
}

@media screen and (max-width: 650px) {
			.sp {
						display: block;
			}
}
.pc {
			display: block;
}

@media screen and (max-width: 650px) {
.pc {
						display: none;
			}
}
.all_new_line {
			display: inline-block;
}


._inner {
			padding: 0 20px;　
}

._recruit::after {
			content: "";
			background-repeat: no-repeat;
			background-size: contain;
			width: 0.75rem;
			height: 0.75rem;
			display: inline-block;
			margin-left: 0.5rem;
}


._link_button {
			position: relative;
			display: block;
			padding: clamp(1rem, 0.923rem + 0.327vw, 1.25rem) clamp(1.5rem, 1.347rem + 0.653vw, 2rem);
			 
			//**border: 2px solid ;
		border-radius: 9999px;**//
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
	
}
._blue{background-image: linear-gradient(90deg, rgba(65, 164, 253, 1), rgba(14, 244, 255, 1));
	}

._black{background-image: linear-gradient(90deg, rgba(65, 164, 253, 1), rgba(14, 244, 255, 1));
	}
._white{color:white; font-weight: bold;}

._link_button span {
			isolation: isolate;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			gap: 1rem;
			font-size: clamp(0.938rem, 0.918rem + 0.082vw, 1rem);
			font-weight: 700;
			color: #fff;
}
._link_button span::after {
			content: "";
			background-image: url(../img/all_arrow_white.svg);
			background-repeat: no-repeat;
			background-size: contain;
			display: inline-block;
			width: 0.8125rem;
			height: 0.9375rem;
}
._link_button::before, ._link_button::after {
			content: "";
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			//**border-radius: 9999px;**//
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
._link_button::before {
			//**border: 2px solid linear-gradient(94deg, rgba(105, 105, 105, 1), rgba(32, 32, 32, 1));**//
			background:  rgba(134, 134, 134, 1);
			 background-image: linear-gradient(90deg, rgba(0, 168, 176, 1), rgba(53, 147, 232, 1));
	
}
._link_button._hover {
			//**border: 2px solid #fff;**//
}
._link_button._hover span {
			color: #fff;
}
._link_button._hover span::after {
			background-image: url(../img/all_arrow_blue.svg);
}
._link_button._hover::before {
			opacity: 0;
}
._link_button._header {
			padding: 0.875rem 1.75rem;
}
._link_button._header span::after {
			content: none;
}
._link_button._header span::before {
			background:  rgba(134, 134, 134, 1);
}
._link_button._small {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-pack: center;
			    -ms-flex-pack: center;
			        justify-content: center;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			max-width: 60%;
			padding: 1rem 1.75rem;
}
._link_button._small span::after {
			width: 0.5625rem;
			height: 0.625rem;
			-webkit-transition: none;
			transition: none;
}

@media screen and (max-width: 768px) {
 ._link_button._small {
width: 90%;
	
  }
	
}


._link_button._white {
			background-color: #333;
}
._link_button._white::before {
			opacity: 0;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
._link_button._white::after {
			content: "";
}
._link_button._white._hover {
}
._link_button._white._hover::before {
			opacity: 1;
}
._link_button._white._hover::after {
			border: none;
}
._link_button._white._hover span::after {
			background-image: url(../img/all_arrow_white.svg);
}

.section {
			margin-top: clamp(5rem, 3.087rem + 8.163vw, 11.25rem);
}

.section2 {
			margin-top: 2rem;
}

.section_title_wrapper {
			width: 80%;
			margin: 0 auto;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
			-webkit-box-align: end;
			    -ms-flex-align: end;
			        align-items: flex-end;
			gap: 10%;
}
@media screen and (max-width: 1200px) {
	
	
			.section_title_wrapper {
						width: 90%;
			}
}
@media screen and (max-width: 650px) {
			.section_title_wrapper {
						width: 100%;
			}
}
.section_title_wrapper ._link {
			margin-top: 2.5rem;

}

.section_title {
			font-size: clamp(1.8rem, 1.8rem + 1vw, 3rem);
  font-weight: 600;
	line-height: 1.2;
			color: #222;
	letter-spacing: 0px;
}

@media screen and (max-width: 650px) {
	.section_title {
		font-size: 2rem;}
}

.section_title._small {
			font-size: 2.5rem;
}
.section_title._center {
			text-align: center;
}
.section_title._center .deco {
			-webkit-box-pack: center;
			    -ms-flex-pack: center;
			        justify-content: center;
}
.section_title._privacy {
			font-size: 2.5rem;
}
.section_title._privacy .deco {
			margin-top: 0.75rem;
			font-size: 0.875rem;
}
.section_title._no_deco .deco {
			font-size: 1.125rem;
}
.section_title._no_deco .deco::before {
			content: none;
}

.deco {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			margin-top: 1.2rem;
			font-size: clamp(1.1rem, 0.923rem + 0.327vw, 1.25rem);
			color: #2578b8;
	line-height: 1.5;
	font-weight: bold;
}
@media screen and (max-width: 650px) {
	.deco { letter-spacing: 0px;}	
}

.deco-blue{  margin-top: 1.2rem;
  font-size: clamp(1.1rem, 0.923rem + 0.327vw, 1.25rem);
  color: #2578b8;
  line-height: 1.5;
  font-weight: bold;

  white-space: normal !important; /* ← 改行を許可 */
  word-break: break-word;         /* ← 長いときも折り返す */
}

.section_lead {
			margin-top: clamp(2.5rem, 2.347rem + 0.653vw, 3rem);
			line-height: 2;
}

.sub_title ._ja {
			font-size: clamp(1.125rem, 1.087rem + 0.163vw, 1.25rem);
			font-weight: 700;
			line-height: 1.6;
}
.sub_title ._en {
			margin-top: clamp(0.5rem, 0.347rem + 0.653vw, 1rem);
			
			font-size: 0.875rem;
			font-weight: 700;
			color: #2578b8;
}
.sub_title._vertical {
			position: relative;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: start;
			    -ms-flex-align: start;
			        align-items: flex-start;
			gap: 0.625rem;
}
@media screen and (max-width: 650px) {
	.section_lead {
			margin-top: 1.2rem;
}
			.sub_title._vertical {
						-webkit-box-orient: vertical;
						-webkit-box-direction: reverse;
						    -ms-flex-direction: column-reverse;
						        flex-direction: column-reverse;
			}
}
.sub_title._vertical ._ja,
.sub_title._vertical ._en {
			-webkit-writing-mode: vertical-rl;
			    -ms-writing-mode: tb-rl;
			        writing-mode: vertical-rl;
}
@media screen and (max-width: 650px) {
			.sub_title._vertical ._ja,
			.sub_title._vertical ._en {
						-webkit-writing-mode: inherit;
						    -ms-writing-mode: inherit;
						        writing-mode: inherit;
			}
}
.sub_title._vertical ._en {
			margin-top: 0;
			text-orientation: mixed;
}

.all_text {
			font-size: 1rem;
			line-height: 1.7;
}

@media screen and (max-width: 650px) {
.all_text {
			font-size: 1rem;
			line-height: 1.5;
}	
	
}

.all_text._bold {
			font-weight: 700;
}

.all_tolist_icon {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			font-size: clamp(0.938rem, 0.918rem + 0.082vw, 1rem);
			font-weight: 700;
			line-height: 1.2;
}
.all_tolist_icon::after {
			content: "";
			background-image: url(../img/all_tolist_icon.svg);
			background-repeat: no-repeat;
			background-size: contain;
			display: inline-block;
			width: clamp(1.563rem, 1.505rem + 0.245vw, 1.75rem);
			height: clamp(1.563rem, 1.505rem + 0.245vw, 1.75rem);
			margin-left: 0.5rem;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.all_tolist_icon._hover::after {
			background-image: url(../img/all_tolist_icon_blue.svg);
			-webkit-transform: scale(1.2);
			        transform: scale(1.2);
}

/* ----------------------- */
/* ----------------------- */


/* ----------------------- */
/* ----------------------- */
.all_slide_controls {
			width: 80%;
			margin: clamp(2rem, 1.847rem + 0.653vw, 2.5rem) auto 0;
			position: relative;
			text-align: right;
}
@media screen and (max-width: 650px) {
			.all_slide_controls {
						text-align: center;
			}
}
.all_slide_controls ._bar {
			background: rgba(34, 34, 34, 0.1);
			width: calc(100% - 200px);
			height: 2px;
			position: absolute;
			left: 0;
			top: 50%;
			-webkit-transform: translateY(-50%);
			        transform: translateY(-50%);
}
@media screen and (max-width: 650px) {
			.all_slide_controls ._bar {
						display: none;
			}
}
.all_slide_controls .swiper-scrollbar-drag {
			background: #C0C5CE;
}
.all_slide_controls .button {
			position: relative;
			min-width: clamp(2.5rem, 2.27rem + 0.98vw, 3.25rem);
			min-height: clamp(2.5rem, 2.27rem + 0.98vw, 3.25rem);
			background: #fff;
			border: 1px solid #222;
			border-radius: 50%;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.all_slide_controls .button svg {
			position: absolute;
			left: 50%;
			top: 50%;
			-webkit-transform: translate(-50%, -50%);
			        transform: translate(-50%, -50%);
			width: clamp(0.813rem, 0.736rem + 0.327vw, 1.063rem);
			height: clamp(0.875rem, 0.779rem + 0.408vw, 1.188rem);
			fill: #222;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.all_slide_controls .button path {
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.all_slide_controls .button:hover {
			border-color: #2578b8;
}
.all_slide_controls .button:hover svg {
			fill: #2578b8;
}
.all_slide_controls ._prev svg {
			-webkit-transform: translate(-50%, -50%) rotate(180deg);
			        transform: translate(-50%, -50%) rotate(180deg);
}
.all_slide_controls ._next {
			margin-left: 0.5rem;
}
@media screen and (max-width: 650px) {
			.all_slide_controls ._next {
						margin-left: 0;
			}
}
.all_slide_controls .swiper-button-disabled {
			opacity: 0.2;
}

/* ----------------------- */
/* ----------------------- */
.current {
			font-weight: 700;
			color: #2578b8;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.current::before {
			content: "";
			background-image: url(../img/all_category_icon.svg);
			background-repeat: no-repeat;
			background-size: contain;
			display: inline-block;
			width: 0.75rem;
			height: 0.1875rem;
			margin-right: 0.5rem;
}


@media screen and (max-width: 1200px) {
			.sub_page .page_title_wrapper {
						width: 90%;
			}
}
@media screen and (max-width: 650px) {
			.sub_page .page_title_wrapper {
						width: 100%;
			}
}
.sub_page .all_breadcrumbList {
			margin-top: 1.5rem;
}
.sub_page ._section {
			margin-top: clamp(5.375rem, 3.997rem + 5.878vw, 9.875rem);
}
.sub_page ._section_narrow {
			margin-top: clamp(3.5rem, 2.046rem + 6.204vw, 8.25rem);
}

.no_sub_hero_wrapper {
			padding-top: clamp(4.5rem, 2.98rem + 7.02vw, 10rem);
			overflow: hidden;
}

.sub_hero {
			position: relative;
			margin-top: clamp(1.875rem, 1.148rem + 3.102vw, 4.25rem);
}
@media screen and (max-width: 650px) {
			.sub_hero {
						aspect-ratio: 375/284;
			}
			.sub_hero img {
						height: 100%;
						-o-object-fit: cover;
						   object-fit: cover;
			}
			.sub_hero._company img {
						-o-object-position: right 16% bottom 0;
						   object-position: right 16% bottom 0;
			}
}
.sub_hero::before {
			content: "";
			position: absolute;
			top: -45%;
			right: -10%;
			background-repeat: no-repeat;
			background-size: 100% auto;
			width: 100%;
			height: 45%;
			height: 45%;
			pointer-events: none;
}
@media screen and (max-width: 768px) {
			.sub_hero::before {
						top: -50%;
						right: -25%;
						width: 150%;
						height: 50%;
			}
}

.sub_contents_wrapper {
			width: 80%;
			margin: clamp(4.375rem, 1.735rem + 11.265vw, 6rem) auto 0;
			padding: 0 1.25rem;
}
@media screen and (max-width: 1200px) {
			.sub_contents_wrapper {
						width: 90%;
			}
}
@media screen and (max-width: 650px) {
			.sub_contents_wrapper {
						width: 100%;
			}
}

@media screen and (min-width: 651px) {
  .sub_hero {
    width: 100%;           /* ← これを追加 */
    aspect-ratio: 16/4;    /* 横16:縦4 = 4:1 */
    overflow: hidden;
  }
  .sub_hero img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.wrapper {
			width: 80%;
			margin: clamp(4.375rem, 1.735rem + 11.265vw, 6rem) auto 0;
			padding: 0 1.25rem;
}
@media screen and (max-width: 1200px) {
			.wrapper {
						width: 90%;
			}
}
@media screen and (max-width: 650px) {
			.wrapper {
						width: 100%;
			}
}

/* ----------------------- */
/* ----------------------- */
.all_breadcrumbList * {
			font-size: clamp(0.75rem, 0.712rem + 0.163vw, 0.875rem);
}
.all_breadcrumbList ol {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
			-webkit-box-pack: end;
			    -ms-flex-pack: end;
			        justify-content: flex-end;
			row-gap: 0.5rem;
}
.all_breadcrumbList ol li {
			position: relative;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
}
.all_breadcrumbList ol li:not(:last-of-type) {
			margin-right: 0.5rem;
}
.all_breadcrumbList ol li:not(:last-of-type)::after {
			content: "";
			background-image: url(../img/all_category_icon.svg);
			background-repeat: no-repeat;
			background-size: contain;
			display: inline-block;
			width: 0.5rem;
			height: 0.125rem;
			margin-left: 0.5rem;
}
.all_breadcrumbList ol li:last-of-type span {
			color: rgba(51, 51, 51, 0.2);
}
.all_breadcrumbList ol li span {
			line-height: 1.5;
}

/* ----------------------- */
/* ----------------------- */
@-webkit-keyframes flowBg {
			0% {
						background-position: left 0 center;
			}
			100% {
						background-position: left -100000px center;
			}
}
@keyframes flowBg {
			0% {
						background-position: left 0 center;
			}
			100% {
						background-position: left -100000px center;
			}
}
@-webkit-keyframes flowBgReverse {
			0% {
						background-position: right 0 center;
			}
			100% {
						background-position: right -100000px center;
			}
}
@keyframes flowBgReverse {
			0% {
						background-position: right 0 center;
			}
			100% {
						background-position: right -100000px center;
			}
}
/* ----------------------- */
/* ----------------------- */
.anchor_list {
			margin-top: clamp(2.5rem, 2.347rem + 0.653vw, 3rem);
}
@media screen and (max-width: 650px) {
			.anchor_list {
						width: 100vw;
						margin-left: calc(50% - 50vw);
			}
}
.anchor_list ul {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
}
.anchor_list ul li {
			width: 25%;
			border: 1px solid #ddd;
}
.anchor_list ul li a {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			gap: 0.25rem;
			padding: 1rem clamp(1rem, 0.694rem + 1.306vw, 2rem);
			font-size: clamp(0.875rem, 0.837rem + 0.163vw, 1rem);
			letter-spacing: 0;
}
@media screen and (max-width: 650px) {
			.anchor_list ul li a {
						padding-right: 0.625rem;
			}
}
.anchor_list ul li a::after {
			content: "";
			background-image: url(../img/product_category_arrow.svg);
			background-size: contain;
			background-repeat: no-repeat;
			display: inline-block;
			width: 12px;
			height: 11px;
}
.anchor_list ul li:nth-of-type(5), .anchor_list ul li:nth-of-type(6), .anchor_list ul li:nth-of-type(7) {
			border-top: none;
}
@media (max-width: 1120px) {
			.anchor_list ul li {
						width: 33%;
			}
			.anchor_list ul li:nth-of-type(4) {
						border-top: none;
			}
}
@media (max-width: 840px) {
			.anchor_list ul li {
						width: 50%;
			}
			.anchor_list ul li:nth-of-type(3) {
						border-top: none;
			}
}

.header {
			position: fixed;
	top:0;
			left: 0;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			width: 100%;
			height: 5.25rem;
			padding: 0 3%;
			background-color: #fff;
			z-index: 10;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
			-webkit-box-shadow: 0px 3px 12px rgba(34, 34, 34, 0.12);
			        box-shadow: 0px 3px 12px rgba(34, 34, 34, 0.12);
}

@media screen and (min-width:768px) {
	.header{ top:30px;}
	
}

@media (max-width: 1150px) {
			.header {
						height: 4.5rem;
						-webkit-box-shadow: none;
						        box-shadow: none;
			}
}
@media screen and (max-width: 650px) {
			.header {height: 3rem;
						padding: 0 1.25rem;
			}
}
@media (max-width: 1150px) {
			.header .header_logo {
						max-width: 9rem;
			}
}
@media (max-width: 1150px) {
			.header .gnav {
						position: fixed;
						top: 2.5rem;
						left: 0;
						width: 100%;
						background-color: #fff;
						opacity: 0;
						visibility: hidden;
						pointer-events: none;
						-webkit-transition: all 0.3s ease;
						transition: all 0.3s ease;
						-webkit-box-shadow: 0px 10px 10px rgba(34, 34, 34, 0.05);
						        box-shadow: 0px 10px 10px rgba(34, 34, 34, 0.05);
			}
			.header .gnav.active {
						opacity: 1;
						visibility: visible;
						pointer-events: all;
			}
}
@media screen and (max-width: 650px) {
			.header .gnav {top: 0;
						padding-bottom: 3.75rem;
						height: 100%;
						overflow-y: auto;
						-ms-overflow-style: none;
						scrollbar-width: none;
			}
			.header .gnav::-webkit-scrollbar {
						display: none;
			}
}
.header .gnav ul {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			gap: 1.25rem;
}
@media (max-width: 1150px) {
			.header .gnav ul {
						display: block;
						padding: 1.25rem 0 3rem;
			}
}
@media (max-width: 1150px) {
			.header .gnav ul li {
						padding: 1.125rem 1.125rem 1.125rem 2.875rem;
			}
			.header .gnav ul li:not(:first-of-type) {
						border-top: 1px solid #F5F7FB;
			}
}
.header .gnav ul li:not(._contact) a {
			position: relative;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
}
@media (max-width: 1150px) {
			.header .gnav ul li:not(._contact) a {
						display: block;
			}
}
.header .gnav ul li:not(._contact) a._hover::before {
			content: "";
			position: absolute;
			bottom: -0.5rem; /* 下線の位置を調整 */
			left: 0;
			width: 100%;
			height: 1px;
			background-color: #333; /* 下線の色 */
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.header .gnav ul li a {
			font-size: 0.875rem;
			font-weight: 700;
			-webkit-transition: all 0.15s ease;
			transition: all 0.15s ease;
}
@media (max-width: 1150px) {
			.header .gnav ul li a {
						font-size: 0.9375rem;
			}
}
@media (max-width: 1150px) {
			.header .gnav ul li a._recruit {
						display: block;
			}
}
.header .gnav ul li a::before {
			content: "";
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.header .gnav ul li ._sp {
			display: none;
}
@media (max-width: 1150px) {
			.header .gnav ul li ._sp {
						display: block;
						margin-top: 0.375rem;
						
						font-size: 0.625rem;
						font-weight: 600;
						color: #2578b8;
			}
}
.header .gnav ul li._contact {
			margin-left: 2.625rem;
}
.header .gnav ul li._contact span {
			font-size: 0.875rem;
}
@media (max-width: 1150px) {
			.header .gnav ul li._contact ._link_button {
						padding: 0;
						background: none;
						border-radius: inherit;
			}
			.header .gnav ul li._contact ._link_button span {
						font-size: 0.9375rem;
						color: #222;
			}
			.header .gnav ul li._contact ._link_button::before {
						content: none;
			}
			.header .gnav ul li._contact ._link_button ._sp {
						font-size: 0.625rem;
						color: #2578b8;
			}
}
@media (max-width: 1150px) {
			.header .gnav ul li._contact {
						margin-left: 0;
			}
}

#hamburger {
			display: none;
			position: relative;
			top: 0;
			right: 0;
			width: 2.625rem;
			height: 2.625rem;
			z-index: 100;
}
@media (max-width: 1150px) {
			#hamburger {
						display: block;
			}
}
#hamburger::before, #hamburger::after {
			content: "";
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
			margin: auto;
			width: 100%;
			height: 1.5px;
			background: #2578b8;
			border-radius: 0.625rem;
			-webkit-transition: all 0.2s ease;
			transition: all 0.2s ease;
}
#hamburger::before {
			-webkit-transform: translateY(0);
			        transform: translateY(0);
			-webkit-box-shadow: 0 6px 0 #2578b8;
			        box-shadow: 0 6px 0 #2578b8;
}
#hamburger::after {
			-webkit-transform: translateY(-6px);
			        transform: translateY(-6px);
}
#hamburger.active::before {
			-webkit-transform: translateY(0) rotate(30deg);
			        transform: translateY(0) rotate(30deg);
			-webkit-box-shadow: 0 0 0 transparent;
			        box-shadow: 0 0 0 transparent;
}
#hamburger.active::after {
			-webkit-transform: translateY(0) rotate(-30deg);
			        transform: translateY(0) rotate(-30deg);
}

.footer {
			margin-top: clamp(1rem, 2.929rem + 4.571vw, 7.5rem);
			padding-bottom: 5rem;
}
.footer ._inner {
			width: 85%;
			margin: 0 auto;
}
@media screen and (max-width: 1000px) {
			.footer ._inner {
						width: 100%;
			}
}
.footer ._upper {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
			margin-bottom: clamp(2rem, 1.005rem + 4.245vw, 5.25rem);
}
@media screen and (max-width: 768px) {
			.footer ._upper {
						display: block;
			}
}
@media screen and (max-width: 768px) {
			.footer ._logo_wrapper {
						max-width: 11.25rem;
			}
}
.footer ._logo_wrapper ._logo:not(:first-child) {
			margin-top: clamp(1.875rem, 1.607rem + 1.143vw, 2.75rem);
}
@media screen and (max-width: 768px) {
			.footer .footer_nav {
						margin-top: 2.5rem;
			}
}
.footer .footer_nav ul {
			display: -ms-grid;
			display: grid;
			    grid-template-areas: "item1 item4 item7" "item2 item5 item8" "item3 item6 .";
			grid-auto-columns: minmax(-webkit-min-content, -webkit-max-content);
			grid-auto-columns: minmax(min-content, max-content); /* 各列の幅を内容に基づいて調整 */
			row-gap: 1.75rem;
			-webkit-column-gap: clamp(2.5rem, 2.041rem + 1.959vw, 4rem);
			   -moz-column-gap: clamp(2.5rem, 2.041rem + 1.959vw, 4rem);
			        column-gap: clamp(2.5rem, 2.041rem + 1.959vw, 4rem);
}
@media screen and (max-width: 650px) {
			.footer .footer_nav ul {
						    grid-template-areas: "item1 item5" "item2 item6" "item3 item7" "item4 item8";
			}
}
.footer .footer_nav ul li:nth-child(1) {
			-ms-grid-row: 1;
			-ms-grid-column: 1;
			grid-area: item1;
}
.footer .footer_nav ul li:nth-child(2) {
			-ms-grid-row: 3;
			-ms-grid-column: 1;
			grid-area: item2;
}
.footer .footer_nav ul li:nth-child(3) {
			-ms-grid-row: 5;
			-ms-grid-column: 1;
			grid-area: item3;
}
.footer .footer_nav ul li:nth-child(4) {
			-ms-grid-row: 1;
			-ms-grid-column: 3;
			grid-area: item4;
}
.footer .footer_nav ul li:nth-child(5) {
			-ms-grid-row: 3;
			-ms-grid-column: 3;
			grid-area: item5;
}
.footer .footer_nav ul li:nth-child(6) {
			-ms-grid-row: 5;
			-ms-grid-column: 3;
			grid-area: item6;
}
.footer .footer_nav ul li:nth-child(7) {
			-ms-grid-row: 1;
			-ms-grid-column: 5;
			grid-area: item7;
}
.footer .footer_nav ul li:nth-child(8) {
			-ms-grid-row: 3;
			-ms-grid-column: 5;
			grid-area: item8;
}
@media screen and (max-width: 650px){
			.footer .footer_nav ul li:nth-child(1) {
						-ms-grid-row: 1;
						-ms-grid-column: 1;
			}
			.footer .footer_nav ul li:nth-child(2) {
						-ms-grid-row: 2;
						-ms-grid-column: 1;
			}
			.footer .footer_nav ul li:nth-child(3) {
						-ms-grid-row: 3;
						-ms-grid-column: 1;
			}
			.footer .footer_nav ul li:nth-child(4) {
						-ms-grid-row: 4;
						-ms-grid-column: 1;
			}
			.footer .footer_nav ul li:nth-child(5) {
						-ms-grid-row: 1;
						-ms-grid-column: 2;
			}
			.footer .footer_nav ul li:nth-child(6) {
						-ms-grid-row: 2;
						-ms-grid-column: 2;
			}
			.footer .footer_nav ul li:nth-child(7) {
						-ms-grid-row: 3;
						-ms-grid-column: 2;
			}
			.footer .footer_nav ul li:nth-child(8) {
						-ms-grid-row: 4;
						-ms-grid-column: 2;
			}
}
.footer .footer_nav ul li a {
			position: relative;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			font-size: clamp(0.75rem, 0.673rem + 0.327vw, 1rem);
			font-weight: 700;
}
.footer .footer_nav ul li a::before {
			content: "";
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.footer .footer_nav ul li a._hover::before {
			content: "";
			position: absolute;
			bottom: -0.5rem; /* 下線の位置を調整 */
			left: 0;
			width: 100%;
			height: 1px;
}
.footer .footer_nav ._privacy {
			display: block;
			margin-top: clamp(2rem, 1.694rem + 1.306vw, 3rem);
			font-size: 0.9rem;
			font-weight: 700;
			color: rgba(34, 34, 34, 0.4);
}
.footer ._lower {
			padding-top: 1rem;
}
.footer ._lower p:not(._copy), .footer ._lower a {
			font-weight: 700;
}
.footer ._lower ._flex {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
			-webkit-column-gap: 1rem;
			   -moz-column-gap: 1rem;
			        column-gap: 1rem;
			row-gap: 2rem;
}
.footer ._lower ._contact_wrapper {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
			row-gap: 1rem;
			margin-top: 1rem;
}
@media screen and (max-width: 768px) {
			.footer ._lower ._contact_wrapper {
						display: block;
			}
}
.footer ._lower ._company_name,
.footer ._lower ._address {
			font-size: 0.9rem;
}
.footer ._lower ._address {
			margin-right: 1.25rem;
}
.footer ._lower ._contact_info {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			gap: 1.25rem;
}
.footer ._lower ._contact_info a, .footer ._lower ._contact_info p {
			font-size: 0.8rem;
}
@media screen and (max-width: 768px) {
			.footer ._lower ._contact_info {
						margin-top: 1rem;
			}
}
.footer ._lower .footer_logo_wrapper {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			gap: clamp(1.5rem, 1.347rem + 0.653vw, 2rem);
}
.footer ._lower .footer_logo_wrapper ._logo_box {
			width: clamp(2.5rem, 2.175rem + 1.388vw, 3.563rem);
}
.footer ._lower ._copy {
			margin-top: clamp(2rem, 1.847rem + 0.653vw, 2.5rem);
			font-size: clamp(0.625rem, 0.51rem + 0.49vw, 0.7rem);
			line-height: 2;
}
.footer ._lower ._copy span {
			font-size: clamp(0.625rem, 0.51rem + 0.49vw, 0.7rem);
			line-height: 2;
}

.all_cta {
			position: relative;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
	margin-top: 4rem;
}
@media screen and (max-width: 650px) {
			.all_cta {
						display: block;
			}
}
.all_cta a {
			position: relative;
			display: block;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.all_cta a._hover ._link_button {
			background: rgb(0, 137, 255);
			background: linear-gradient(45deg, rgb(0, 137, 255) 0%, rgb(51, 95, 168) 100%);
}
.all_cta a._hover ._link_button::after {
			border: transparent;
}
.all_cta ._bg {
			display: block;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
			opacity: 1;
}
.all_cta ._title {
			position: absolute;
			top: 50%;
			left: 8%;
			-webkit-transform: translateY(-50%);
			        transform: translateY(-50%);
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
			opacity: 1;
}
.all_cta ._title * {
			font-weight: 700;
			color: #fff;
}
.all_cta ._title ._en {
			font-size: clamp(2rem, 1.617rem + 1.633vw, 3.25rem);
			
}
.all_cta ._hover_bg {
			width: 100%;
			height: 100%;
			position: absolute;
			top: 0;
			left: 0;
			pointer-events: none;
			z-index: -1;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
			opacity: 0;
}
.all_cta ._link_button {
			position: absolute;
			bottom: 8%;
			right: 5%;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-pack: center;
			    -ms-flex-pack: center;
			        justify-content: center;
			width: clamp(4rem, 3.694rem + 1.306vw, 5rem);
			padding: clamp(0.281rem, 0.224rem + 0.245vw, 0.469rem);
			border: none;
}
.all_cta ._link_button::before {
			border: none;
}

@media screen and (max-width: 650px) {
.all_cta  { display: none;}
}


.otherpage_link_wrapper {
			position: relative;
			margin-top: clamp(7.5rem, 5.587rem + 8.163vw, 10rem);
			border-bottom: 1px solid #ddd;
}
.otherpage_link_wrapper::after {
			content: "";
			display: block;
			height: 85%;
			position: absolute;
			top: 50%;
			left: 50%;
			-webkit-transform: translateY(-50%);
			        transform: translateY(-50%);
			border-left: 1px solid #ddd;
			z-index: 3;
}


@media screen and (max-width: 650px) {
			.otherpage_link_wrapper::after {
						width: 90%;
						height: 1px;
						top: 50%;
						left: 5%;
						border-top: 1px solid #ddd;
			}
}

.otherpage_link_wrapper h3{ line-height: 1.2;
margin-bottom: 2%;}

.otherpage_link_wrapper ._inner { background-color: pink;
			padding: 2.5rem clamp(1.25rem, -0.281rem + 6.531vw, 6.25rem);
}

.otherpage_link_wrapper ._inner　li {
			width:48%;
}

.otherpage_link_wrapper ul {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			gap: 3.5%;
}
@media screen and (max-width: 650px) {
			.otherpage_link_wrapper ul {
						-webkit-box-orient: vertical;
						-webkit-box-direction: normal;
						    -ms-flex-direction: column;
						        flex-direction: column;
						gap: 3rem;
			}
}
.otherpage_link_wrapper li a {
			display: block;
}
.otherpage_link_wrapper li a h3 {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			-webkit-column-gap: 1.125rem;
			   -moz-column-gap: 1.125rem;
			        column-gap: 1.125rem;
			row-gap: 0.5rem;
			font-size: clamp(1.125rem, 1.01rem + 0.49vw, 1.5rem);
			font-weight: 700;
}
@media (max-width: 1120px) {
			.otherpage_link_wrapper li a h3 {
						-webkit-box-orient: vertical;
						-webkit-box-direction: normal;
						    -ms-flex-direction: column;
						        flex-direction: column;
						-webkit-box-align: start;
						    -ms-flex-align: start;
						        align-items: flex-start;
				
			}
}
.otherpage_link_wrapper li a h4 {display: flex;
			color: #2578b8;
			
			font-size: 0.875rem;
			font-weight: 700;
			width:100%;
}
.otherpage_link_wrapper li a ._image {
			overflow: hidden;
}
.otherpage_link_wrapper li a ._image img {
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.otherpage_link_wrapper li a ._page_title {
			margin-top: clamp(1.5rem, 1.27rem + 0.98vw, 2.25rem);
}

.otherpage_link_wrapper li a._hover ._image img {
			-webkit-transform: scale(1.05);
			        transform: scale(1.05);
}
.otherpage_link_wrapper li a._hover ._link_button {
			border: 2px solid #2578b8;
}
.otherpage_link_wrapper li a._hover ._link_button::before {
			opacity: 0;
}
.otherpage_link_wrapper li a._hover ._link_button span::after {
			background-image: url(../img/all_arrow_blue.svg);
}


.top {
			overflow: hidden;
}
@media screen and (max-width: 650px) {
.mt525{ margin-top: 3rem}
}
	
//**
ヘッダーの入力
.top .header {
			top: -5.25rem;
}
**//

.top .header.on {
			top: 0;
}

.top .top_hero {
			position: relative;
			width: 100%;
			height: 100%;
	
}

.top .top_hero::before {
  content: '';
  background-color: rgba(0,0,0,.2);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}


.top .top_hero ._hero_bg img {
			display: block;
			height: 100%;
}
@media screen and (max-width: 650px) {
			.top .top_hero ._hero_bg {
						height: 100%;
			}
			.top .top_hero ._hero_bg img {
						-o-object-fit: cover;
						   object-fit: cover;
						-o-object-position: left top;
						   object-position: left top;
			}
}
@media screen and (max-width: 650px) {
			.top .top_hero {
						height: 500px;
			}
}
.top .top_hero ._logo {
			position: absolute;
			top: 5%;
			left: 5%;
}
@media screen and (max-width: 650px) {
			.top .top_hero ._logo {
						width: 9rem;z-index: 1000;
			}
}
.top .top_hero ._logo_image {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			z-index: 2;
}
.top .top_hero ._logo_image img {
			height: 100%;
			-o-object-fit: cover;
			   object-fit: cover;
			-o-object-position: left;
			   object-position: left;
}
@media screen and (max-width: 650px) {
			.top .top_hero ._logo_image {
						top: inherit;
						bottom: 0;
			}
}

.top .top_hero ._logo { display: none;}


.top .top_hero ._title {
			position: absolute;
			top: 35%;
			left: 28%;
			z-index: 3;
			width: 43.5%;
}
@media (max-width: 767px) {
			.top .top_hero ._title {
						width: 90%;
						top: 30%;
						left: 50%;
						-webkit-transform: translateX(-50%);
						        transform: translateX(-50%);
			}
}
.top .top_hero ._title span {
			color: #fff;
			display: block;
}
.top .top_hero ._title .mont {
			font-weight: 600;
}
.top .top_hero ._title ._upper {
			font-size: clamp(1.75rem, 1.061rem + 2.939vw, 4rem);
}
@media screen and (max-width: 650px) {
			.top .top_hero ._title ._upper {
						margin-bottom: 0.5rem;
			}
}
.top .top_hero ._title ._lower {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			margin-top: 0.75rem;
			margin-left: -0.5rem;
}
.top .top_hero ._title ._lower .mont {
			font-size: clamp(2.75rem, 1.832rem + 3.918vw, 5.75rem);
			font-style: italic;
			letter-spacing: -0.04em;
}
.top .top_hero ._title ._lower .ja {
			margin-top: 0.5rem;
			margin-left: 4rem;
			font-size: clamp(0.875rem, 0.684rem + 0.816vw, 1.5rem);
			font-weight: 700;
			text-indent: -2em;
			line-height: 1.5;
}
@media screen and (max-width: 650px) {
			.top .top_hero ._title ._lower .ja {
						margin-top: 0;
						margin-left: 2rem;
			}
}
.top .top_hero .swiper_container {
			position: absolute;
			right: 0;
			bottom: 0;
			width: 63%;
			height: 100%;
			-webkit-clip-path: polygon(11% 0%, 100% 0%, 100% 100%, 0% 100%);
			        clip-path: polygon(61% 0%, 100% 0%, 100% 100%, 0% 100%);
}



@media screen and (max-width: 650px) {
			.top .top_hero .swiper_container {
						width: 100%;
						height: 100%;
						webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
						        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
			}
}
.top .top_hero .swiper_container .swiper {
			height: 100%;
}





.top .top_hero .swiper_container .swiper-slide {
			width: 100% !important;
}

.top .top_hero .swiper_container .swiper-slide::before {
  content: '';
  background-color: rgba(0,0,0,.3);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}


.top .top_hero .swiper_container img {
			height: 100%;
			-o-object-fit: cover;
			   object-fit: cover;
			-o-object-position: bottom right;
			   object-position: bottom right;
}
.top .top_hero ._menu {
			position: absolute;
			left: 5%;
			bottom: 0;
			padding-left: 1.875rem;
			padding-bottom: 10%;
			border-left: 1px solid rgba(255, 255, 255, 0.2);
			z-index: 3;
}
.top .top_hero ._menu::before {
			content: "";
			height: 22px;
			width: 1px;
			background-color: #fff;
			position: absolute;
			top: 0;
			left: 0;
}
.top .top_hero ._menu li {
			margin-bottom: 1.75rem;
			line-height: 1;
}
.top .top_hero ._menu a {
			font-size: 0.875rem;
			font-weight: 700;
			color: #fff;
}
@media (max-width: 767px) {
			.top .top_hero ._menu {
						display: none;
			}
}
.top .top_about ._image {
			position: relative;
			margin-top: clamp(4.625rem, 2.941rem + 7.184vw, 10.125rem);
}
.top .top_about ._image picture {
			position: relative;
			width: 80%;
			display: block;
}
@media screen and (max-width: 650px) {
			.top .top_about ._image picture {
						width: 95%;
			}
}
.top .top_about ._image ._logo_bg {
			position: absolute;
			top: 6%;
			left: -12%;
			width: 130%;
			pointer-events: none;
}
@media screen and (max-width: 650px) {
			.top .top_about ._image ._logo_bg {
						top: -9%;
						left: -15%;
						width: 165%;
			}
}
.top .top_about ._strong_point {
			width: 80%;
			margin-top: clamp(4.5rem, 4.117rem + 1.633vw, 5.75rem);
}
@media screen and (max-width: 650px) {
			.top .top_about ._strong_point {
						width: 100%;
			}
}
@media screen and (max-width: 768px) {
			.top .top_about ._strong_point ._link_button {
						margin-top: 1.25rem;
						margin-left: auto;
			}
}
.top .top_about ._points_inner {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-pack: center;
			    -ms-flex-pack: center;
			        justify-content: center;
			gap: 10%;
			width: 80%;
			margin-left: auto;
}
@media screen and (max-width: 1024px) {
			.top .top_about ._points_inner {
						width: 90%;
			}
}
@media screen and (max-width: 650px) {
			.top .top_about ._points_inner {
						-webkit-box-orient: vertical;
						-webkit-box-direction: normal;
						    -ms-flex-direction: column;
						        flex-direction: column;
						width: 100%;
			}
}
.top .top_about ._each_point {
			position: relative;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
			-webkit-box-align: start;
			    -ms-flex-align: start;
			        align-items: flex-start;
			gap: 5%;
			padding-top: clamp(1.875rem, 1.492rem + 1.633vw, 3.125rem);
			padding-bottom: 2rem;
			border-bottom: 1px solid #ddd;
}
@media screen and (max-width: 768px) {
			.top .top_about ._each_point {
						-webkit-box-orient: vertical;
						-webkit-box-direction: normal;
						    -ms-flex-direction: column;
						        flex-direction: column;
			}
}
.top .top_about ._each_point::after {
			content: "";
			position: absolute;
			bottom: -1px;
			left: 0;
			display: block;
			width: 0;
			height: 1px;
			background-color: #091D3C;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.top .top_about ._each_point .sub_title {
			width: 35%;
}
@media screen and (max-width: 768px) {
			.top .top_about ._each_point .sub_title {
						width: 100%;
			}
}
.top .top_about ._each_point ._text {
			width: 46%;
			font-size: 0.875rem;
			line-height: 1.75;
}
@media screen and (max-width: 768px) {
			.top .top_about ._each_point ._text {
						margin-top: 1.5rem;
						width: 100%;
			}
}
.top .top_about ._each_point._hover::after {
			width: 100%;
}
.top .top_about ._each_point._hover ._link_button {
			border: 2px solid #2578b8;
}
.top .top_about ._each_point._hover ._link_button::before {
			opacity: 0;
}
.top .top_about ._each_point._hover ._link_button span::after {
			background-image: url(../img/all_arrow_blue.svg);
}
@media screen and (max-width: 650px) {
			.top .top_technology {
						margin-top: 7.5rem;
			}
}
.top .top_technology ._scroll_bg {
			position: relative;
			margin: clamp(5.75rem, 3.913rem + 7.837vw, 11.75rem) auto;
			pointer-events: none;
}
.top .top_technology ._infinity_image {
			background: url(../img/top_tech_bg.jpg) repeat-x left center/auto 26.25rem;
			width: 100000px;
			height: 26.25rem;
			position: relative;
			-webkit-animation: flowBg 2000s linear infinite;
			        animation: flowBg 2000s linear infinite;
			will-change: transform;
}
@media (max-width: 880px) {
			.top .top_technology ._infinity_image {
						height: 16.25rem;
						background-size: auto 16.25rem;
						-webkit-animation-duration: 3200s;
						        animation-duration: 3200s;
			}
}
@media screen and (max-width: 650px) {
			.top .top_technology ._infinity_image {
						height: 8.75rem;
						background-size: auto 8.75rem;
			}
}
.top .top_technology ._equipment_image {
			position: absolute;
			top: 60%;
			left: 50%;
			-webkit-transform: translate(-50%, -50%);
			        transform: translate(-50%, -50%);
			width: 100%;
			max-width: 71.25rem;
			z-index: 2;
}

@-webkit-keyframes fadeOut {
			from {
						opacity: 1;
			}
			to {
						opacity: 0;
			}
}
@keyframes fadeOut {
			from {
						opacity: 1;
			}
			to {
						opacity: 0;
			}
}
@-webkit-keyframes fadeIn {
			from {
						opacity: 0;
			}
			to {
						opacity: 1;
			}
}
@keyframes fadeIn {
			from {
						opacity: 0;
			}
			to {
						opacity: 1;
			}
}
.top .top_product .product_swiper_container .swiper-slide {
			display: none;
			height: auto;
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.top .top_product .product_swiper_container .swiper-slide.is-show {
			display: block;
}
.top .top_product .product_swiper_container .swiper-slide:hover ._link_button::before {
			opacity: 0;
}
.top .top_product .product_swiper_container .item {
			display: block;
			height: 100%;
			padding: 1rem clamp(0.875rem, 0.531rem + 1.469vw, 2rem) 1.5rem;
			border-right: 1px solid #ddd;
}
.top .top_product .product_swiper_container .item._first {
			border-left: 1px solid #ddd;
}
.top .top_product .product_swiper_container ._picture {
			padding: 2.875rem 0.5rem;
			border-bottom: 1px solid #ddd;
}
.top .top_product .product_swiper_container .product_title {
			margin-top: clamp(1.375rem, 1.184rem + 0.816vw, 2rem);
}
.top .top_product .product_swiper_container ._link_button {
			margin-top: clamp(1rem, 0.923rem + 0.327vw, 1.25rem);
			margin-left: auto;
}

.top .top_blog {
			position: relative;
}
.top .top_blog .section_title_wrapper {
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
}
.top .top_blog ._logo_bg {
			position: absolute;
			top: 0;
			left: 56%;
			width: 145%;
			-webkit-transform: translate(-50%, -50%);
			        transform: translate(-50%, -50%);
			z-index: -1;
			pointer-events: none;
}
.top .top_news {
			padding: clamp(4.5rem, 2.74rem + 7.51vw, 10.25rem) 20px;
			background-color: #F9F9F9;
}
.top .top_news .section_title_wrapper {
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
}
body.active {
			overflow: hidden;
}

.company ._outline ._outline_content {
			display: -ms-grid;
			display: grid;
			-ms-grid-columns: 1fr 1fr;
			grid-template-columns: 1fr 1fr; /* 2カラムレイアウト */
			-ms-grid-rows: auto 20px auto 20px auto 20px auto 20px auto;
			grid-template-rows: repeat(5, auto); /* 5行を定義 */
			row-gap: 20px; /* カラム間のスペース */
}

.company ._outline ._outline_content > *:nth-child(1) {
			-ms-grid-row: 1;
			-ms-grid-column: 1;
}

.company ._outline ._outline_content > *:nth-child(2) {
			-ms-grid-row: 1;
			-ms-grid-column: 2;
}

.company ._outline ._outline_content > *:nth-child(3) {
			-ms-grid-row: 3;
			-ms-grid-column: 1;
}

.company ._outline ._outline_content > *:nth-child(4) {
			-ms-grid-row: 3;
			-ms-grid-column: 2;
}

.company ._outline ._outline_content > *:nth-child(5) {
			-ms-grid-row: 5;
			-ms-grid-column: 1;
}

.company ._outline ._outline_content > *:nth-child(6) {
			-ms-grid-row: 5;
			-ms-grid-column: 2;
}

.company ._outline ._outline_content > *:nth-child(7) {
			-ms-grid-row: 7;
			-ms-grid-column: 1;
}

.company ._outline ._outline_content > *:nth-child(8) {
			-ms-grid-row: 7;
			-ms-grid-column: 2;
}

.company ._outline ._outline_content > *:nth-child(9) {
			-ms-grid-row: 9;
			-ms-grid-column: 1;
}

.company ._outline ._outline_content > *:nth-child(10) {
			-ms-grid-row: 9;
			-ms-grid-column: 2;
}
@media (max-width: 767px) {
			.company ._outline ._outline_content {
						-ms-grid-columns: 1fr;
						grid-template-columns: 1fr; /* 1カラムレイアウトに変更 */
						-ms-grid-rows: auto 0 auto 0 auto 0 auto 0 auto 0 auto 0 auto 0 auto 0 auto;
						grid-template-rows: repeat(9, auto); /* 9行を定義 */
						row-gap: 0;
			}
			.company ._outline ._outline_content > *:nth-child(1) {
						-ms-grid-row: 1;
						-ms-grid-column: 1;
			}
			.company ._outline ._outline_content > *:nth-child(2) {
						-ms-grid-row: 3;
						-ms-grid-column: 1;
			}
			.company ._outline ._outline_content > *:nth-child(3) {
						-ms-grid-row: 5;
						-ms-grid-column: 1;
			}
			.company ._outline ._outline_content > *:nth-child(4) {
						-ms-grid-row: 7;
						-ms-grid-column: 1;
			}
			.company ._outline ._outline_content > *:nth-child(5) {
						-ms-grid-row: 9;
						-ms-grid-column: 1;
			}
			.company ._outline ._outline_content > *:nth-child(6) {
						-ms-grid-row: 11;
						-ms-grid-column: 1;
			}
			.company ._outline ._outline_content > *:nth-child(7) {
						-ms-grid-row: 13;
						-ms-grid-column: 1;
			}
			.company ._outline ._outline_content > *:nth-child(8) {
						-ms-grid-row: 15;
						-ms-grid-column: 1;
			}
			.company ._outline ._outline_content > *:nth-child(9) {
						-ms-grid-row: 17;
						-ms-grid-column: 1;
			}
}
.company ._outline ._list {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			gap: 1rem;
			padding: clamp(1rem, 1rem + 1vw, 2rem) 2rem clamp(1rem, 1rem + 1vw, 2rem) 0;
			border-bottom: 1px solid #ddd;
			/* 最初の5つのDL要素を左側のカラムに配置 */
			/* 残りの4つのDL要素を右側のカラムに配置 */
}

@media (max-width: 767px) {
			.company ._outline ._list {
						-webkit-box-orient: vertical;
						-webkit-box-direction: normal;
						    -ms-flex-direction: column;
						        flex-direction: column;
						grid-area: auto !important;
			}
			.company ._outline ._list:nth-child(10) {
						display: none;
			}
}
.company ._outline ._list dt {
			width: 20%;
			min-width: 4.375rem;
			font-weight: 700;
}
.company ._outline ._list dd {
			line-height: 1.3;
}
.company ._outline ._address {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			gap: 1rem;
}
.company ._outline ._address p {
			line-height: 1.2;
}
.company ._outline ._address ._gmap {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			gap: 0.25rem;
			color: #2578b8;
}
.company ._outline ._address ._gmap::before {
			content: "";
			background-image: url(../img/company_map_pin.svg);
			background-repeat: no-repeat;
			background-size: contain;
			width: 0.875rem;
			height: 1.125rem;
			display: inline-block;
}
.company ._outline ._access {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			-webkit-column-gap: 2rem;
			   -moz-column-gap: 2rem;
			        column-gap: 2rem;
			row-gap: 1rem;
			margin-top: 1.25rem;
}
.company ._outline ._access button {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			gap: 0.25rem;
			color: #2578b8;
			font-weight: 700;
}
.company ._outline ._access button::after {
			content: "";
			background-image: url(../img/modal_open_btn.svg);
			background-repeat: no-repeat;
			background-size: contain;
			width: 1.5rem;
			height: 1.5rem;
			display: inline-block;
}
.company ._outline ._business li {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: start;
			    -ms-flex-align: start;
			        align-items: flex-start;
			gap: 0.75rem;
			line-height: 1.3;
}
.company ._outline ._business li:not(:first-of-type) {
			margin-top: 1rem;
}
.company ._outline ._business li::before {
			content: "";
			margin-top: 0.25rem;
			min-width: 0.625rem;
			min-height: 0.625rem;
			border-radius: 100%;
			background-color: #ddd;
}
.company ._message {
			background-color: #F9F9F9;
}
.company ._message .sub_contents_wrapper {
			padding-top: clamp(5.5rem, 3.166rem + 9.959vw, 13.125rem);
			padding-bottom: clamp(5.5rem, 3.166rem + 9.959vw, 13.125rem);
}
.company ._message ._message_content {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: end;
			    -ms-flex-align: end;
			        align-items: flex-end;
			gap: clamp(3.5rem, 3.194rem + 1.306vw, 4.5rem);
			margin-top: clamp(3.5rem, 2.084rem + 6.041vw, 8.125rem);
}
@media screen and (max-width: 768px) {
			.company ._message ._message_content {
						-webkit-box-orient: vertical;
						-webkit-box-direction: reverse;
						    -ms-flex-direction: column-reverse;
						        flex-direction: column-reverse;
			}
}
.company ._message ._message_content ._text {
			width: 50%;
}
@media screen and (max-width: 768px) {
			.company ._message ._message_content ._text {
						width: 100%;
			}
}
.company ._message ._message_content ._text ._title {
			font-size: clamp(1.375rem, 1.145rem + 0.98vw, 2.125rem);
			font-weight: 700;
			line-height: 1.6;
}
.company ._message ._message_content ._text ._lead {
			margin-top: clamp(2.5rem, 2.194rem + 1.306vw, 3.5rem);
			font-size: clamp(0.938rem, 0.88rem + 0.245vw, 1.125rem);
			font-weight: 700;
			line-height: 2;
}
.company ._message ._message_content ._text ._lead span {
			font-size: clamp(0.938rem, 0.88rem + 0.245vw, 1.125rem);
			font-weight: 700;
			line-height: 2;
}
.company ._message ._message_content ._text .all_text {
			margin-top: 1.5rem;
}
.company ._message ._message_content ._text ._name {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			gap: clamp(0.625rem, 0.434rem + 0.816vw, 1.25rem);
			margin-top: clamp(1.25rem, 0.561rem + 2.939vw, 3.5rem);
			font-size: clamp(1rem, 0.923rem + 0.327vw, 1.25rem);
			font-weight: 700;
}
.company ._message ._message_content ._text ._name span {
			font-size: clamp(1.25rem, 1.173rem + 0.327vw, 1.5rem);
}
.company ._message ._message_content ._image {
			max-width: 37.5rem;
			width: 54%;
}
@media screen and (max-width: 768px) {
			.company ._message ._message_content ._image {
						max-width: inherit;
						width: 100%;
			}
}
.company ._vision ._content {
			margin-top: 4rem;
}
.company ._vision dl { 
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-wrap: wrap;
			    flex-wrap: wrap;
			-webkit-box-align: start;
			    -ms-flex-align: start;
			        align-items: flex-start;
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			       justify-content:flex-start;
			gap: 1.5rem;
			padding: 1rem;
}

.company ._vision dt {
			
			font-weight: 700;
			color: #2578b8;
}
.company ._vision dd {
			text-align: left;
}
@media screen and (max-width: 768px) {
	
.company ._vision dl { gap: 0.5rem;
			padding: 0.2rem; 

}
	
.company ._vision dd {	line-height: 1.2;
						min-width: inherit;
	margin-bottom: 1.2rem;
			}
}
.company ._vision ._slogan {
			font-size: clamp(1.375rem, 1.145rem + 0.98vw, 2.125rem);
			font-weight: 700;
			line-height: 1.6;
			letter-spacing: 0;
}
.company ._vision ._slogan::before {
			display: block;
			width: 0;
			height: 0;
			margin-top: calc((1 - 1.6) * 0.5em);
			content: "";
}
.company ._vision ._slogan::after {
			display: block;
			width: 0;
			height: 0;
			margin-bottom: calc((1 - 1.6) * 0.5em);
			content: "";
}
.company ._vision ul li {
			counter-increment: number;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			gap: clamp(1rem, 0.923rem + 0.327vw, 1.25rem);
			font-weight: 700;
			line-height: 1.2;
}

.company ._history {
			overflow: hidden;
}
.company ._history ._history_wrapper {
			margin-top: clamp(3.5rem, 1.969rem + 6.531vw, 8.5rem);
}
.company ._history ._history_wrapper .swiper-slide {
			width: clamp(18.25rem, 16.566rem + 7.184vw, 23.75rem);
}
.company ._history ._history_wrapper .swiper-slide dl {
			width: 85%;
}
.company ._history ._history_wrapper ._date {
			font-size: 1.5rem;
			
			font-weight: 700;
}
.company ._history ._history_wrapper ._deco {
			position: relative;
			height: 1.375rem;
			margin-top: 1.5rem;
}
.company ._history ._history_wrapper ._deco span {
			position: absolute;
			top: 0;
			left: 0;
			display: block;
			width: 1.375rem;
			height: 1.375rem;
			background-color: #2578b8;
			border-radius: 100%;
			z-index: 2;
}
.company ._history ._history_wrapper ._deco::before {
			content: "";
			position: absolute;
			top: 50%;
			left: calc(-100% + 1.375rem);
			-webkit-transform: translateY(-50%);
			        transform: translateY(-50%);
			width: calc(100% - 1.375rem);
			height: 1px;
			background-color: #ddd;
			z-index: -1;
}
.company ._history ._history_wrapper ._deco::after {
			content: "";
			position: absolute;
			top: 50%;
			left: 1.375rem;
			-webkit-transform: translateY(-50%);
			        transform: translateY(-50%);
			width: calc(100% - 1.375rem);
			height: 1px;
			background-color: #ddd;
			z-index: -1;
}
.company ._history ._history_wrapper ._title {
			margin-top: 2.625rem;
			font-size: 1.125rem;
			font-weight: 700;
}
.company ._history ._history_wrapper .all_text {
			margin-top: 1rem;
			line-height: 1.5;
}
.company ._history ._history_scrollbar_wrapper {
			width: 50%; /* 画面幅の半分に設定 */
			max-width: 27.5rem;
			margin: clamp(2.5rem, 1.352rem + 4.898vw, 6.25rem) auto 0;
}
@media screen and (max-width: 650px) {
			.company ._history ._history_scrollbar_wrapper {
						width: 100%;
			}
}
.company ._history ._history_scrollbar_wrapper ._bar {
			width: 100%;
			height: 2.125rem;
			margin: 0 auto;
			background: #F6F8FB;
			border-radius: 9999px;
}
.company ._history ._history_scrollbar_wrapper .swiper-scrollbar-drag {
			background-image: url(../img/company_history_scrolldrug.svg);
			background-color: transparent;
			background-repeat: no-repeat;
			background-position: center;
}

.about {
			overflow: hidden;
}
.about ._strength ._content {
			margin-top: clamp(3rem, 1.431rem + 6.694vw, 8.125rem);
}
.about ._strength ._title {
			font-size: clamp(1.375rem, 1.145rem + 0.98vw, 2.125rem);
			font-weight: 700;
			letter-spacing: 0.05em;
			line-height: 1.6;
}
.about ._strength ._title span {
			font-size: clamp(1.375rem, 1.145rem + 0.98vw, 2.125rem);
			font-weight: 700;
}
.about ._strength ._lead {
			margin-top: 2.5rem;
			line-height: 2;
}
@media screen and (max-width: 650px) {
			.about ._strength ._image {
						margin-top: 2.5rem;
			}
}
.about ._section {
			border-top: 0px solid #ddd;
}
.about ._section .sub_contents_wrapper {
			width: 90%;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			gap: 5%;
}
@media screen and (max-width: 650px) {
			.about ._section .sub_contents_wrapper {
						width: 100%;
						-webkit-box-orient: vertical;
						-webkit-box-direction: reverse;
						    -ms-flex-direction: column-reverse;
						        flex-direction: column-reverse;
			}
}
.about ._section .sub_contents_wrapper._right {
			margin-right: calc(50% - 50vw);
			padding-right: 0;
}
.about ._section .sub_contents_wrapper._left {
			margin-left: calc(50% - 50vw);
			padding-left: 0;
}
.about ._section .sub_contents_wrapper._reverse {
			-webkit-box-orient: horizontal;
			-webkit-box-direction: reverse;
			    -ms-flex-direction: row-reverse;
			        flex-direction: row-reverse;
}
@media screen and (max-width: 650px) {
			.about ._section .sub_contents_wrapper._reverse {
						-webkit-box-orient: vertical;
						-webkit-box-direction: reverse;
						    -ms-flex-direction: column-reverse;
						        flex-direction: column-reverse;
			}
			.about ._section .sub_contents_wrapper._reverse ._sub_title {
						padding-left: 1.25rem;
			}
			.about ._section .sub_contents_wrapper._reverse ._sub_title::before {
						left: 1.25rem;
			}
			.about ._section .sub_contents_wrapper._reverse ._text_wrapper {
						padding-left: 1.25rem;
			}
}
.about ._section ._text_wrapper {
			width: 40%;
}
@media screen and (max-width: 768px) {
			.about ._section ._text_wrapper {
						width: 45%;
			}
}
@media screen and (max-width: 650px) {
			.about ._section ._text_wrapper {
						width: 100%;
						padding-right: 1.25rem;
			}
}
.about ._section ._text_wrapper ._link_button {
			margin-top: clamp(2rem, 1.847rem + 0.653vw, 2.5rem);
}
.about ._section ._text_wrapper._hover ._link_button {
			
}
.about ._section ._text_wrapper._hover ._link_button::before {
			opacity: 0;
}
.about ._section ._text_wrapper._hover ._link_button span::after {
			
	background-image: linear-gradient(90deg, rgba(0, 168, 176, 1), rgba(53, 147, 232, 1));
	background-image: url(../img/all_arrow_white.svg);
}
.about ._section ._sub_title {
			position: relative; width: 100%; 
			
			font-size: clamp(1.75rem, 1.559rem + 0.816vw, 2.375rem);
			font-weight: 700;
}
.about ._section ._sub_title::before {
			position: absolute;
			top: -1.8rem;
			left: 0;
			
			font-size: 0.875rem;
			font-weight: 700;
			color: #2578b8;
}
@media screen and (max-width: 650px) {
			.about ._section ._sub_title::before {
						top: -1.2rem;
			}
}
.about ._section ._sub_title._material::before {
			content: "material sales";
}
.about ._section ._sub_title._material2::before {
			content: "processed goods sales";
}

.about ._section ._sub_title._material3::before {
			content: "product sales";
}
.about ._section ._sub_title._material5::before {
			content: "アンプコのお取り寄せなら";
}
.about ._section ._sub_title._material4::before {
			content: "trade business";
}


.about ._section ._sub_title._onestop::before {
			content: "PROFESSIONAL";
}




.about ._section ._title {
			margin-top: clamp(3.313rem, 2.911rem + 1.714vw, 2.625rem);
			font-size: clamp(1.25rem, 1.097rem + 0.653vw, 1.75rem);
			font-weight: 700;
			line-height: 1.2;
	
}
.about ._section ._lead {
			margin-top: 2.5rem;
			letter-spacing: 0;
}
.about ._section ._image_wrapper {
			width: 80%;
}

@media screen and (max-width: 768px) {
			.about ._section ._image_wrapper {
						width: 50%;
			}
}
@media screen and (max-width: 650px) {
			.about ._section ._image_wrapper {
						width: 100%;
			}
}
@media screen and (max-width: 650px) {
			.about ._section ._image_wrapper img {
						margin-top: 2.5rem;
			}
}

/* w2
*/
.about .section {
}
.about .section .sub_contents_wrapper {
			width: 90%;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			gap: 5%;
}
@media screen and (max-width: 650px) {
			.about .section .sub_contents_wrapper {
						width: 100%;
						-webkit-box-orient: vertical;
						-webkit-box-direction: reverse;
						    -ms-flex-direction: column-reverse;
						        flex-direction: column-reverse;
			}
}
.about .section .sub_contents_wrapper._right {
			margin-right: calc(50% - 50vw);
			padding-right: 0;
}
.about .section .sub_contents_wrapper._left {
			padding-left: 0;
}
.about .section .sub_contents_wrapper._reverse {
			-webkit-box-orient: horizontal;
			-webkit-box-direction: reverse;
			    -ms-flex-direction: row-reverse;
			        flex-direction: row-reverse;
}
@media screen and (max-width: 650px) {
			.about .section .sub_contents_wrapper._reverse {
						-webkit-box-orient: vertical;
						-webkit-box-direction: reverse;
						    -ms-flex-direction: column-reverse;
						        flex-direction: column-reverse;
			}
			.about .section .sub_contents_wrapper._reverse ._sub_title {
						padding-left: 1.25rem;
			}
			.about .section .sub_contents_wrapper._reverse ._sub_title::before {
						left: 1.25rem;
			}
			.about .section .sub_contents_wrapper._reverse ._text_wrapper {
						padding-left: 1.25rem;
			}
}
.about .section ._text_wrapper {
			width: 60%;
}
@media screen and (max-width: 768px) {
			.about .section ._text_wrapper {
						width: 45%;
			}
}
@media screen and (max-width: 650px) {
			.about .section ._text_wrapper {
						width: 100%;
			}
}
.about .section ._text_wrapper ._link_button {
			margin-top: clamp(2rem, 1.847rem + 0.653vw, 2.5rem);
}
.about .section ._text_wrapper._hover ._link_button {
			
}
.about .section ._text_wrapper._hover ._link_button::before {
			opacity: 0;
}
.about .section ._text_wrapper._hover ._link_button span::after {
			
	background-image: linear-gradient(90deg, rgba(0, 168, 176, 1), rgba(53, 147, 232, 1));
	background-image: url(../img/all_arrow_white.svg);
}
.about .section ._sub_title {
			position: relative;
			font-size: clamp(1.75rem, 1.559rem + 0.816vw, 2.375rem);
			font-weight: 700;
	line-height: 1.2;
}
.about .section ._sub_title::before {
			position: absolute;
			top: -1.8rem;
			left: 0;
			font-size: 0.875rem;
			font-weight: 700;
			color: #1c73a2;
}
@media screen and (max-width: 650px) {
	.about .section ._sub_title {
			font-size: 1.8rem;
	}
			.about .section ._sub_title::before {
						top: -1.2rem;
				font-size: 0.7rem;
			}
}
.about .section ._sub_title._equipment::before {
			content: "Services";
}
.about .section ._sub_title._material::before {
			content: "The exclusive representative";
}
.about .section ._sub_title._reason::before {
			content: "why NEWTECH";
}
.about .section ._sub_title._onestop::before {
			content: "Strength03";
}
.about .section ._title {
			margin-top: clamp(3.313rem, 2.911rem + 1.714vw, 2.625rem);
			font-size: clamp(1.25rem, 1.097rem + 0.653vw, 1.75rem);
			font-weight: 700;
			line-height: 1.2;
}
.about .section ._lead {
			margin-top: 2.5rem;
			letter-spacing: 0;
}
.about .section ._image_wrapper {
			width: 40%;
}
@media screen and (max-width: 768px) {
			.about .section ._image_wrapper {
						width: 50%;
			}
}
@media screen and (max-width: 650px) {
			.about .section ._image_wrapper {
						width: 100%;
			}
}
@media screen and (max-width: 650px) {
			.about .section ._image_wrapper img {
						margin-top: 2.5rem;
			}
}

.otherpage_link_wrapper2 {
			position: relative;
	
}
.otherpage_link_wrapper2::after {
			content: "";
			display: block;
			height: 85%;
			position: absolute;
			top: 50%;
			left: 50%;
			-webkit-transform: translateY(-50%);
			        transform: translateY(-50%);
			z-index: 3;
}


@media screen and (max-width: 650px) {
			.otherpage_link_wrapper2::after {
						width: 90%;
						height: 1px;
						top: 50%;
						left: 5%;
				
			}
	.otherpage_link_wrapper2 { margin-left: 5%;
}
}
.otherpage_link_wrapper2 h3{ line-height: 1.2;
margin-bottom: 2%;}
.otherpage_link_wrapper2 ._inner {
			padding: 1rem;
}
.otherpage_link_wrapper2 ul {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			gap: 3.5%;
}
@media screen and (max-width: 650px) {
			.otherpage_link_wrapper2 ul {
						-webkit-box-orient: vertical;
						-webkit-box-direction: normal;
						    -ms-flex-direction: column;
						        flex-direction: column;
						gap: 3rem;
			}
}
.otherpage_link_wrapper2 li { width: 98%;}
.otherpage_link_wrapper2 li a {
			display: block;
}
.otherpage_link_wrapper2 li a h3 {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
			-webkit-column-gap: 1.125rem;
			   -moz-column-gap: 1.125rem;
			        column-gap: 1.125rem;
			row-gap: 0.5rem;
			font-size: clamp(1.125rem, 1.01rem + 0.49vw, 1.5rem);
			font-weight: 700;
}
@media (max-width: 1120px) {
			.otherpage_link_wrapper2 li a h3 {
						-webkit-box-orient: vertical;
						-webkit-box-direction: normal;
						    -ms-flex-direction: column;
						        flex-direction: column;
						-webkit-box-align: start;
						    -ms-flex-align: start;
						        align-items: flex-start;
				
			}
}
.otherpage_link_wrapper2 li a h4 {display: flex;
			color: #2578b8;
			
			font-size: 0.875rem;
			font-weight: 700;
			width:100%;
}
.otherpage_link_wrapper2 li a ._image {
			overflow: hidden;
}
.otherpage_link_wrapper2 li a ._image img {
			-webkit-transition: all 0.4s ease;
			transition: all 0.4s ease;
}
.otherpage_link_wrapper2 li a ._page_title {
			margin-top: clamp(1.5rem, 1.27rem + 0.98vw, 2.25rem);
}

.otherpage_link_wrapper2 li a._hover ._image img {
			-webkit-transform: scale(1.05);
			        transform: scale(1.05);
}
.otherpage_link_wrapper2 li a._hover ._link_button {
			border: 2px solid #2578b8;
}
.otherpage_link_wrapper2 li a._hover ._link_button::before {
			opacity: 0;
}
.otherpage_link_wrapper2 li a._hover ._link_button span::after {
			background-image: url(../img/all_arrow_blue.svg);
}
.no-sp { display: none;}


/* w finish */


.otherpage_link_wrapper ._sub_title {
			position: relative;
			
			font-size: clamp(1.75rem, 1.559rem + 0.816vw, 2.375rem);
			font-weight: 700;
position: absolute;
			top: -1.8rem;
			left: 0;
}



.about .infinity_image {
			margin-top: clamp(7.75rem, 6.028rem + 7.347vw, 13.375rem);
			background: url(../img/about_infinity_bg.jpg) repeat-x left center/auto 600px;
			width: 100000px;
			height: 600px;
			position: relative;
			-webkit-animation: flowBg 2000s linear infinite;
			        animation: flowBg 2000s linear infinite;
			will-change: transform;
}
@keyframes flowBg {
			0% {
						background-position: left 0 center;
			}
			100% {
						background-position: left -100000px center;
			}
}
@media screen and (max-width: 768px) {
			.about .infinity_image {
						background-size: auto 260px;
						height: 260px;
						-webkit-animation-duration: 3000s;
						        animation-duration: 3000s;
			}
}


 .inner {
	 display: flex;
	justify-content: space-between;
	 flex-wrap: wrap;
}
@media screen and (min-width:768px) {
  .inner {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
	  margin: 0 auto;
    display: -webkit-flex;
  }
}
@media screen and (min-width:768px) {
  .inner .block {
    width: 30%;
  }
}

  .inner .block2 {
      margin-bottom: 5%;
  }

@media screen and (min-width:768px) {
  .inner .block2 {
    width: 49%;
	  margin-bottom: 2%;
  }
}

.inner .block:not(:last-of-type) {
  margin-bottom: 3%;
}

.inner .block:not(:first-child) img{ display: none;}

@media screen and (min-width:768px) {
  .inner .block:not(:last-of-type) {
    margin-bottom: 0;
  }
	.inner .block:not(:first-child) img{ display: block;}
}

@media screen and (min-width:768px) {
  .inner .block .notes {
    margin-top: 0;
  }
}
.inner .block .ttl {
 					font-size: clamp(1.25rem, 1.097rem + 0.653vw, 1.25rem);
			font-weight: 700;
	margin-bottom: 3%;
	line-height: 1.2;
}

@media screen and (min-width:768px) {
.inner .block .ttl {
 					
	margin-bottom: 5%;
}
}

.titlechatch {
	line-height: 120%;
	margin-bottom: 3%;
}

.inner p{ margin-bottom: 3%;}

.br-sp {
  display: inline-block;
}

@media screen and (min-width:768px) {
  .br-pc {
     display: inline-block;
  }

  .br-sp {
   display: none;
  }
}



#tel_mail {display: none;}
@media screen and (max-width:768px) {
#tel_mail {
  width: 100%; /*ボタンの表示エリアを画面いっぱいにする*/
  position: fixed; /*画面の決まった場所に固定する*/
  bottom: 0px; /*画面の一番下に設置する*/
  display: flex; /*電話とメールのボタンを横並びにする*/
}

#tel_mail .tel,
#tel_mail .mail {
  display: flex; /*アイコンフォントと文字を横並びにする*/
  flex-direction: column; /*アイコンフォントと文字を縦並びに変える*/
  width: 50%; /*電話とメールボタンの横幅を画面の半分ずつにする*/
  line-height: 40px; /*ボタンの高さを調整する*/
  padding: 1rem 1rem 1.2rem 1rem; /*ポタンの上下の余白を調整する*/
  text-align: center; /*アイコンフォントと文字をセンタリングする*/
  color: #fff; /*文字の色*/
  font-weight: bold; /*文字の太さ*/
  font-size: 1.5rem; /*文字の大きさ*/
}
	
	#tel_mail span{	font-size:50%; margin-bottom: 2%;}

#tel_mail .tel {
  /*電話ボタンの背景色*/
 background-color: #0a0a0a;
background-image: linear-gradient(326deg, #0a0a0a 0%, #717171 46%, #262626 100%);

}
#tel_mail .mail {
  /*メールボタンの背景色*/
  background-color: #0077b3;
background-image: linear-gradient(160deg, #0077b3 0%, #80D0C7 100%);

}

#tel_mail .tel::before {
  /*疑似要素のbeforeを使って表示する*/
  font-weight: 900; /*無料版（solid）は900に設定する*/
   font-size: 2rem; /*アイコンフォントのサイズを調整する*/
}
#tel_mail .mail::before {
  font-weight: 900;
  font-size: 2rem;
}
	#tel_mail p{ font-weight: bold;}
}


@keyframes shiny {
    0% {
        transform: scale(0) rotate(25deg);
        opacity: 0;
    }

    70% {
        transform: scale(1) rotate(25deg);
        opacity: 1;
    }

    100% {
        transform: scale(50) rotate(25deg);
        opacity: 0;
    }
}

.shiny-btn {
    position: relative;
    display: block;
    width: 100%;
  overflow: hidden; 
	font-weight: bold;
}

.shiny-btn::after {
    content: '';
    position: absolute;
    top: -100px;
    left: -100px;
    width: 50px;
    height: 50px;
    background-image: linear-gradient(100deg,  rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
    
    /* アニメーション */
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}



.head {display: none;}
@media screen and (min-width:768px) {
.head{width: 100%; /*ボタンの表示エリアを画面いっぱいにする*/
display: flex; /*アイコンフォントと文字を横並びにする*/
  flex-direction: column; /*アイコンフォントと文字を縦並びに変える*/
  line-height: 40px; /*ボタンの高さを調整する*/
  padding: 0.1rem; /*ポタンの上下の余白を調整する*/
  text-align: center; /*アイコンフォントと文字をセンタリングする*/
  color: #fff; /*文字の色*/
  font-weight: bold; /*文字の太さ*/
  font-size: 1rem;
	background-image: linear-gradient(160deg, #0077b3 0%, #80D0C7 100%);
	height: 40px;position: fixed;
	z-index: 10000;
}
}

@media screen and (max-width:768px) {
.goldborder{border: 6px solid #e1c89e; padding: 2% 2% 10% 2%; margin: 10% 3% 30%;}
	
	.m5{ margin-bottom: 10%;}
	}


.cta_btn04 {
  font-weight: bold; /* 文字の太さ */
  width: 100%;
  max-width: 350px; /* ボタン幅 */
  display: inline-block;
  padding: 1em;
  transition: 0.3s;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #fff; /* ボタン文字色 */
  border-radius: 10px;
  background: #ff7150; /* 背景色 */
  box-shadow: 0 5px 0 #ad2d10;
  text-align: center;
}

.cta_btn04 p {
  margin: 0;
}

.cta_btn04 .cta_btn04_copy {
  font-size: 80%; /* コピー文字サイズ */
  display: block;
  padding: 0.3em 0;
  color: #333; /* コピー文字色 */
	font-weight: bold;
  border-radius: 100vh;
  background: #fff; /* コピー背景色 */
  margin-bottom: 10px;
}

/* マウスオーバーした際のデザイン */
.cta_btn04:hover {
  transform: translate(0, 3px);
  color: #fff;
  background: #F38173;
  box-shadow: 0 2px 0 #b84131;
}

.cta { width:100%;
text-align: center; margin-top: 10%;}

@media screen and (min-width: 650px) {
	.cta { display: none;}
}

.dotu li{ list-style-type: disc; margin-bottom: 2%; margin-left: 10%;}

.voice{background-color: #fff;}
@media screen and (max-width:768px) {
.voice{background: rgb(34,193,195);
background: rgb(85,216,238);
background: linear-gradient(0deg, rgba(85,216,238,1) 0%, rgba(207,255,227,0.7217480742296919) 100%);padding-top: 1%;}
}


.sponly {
			display: none;
}

@media screen and (max-width: 650px) {
			.sponly {
						display: block;
			}
}
.pconly {
			display: block;
}

@media screen and (max-width: 650px) {
.pconly {
						display: none;
			}
}


.pcbtn{display: flex; width: 100%;
  justify-content: center;}


.child{width: 70%}


.formbox{ margin-bottom:2%; width:100%;}



.btn--orange,
a.btn--orange {
  color: #fff;
  background-color: #eb6100;
}
.btn--orange:hover,
a.btn--orange:hover {
  color: #fff;
  background: #f56500;
}

/* 矢印-2---------------------------------------------- */
.arrowbtn-2 a {
	--arrow-color: #333; /* 矢印の色を設定 */
	display: inline-flex; /* 横並びに配置 */
	align-items: center; /* 垂直方向を中央に揃える */
	color: var(--arrow-color); /* 文字色を矢印の色と一致 */
	text-decoration: none; /* 下線を非表示 */
	position: relative; /* 疑似要素の位置基準 */
}

.arrowbtn-2 a::after {
	border-bottom: 1px solid var(--arrow-color); /* 下線のスタイルを矢印として設定 */
	border-right: 1px solid var(--arrow-color); /* 右線のスタイルを矢印として設定 */
	content: ''; /* 疑似要素のコンテンツを空に設定 */
	width: 30px; /* 矢印の幅を30pxに設定 */
	height: 10px; /* 矢印の高さを10pxに設定 */
	position: absolute; /* 親要素に対して絶対位置 */
	left: 100%; /* テキストの右端に配置 */
	transform: skewX(50deg); /* 矢印の傾きの調整 */
	transition: all .3s; /* なめらかな移動効果 */
}

/* マウスオーバー時の動き */
.arrowbtn-2 a:hover::after {
	margin-left: 10px; /* マウスオーバー時に矢印を10px右に移動 */
}

.jump_point a {height: 1px;
padding-top: 160px;
margin-top: -160px;
}


/* ampco---------------------------------------------- */
.feature-list {
  list-style: none;
  padding-left: 0;
	margin-left: 0;
	margin-top: 1.8rem;
}
.feature-list li {
  position: relative;
  padding-left: 1.5em; /* ドットとテキストの間の余白 */
  text-indent: 0; /* 2行目のインデントなし */
  line-height: 1.6;
}

.feature-list li::before {
  content: "•"; /* 修正ポイント：ダブルクォート内のバックスラッシュを削除し、直接黒丸を記述 */
  color: #333;
  display: inline-block;
	position: absolute;
  width: 1em;
   left: 0;
  top: 0;
}


@media screen and (max-width: 650px) {
	.feature-list {
			margin-top: 1rem;
			}
}



  .custom-table {
    width: 100%;
    border-collapse: collapse;
    margin: 2rem 0;
    font-size: 1rem;
    min-width: 300px;
  }

.custom-table img{
	width:250px;
}

  .custom-table thead tr {
    background-color: #2578b8;
    color: #ffffff;
    text-align: left;
  }

  .custom-table th, .custom-table td {
    padding: 1rem;
    border: 1px solid #ddd;
  }

  .custom-table tbody tr:nth-child(even) {
    background-color: #f9f9f9;
  }

  .custom-table tbody tr:hover {
    background-color: #eef5fb;
  }

@media screen and (max-width: 600px) {

  /* テーブル全体をブロック化 */
  .custom-table {
    border: none;
    width: 100%;
    border-collapse: collapse;
  }

  /* 見出しは非表示（行ごとにdata-labelで表示するため） */
  .custom-table thead {
    display: none;
  }

  /* 行をカードとして表示 */
  .custom-table tr {
    display: block;
    margin-bottom: 1.5rem;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #fff;
    overflow: hidden;
  }

  /* 各セルを縦並びに */
  .custom-table td {
    display: block;
    text-align: left;
    padding: 0.8rem 1rem;
    border: none;
    border-bottom: 1px solid #eee;
  }

  .custom-table td:last-child {
    border-bottom: none;
  }

  /* 各セルのラベル（data-label属性）をタイトルとして表示 */
  .custom-table td::before {
    content: attr(data-label);
    display: block;
    font-weight: bold;
    color: #2578b8;
    margin-bottom: 0.2rem;
  }
	.custom-table th:nth-child(2), .custom-table th:nth-child(3), .custom-table th:nth-child(4), .custom-table td:nth-child(2), .custom-table td:nth-child(3), .custom-table td:nth-child(4){width: 100%;}
}


.spec-table {
    width: 100%;
    border-collapse: collapse;
    margin: 2rem 0;
    font-size: 1rem;
    min-width: 300px;
  }

  .spec-table thead tr {
    background-color: #2578b8;
    color: #fff;
  }

  .spec-table th,
  .spec-table td {
    border: 1px solid #ddd;
    padding: 0.75rem 1rem;
    text-align: left;
  }

  .spec-table tbody tr:nth-child(even) {
    background-color: #f9f9f9;
  }

  .spec-table tbody tr:hover {
    background-color: #eef5fb;
  }

  @media screen and (max-width: 600px) {
    .spec-table thead {
      display: none;
    }

    .spec-table,
    .spec-table tbody,
    .spec-table tr,
    .spec-table td {
      display: block;
      width: 100%;
    }

    .spec-table tr {
      margin-bottom: 1rem;
      border: 1px solid #ccc;
      border-radius: 8px;
      overflow: hidden;
    }

    .spec-table td {
      padding: 0.75rem 1rem;
      position: relative;
    }

    .spec-table td::before {
      content: attr(data-label);
      font-weight: bold;
      display: block;
      margin-bottom: 0.3rem;
      color: #2578b8;
    }
  }

.faq-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 2rem;
  font-size: 1rem;
}

.faq-table th {
  background-color: #2578b8;
  color: #fff;
  padding: 0.75rem;
  text-align: left;
}

.faq-table td {
  border: 1px solid #ddd;
  padding: 1rem;
}

.faq-table tbody tr:nth-child(even) {
  background-color: #f9f9f9;
}

@media screen and (max-width: 600px) {
  .faq-table thead {
    display: none;
  }

  .faq-table, .faq-table tbody, .faq-table tr, .faq-table td {
    display: block;
    width: 100%;
  }

  .faq-table tr {
    margin-bottom: 1.5rem;
    border: 1px solid #ccc;
    border-radius: 6px;
    padding: 1rem;
  }

  .faq-table td {
    padding: 0.5rem 0;
    position: relative;
  }

  .faq-table td::before {
    content: attr(data-label);
    font-weight: bold;
    display: block;
    color: #2578b8;
    margin-bottom: 0.2rem;
  }
}

.related-links {
  margin-top: 3rem;
}

.related-links-list {
  list-style: none;
  padding: 0;
  margin-top: 2rem;
}

.related-links-list li {
  margin-bottom: 1rem;
}

.related-links-list a {
  display: inline-block;
  padding: 0.75rem 1.25rem;
  background-color: #f2f8fd;
  border-left: 5px solid #2578b8;
  color: #2578b8;
  font-weight: 600;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.related-links-list a:hover {
  background-color: #dceeff;
}

@media screen and (max-width: 600px) {.faq-table td {
  border: 0px ;
}}

.breadcrumb {width: 80%;
  font-size: 14px;
margin: auto 0;
			padding: 0 1.25rem;
}
.breadcrumb ol {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0;
  margin: 0;
}
.breadcrumb li::after {
  content: ">";
  margin: 0 6px;
}
.breadcrumb li:last-child::after {
  content: "";
}
.breadcrumb a {
  text-decoration: none;
  color: #0066cc;
}

/* サブメニュー非表示 */
.gnav .has-submenu {
  position: relative; /* 子の位置基準にする */
}

.gnav .has-submenu .submenu {
  display: none;
  position: absolute;
  top: 100%;
   background: #f5f5f5;
  min-width: 150px;
  z-index: 20;
	  max-width: 250px;
  word-wrap: break-word;
	padding: 5px 0;  /* 上下に共通の余白を確保 */
}

/* サブメニュー項目 */


.gnav .has-submenu .submenu li a {
  display: block;
  padding: 10px 15px;  /* ← 上下均等 */
  line-height: 1.5;
}

.gnav .has-submenu .submenu li:last-child a {
  padding-bottom: 14px;  /* 少し広めにとる */
}

.gnav .has-submenu .submenu li a:hover {
  
  color: #2578b8;
}

/* ホバーで展開 */
.gnav .has-submenu:hover .submenu {
  display: block;
}




