@charset "UTF-8";

/*
■ 共通・汎用

■ TOPページ

■ ABOUT：TOP
■ ABOUT：代表あいさつ
■ ABOUT：BEJについて
■ ABOUT：企業メッセージ
■ ABOUT：私たちの強み
■ ABOUT：沿革
■ ABOUT：協力会社
■ ABOUT：主要メーカー
■ ABOUT：スタッフ コメント

■ ENGINEERING SERVICE

■ PRODUCTS

■ PROJECTS：最新
■ PROJECTS：アーカイブ

■ VOICE：TOP
■ VOICE：INTERVIEW
■ VOICE：CROSS TALK

■ お問い合わせ

■ 個人情報保護方針
■ ウェブサイト利用規約

■ Not Found

■ アニメーション

■ JSライブラリ
*/



/* ■ 共通・汎用 ==================================================================================== */

/*
汎用
Contents
PageTitle
IndexMenu
ContactBox
FooterImage
*/


/* 汎用 --------------------------------------------------- */

.Wrapper {
position: relative;
}

.is_Outlined {
color: transparent;
transform: translateZ(0);
}

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

	.is_Outlined {
	-webkit-text-stroke: 1px var(--c-1);
	}

}

@media print, screen and (min-width: 768px) {

	.is_Outlined {
	-webkit-text-stroke: 2px var(--c-1);
	}

}


/* Contents --------------------------------------------------- */

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

	.Contents {
	padding-bottom: 5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Contents {
	padding-bottom: 15rem;
	}

}


/* PageTitle --------------------------------------------------- */

.PageTitle_En_Main {
color: var(--c-1);
}

.PageTitle_Jp {
letter-spacing: 0.1em;
color: var(--c-1);
}

.PageTitle_Lead {
font-weight: 500;
}

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

	.PageTitle {
	margin-top: 4.5rem;
	}

	.PageTitle_En {
	padding-left: 1.6rem;
	}

	.PageTitle_En_Cate {
	padding-left: 0.4rem;
	font-size: min(10.66vw, 4rem);
	}

	.PageTitle_En_Main {
	margin-top: 0.5rem;
	font-size: min(21.33vw, 8rem);
	line-height: 1.05;
	}

	.PageTitle_Jp {
	margin-top: 2.2rem;
	padding-left: var(--m-lr);
	font-size: 1.4rem;
	}

	.PageTitle_Lead {
	margin-top: 8rem;
	padding: 0 var(--m-lr);
	font-size: 1.3rem;
	line-height: 2.2;
	}

}

@media print, screen and (min-width: 768px) {

	.PageTitle {
	margin-top: 3rem;
	}

	.PageTitle_En {
	padding-left: 3rem;
	padding-right: 3rem;
	}

	.PageTitle_En_Cate {
	padding-left: 0.75rem;
	font-size: min(4.3vw, 6rem);
	-webkit-text-stroke: 1.5px var(--c-1);
	}

	.PageTitle_En_Main {
	margin-top: 0.5rem;
	font-size: min(12.8vw, 18rem);
	}

	.PageTitle_Jp {
	margin-top: 7rem;
	padding-left: var(--m-lr);
	font-size: 2.2rem;
	}

	.PageTitle_Lead {
	margin-top: 9rem;
	padding: 0 18%;
	font-size: 1.6rem;
	line-height: 2.4;
	}

}


/* IndexMenu --------------------------------------------------- */

.IndexMenu_List {
display: grid;
}

.IndexMenu_List a {
display: grid;
grid-template-rows: subgrid;
grid-row: span 4;
gap: 0;
}

.IndexMenu_List_Lead_1 {
display: flex;
align-items: flex-end;
justify-content: center;
text-align: center;
color: var(--c-1);
}

.IndexMenu_List_Lead_2 {
font-weight: 500;
text-align: center;
color: var(--c-3);
}

.IndexMenu_List_Btn {
position: relative;
border: 1px solid var(--c-1);
color: var(--c-1);
}

/* 矢印アイコン */
.IndexMenu_List_Btn::before,
.IndexMenu_List_Btn::after {
position: absolute;
content: "";
}

.IndexMenu_List_Btn::before {
background-color: var(--c-1);
}

.IndexMenu_List_Btn::after {
background-color: #fff;
clip-path: polygon(0 0, 0 100%, 100% 50%);
}

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

	.IndexMenu {
	margin-top: 2rem;
	}

	.IndexMenu_Inner {
	padding: 0 var(--m-lr);
	}

	.IndexMenu_List {
	grid-template-columns: repeat(2, 1fr);
	gap: 0 1rem;
	}

	.IndexMenu_List a {
	margin-top: 3rem;
	}

	.IndexMenu_List_Lead_1 {
	margin-top: -8%;
	font-size: min(5.86vw, 2.2rem);
	line-height: 1.1;
	}

	.IndexMenu_List_Lead_1.is_2Line {
	margin-top: -24%;
	}

	.IndexMenu_List_Lead_2 {
	margin-top: 1.4rem;
	font-size: min(2.93vw, 1.6rem);	
	}

	.IndexMenu_List_Btn {
	margin-top: 1.6rem;
	padding: 1rem 1.2rem 1rem 1.4rem;
	font-size: 1.1rem;
	}

	/* 矢印アイコン */
	.IndexMenu_List_Btn::before {
	right: 1.1rem;
	top: 0.8rem;
	width: 1.3rem;
	height: 1.3rem;
	}
	
	.IndexMenu_List_Btn::after {
	right: 1.5rem;
	top: 1.2rem;
	width: 0.45rem;
	height: 0.45rem;
	}

}

@media print, screen and (min-width: 768px) {

	.IndexMenu {
	margin-top: 4rem;
	}

	.IndexMenu_Inner {
	padding: 0 var(--m-lr);
	}

	.IndexMenu_List {
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
	}

	.IndexMenu_List a {
	margin-top: 8rem;
	}

	.IndexMenu_List_Lead_1 {
	margin-top: -18%;
	font-size: min(2.57vw, 3.6rem);
	line-height: 1.1;
	}

	.IndexMenu_List_Lead_2 {
	margin-top: 2.2rem;
	font-size: min(1.14vw, 1.6rem);	
	}

	.IndexMenu_List_Btn {
	margin-top: 3rem;
	padding: 1.6rem 1.6rem 1.7rem 1.8rem;
	font-size: 1.6rem;
	}

	/* 矢印アイコン */
	.IndexMenu_List_Btn::before {
	right: 1.6rem;
	top: 1.5rem;
	width: 1.7rem;
	height: 1.7rem;
	}
	
	.IndexMenu_List_Btn::after {
	right: 2.2rem;
	top: 2.1rem;
	width: 0.5rem;
	height: 0.5rem;
	}

}

@media (hover: hover) {

}


/* ContactBox --------------------------------------------------- */

.ContactBox_Inner {
display: flex;
align-items: center;
justify-content: center;
}

a.ContactBox_Btn {
display: flex;
align-items: center;
position: relative;
font-weight: 700;
color: #fff;
background-color: var(--c-1);
}

a.ContactBox_Btn::before,
a.ContactBox_Btn::after {
position: absolute;
top: 50%;
background-color: #fff; 
content: "";
}

a.ContactBox_Btn::before {
mask-image: url(/assets/img/common/icon/Icon_Contact.svg);
mask-size: contain;
mask-repeat: no-repeat;
}

a.ContactBox_Btn::after {
clip-path: polygon(0 0, 0 100%, 100% 50%);
}

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

	.ContactBox {
	margin-top: 5rem;
	}

	.ContactBox_Inner {
	padding: 0 var(--m-lr);
	}

	a.ContactBox_Btn {
	width: 100%;
	padding: 2.4rem 1.6rem 2.5rem 1.6rem;
	font-size: 1.3rem;
	}

	a.ContactBox_Btn::after {
	right: 1.6rem;
	top: 50%;
	width: 0.9rem;
	height: 0.9rem;
	margin-top: -0.45rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ContactBox {
	margin-top: 15rem;
	padding: 0 var(--m-lr);
	}

	.ContactBox_Inner {
	padding: 4rem 2rem;
	background-color: #f5f5f5;
	}

	a.ContactBox_Btn {
	padding: 2.4rem 5rem 2.5rem 6rem;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	}

	a.ContactBox_Btn::before {
	left: 2rem;
	width: 2.3rem;
	height: 1.7rem;
	margin-top: -0.85rem;
	}

	a.ContactBox_Btn::after {
	right: 2.3rem;
	top: 50%;
	width: 0.9rem;
	height: 0.9rem;
	margin-top: -0.45rem;
	}

}

@media (hover: hover) {

	a.ContactBox_Btn {
	background-image: linear-gradient(var(--c-3) 0 0);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 0% 100%;
	transition: background-size var(--a-dur-s) var(--a-ease-1);
	}

	a.ContactBox_Btn:hover {
	background-size: 100% 100%;
	opacity: 1;
	}

}


/* FooterImage --------------------------------------------------- */

.FooterImage {
position: relative;
}

.FooterImage_Lead {
position: absolute;
left: 50%;
top: 50%;
white-space: nowrap;
color: #fff;
transform: translate(-50%, -50%);
}

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

	.FooterImage_Lead {
	padding-bottom: 1.5rem;
	font-size: 4.5rem;
	line-height: 1.1;
	text-align: center;
	}

}

@media print, screen and (min-width: 768px) {

	.FooterImage_Lead {
	font-size: min(5.7vw, 8rem);
	}

}



/* ■ TOPページ ==================================================================================== */

/*
Loading
Box
KV
Catch
COMMITMENT
Menu
FooterImage
*/


/* Loading --------------------------------------------------- */

html.is_Loading #Loading {
visibility: visible;
}

.Loading {
display: flex;
align-items: center;
justify-content: center;
flex-flow: column;
position: fixed;
inset: 0;
z-index: 9999;
background-color: #fff;
opacity: 0;
visibility: hidden;
pointer-events: none;
}

.Loading.is_Show {
opacity: 1;
visibility: visible;
pointer-events: auto;
}

.Loading.is_Hide {
opacity: 0;
visibility: hidden;
transition: opacity 1.25s cubic-bezier(0.4, 0, 0.2, 1);
pointer-events: none;
}

.Loading_Lead {
color: var(--c-1);
opacity: 0;
animation-name: fadeIn;
animation-duration: 2s;
animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
animation-fill-mode: forwards;
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/* ローディングバー */
.Loading_Bar {
width: 200px;
margin-top: 4rem;
background-color: var(--c-2);
overflow: hidden;
}

.Loading_Progress {
display: block;
height: 100%;
width: 0%;
background-color: var(--c-1);
transition: width 1.5s cubic-bezier(0.4, 0, 0.2, 1);s
}

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

	.Loading_Lead {
	font-size: 36px;
	}

	/* ローディングバー */
	.Loading_Bar {
	height: 2px;
	}

}

@media print, screen and (min-width: 768px) {

	.Loading_Lead {
	font-size: min(4.28vw, 60px);
	}

	/* ローディングバー */
	.Loading_Bar {
	height: 3px;
	}

}


/* Box --------------------------------------------------- */

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

	.Page_Top::after {
	height: 240rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_Top::after {
	height: 250rem;
	}

}


/* KV --------------------------------------------------- */

.Top_KV {
position: relative;
}

.swiper-slide {
position: relative;
}

.Top_KV_Lead {
position: absolute;
left: 0;
top: 0;
color: #fff;
mix-blend-mode: difference;
}

.Top_KV_Lead_1 {
font-weight: 700;
}

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

	.Top_KV_Lead {
	padding: 1.6rem 1.6rem;
	}

	.Top_KV_Lead_1 {
	font-size: 2.25rem;
	}

	.Top_KV_Lead_2 {
	margin-top: 1rem;
	font-size: 1rem;
	line-height: 1.5;
	}

	/* アニメーション：スライド画像 */
	.Top_KV .swiper-slide-active .swiper-img,
	.Top_KV .swiper-slide-duplicate-active .swiper-img,
	.Top_KV .swiper-slide-prev .swiper-img {
	animation: zoomUp 7s linear 0s normal both;
	}
	
	@keyframes zoomUp {
		0% {
			transform: scale(1);
		}
		100% {
			transform: scale(1.1);
		}
	}

}

@media print, screen and (min-width: 768px) {

	.Top_KV_Lead {
	padding-left: 3.8rem;
	padding-top: 3.8rem;
	}

	.Top_KV_Lead_1 {
	font-size: 3.6rem;
	}

	.Top_KV_Lead_2 {
	width: 60%;
	margin-top: 1.5rem;
	font-size: 1.4rem;
	line-height: 1.5;
	}

	/* アニメーション：スライド画像 */
	.Top_KV .swiper-slide-active .swiper-img,
	.Top_KV .swiper-slide-duplicate-active .swiper-img,
	.Top_KV .swiper-slide-prev .swiper-img {
	animation: zoomUp 7s linear 0s normal both;
	}
	
	@keyframes zoomUp {
		0% {
			transform: scale(1);
		}
		100% {
			transform: scale(1.05);
		}
	}

}


/* Catch --------------------------------------------------- */

.Top_KV_Catch_Wrapper {
position: relative;
z-index: 2;
width: 100%;
overflow: hidden;
}

.Top_KV_Catch {
display: flex;
width: max-content;
will-change: transform;
transform: translateZ(0);
animation: marqueeScroll_KV 14s linear infinite;
animation-delay: 0.1s;
}

.Top_KV_Catch_Txt {
white-space: nowrap;
color: var(--c-1);
}

@keyframes marqueeScroll_KV {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}

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

	.Top_KV_Catch_Wrapper {
	margin-top: -20%;
	}

	.Top_KV_Catch_Txt {
	padding-left: 8rem;
	font-size: 12.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Top_KV_Catch_Wrapper {
	margin-top: -10%;
	}

	.Top_KV_Catch_Txt {
	padding-left: 15rem;
	font-size: min(17.86vw, 25rem);
	}

}

@media print, screen and (min-width: 768px) and (max-height: 800px) {

	.Top_KV_Catch_Wrapper {
	margin-top: -10%;
	}

	.Top_KV_Catch_Txt {
	font-size: min(17.86vw, 20rem);
	}

}


/* COMMITMENT --------------------------------------------------- */

.Commitment_Inner {
display: flex;
}

.Commitment_Movie_Wrap {
order: 2;
aspect-ratio: 1 / 1;
overflow: hidden;
}

.Commitment_Movie {
width: 100%;
height: 100%;
object-fit: cover;
}

.Commitment_Message_Lead_Jp {
font-weight: 500;
}

.Commitment_Message_Credit {
text-align: right;
}

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

	.Commitment {
	margin-top: 7rem;
	}

	.Commitment_Inner {
	flex-flow: column;
	padding: 0 4.3rem 10rem;
	}

	.Commitment_Mds {
	font-size: min(18.66vw, 7rem);
	}

	.Commitment_Message_Mds {
	margin-top: 3rem;
	font-size: 2.1rem;
	line-height: 1.8;
	}

	.Commitment_Message_Lead_En {
	margin-top: 4rem;
	font-size: 1.1rem;
	line-height: 1.8;
	}

	.Commitment_Message_Lead_Jp {
	margin-top: 2rem;
	font-size: 1.3rem;
	line-height: 2.4;
	}

	.Commitment_Message_Credit {
	margin-top: 2rem;
	font-size: 1.1rem;
	line-height: 1.8;
	}

	/* 動画 */
	.Commitment_Movie_Wrap {
	width: 100%;
	margin-top: 4rem;
	}
	
}

@media print, screen and (min-width: 768px) {

	.Commitment {
	margin-top: 16rem;
	padding-left: var(--m-lr);
	padding-bottom: 9rem;
	}

	.Commitment_Mds {
	position: relative;
	z-index: 2;
	font-size: min(12.8vw, 18rem);
	}
	
	.Commitment_Inner {
	display: flex;
	}
	
	.Commitment_Message {
	flex: 1;
	padding-right: 7%;
	}

	.Commitment_Message_Mds {
	margin-top: 8rem;
	font-size: 3.2rem;
	line-height: 1.8;
	}

	.Commitment_Message_Lead_En {
	margin-top: 4rem;
	font-size: 1.6rem;
	line-height: 1.8;
	}

	.Commitment_Message_Lead_Jp {
	margin-top: 4rem;
	font-size: 1.6rem;
	line-height: 2.4;
	}

	.Commitment_Message_Credit {
	margin-top: 4rem;
	font-size: 1.6rem;
	line-height: 1.6;
	}

	/* 動画 */	
	.Commitment_Movie_Wrap {
	width: min(40vw, 65rem);
	height: min(40vw, 65rem);
	margin-left: auto;
	margin-top: -7%;
	}

}


/* Menu --------------------------------------------------- */

.Top_Menu {
background-color: #fff;
}

.Top_Menu_Txt {
position: relative;
z-index: 2;
}

.Top_Menu_Mds_En {
color: var(--c-1);
}

.Top_Menu_Mds {
font-weight: 700;
letter-spacing: 0.1em;
}

.Top_Menu_Link a {
display: block;
position: relative;
border-bottom: 1px solid var(--c-1);
font-weight: 700;
letter-spacing: 0.1em;
color: var(--c-1);
}

/* 矢印アイコン */
.Top_Menu_Link a::before,
.Top_Menu_Link a::after {
position: absolute;
content: "";
}

.Top_Menu_Link a::before {
background-color: var(--c-1);
}

.Top_Menu_Link a::after {
background-color: #fff;
clip-path: polygon(0 0, 0 100%, 100% 50%);
}

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

	.Top_Menu + .Top_Menu {
	padding-top: 5rem;
	}

	.Top_Menu:nth-of-type(odd) .Top_Menu_Photo {
	padding-left: 4.5rem;
	}

	.Top_Menu:nth-of-type(even) .Top_Menu_Photo {
	padding-right: 4.5rem;
	}

	.Top_Menu_Txt {
	padding: 0 4.5rem 0 5rem;
	}

	.Top_Menu_Mds_En {
	margin-top: -12%;
	font-size: 10rem;
	font-size: min(16vw, 6rem);
	line-height: 1.1;
	}

	.Top_Menu_Mds {
	margin-top: 2rem;
	font-size: 1.7rem;
	line-height: 1.2;
	}

	.Top_Menu_Link {
	margin-top: 3rem;
	}

	.Top_Menu_Link a {
	width: 70%;
	margin-bottom: 2rem;
	padding-left: 2rem;
	padding-bottom: 1.4rem;
	font-size: 1.2rem;
	}

	/* 矢印アイコン */
	.Top_Menu_Link a::before {
	left: 0;
	top: 0;
	width: 1.3rem;
	height: 1.3rem;
	}
	
	.Top_Menu_Link a::after {
	left: 0.45rem;
	top: 0.4rem;
	width: 0.45rem;
	height: 0.45rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Top_Menu {
	display: flex;
	align-items: center;
	}

	.Top_Menu_Photo {
	width: 68%;
	width: min(68vw, 95rem);
	}

	.Top_Menu:nth-of-type(odd) .Top_Menu_Photo {
	order: 2;
	}

	.Top_Menu_Txt {
	width: 32%;
	flex: 1;
	}

	.Top_Menu:nth-of-type(even) .Top_Menu_Txt {
	margin-left: -4.5%;
	padding-right: var(--m-lr);
	}

	.Top_Menu:nth-of-type(odd) .Top_Menu_Txt {
	margin-right: -15%;
	padding-left: var(--m-lr);
	}

	.Top_Menu_Mds_En {
	font-size: 10rem;
	font-size: min(7.14vw, 10rem);
	line-height: 1.1;
	}

	.Top_Menu_Mds {
	margin-top: 5rem;
	font-size: 3rem;
	line-height: 1.2;
	}

	.Top_Menu_Link {
	margin-top: 5rem;
	}

	.Top_Menu_Link a {
	width: 80%;
	margin-bottom: 3rem;
	padding-left: 2.6rem;
	padding-bottom: 1.6rem;
	font-size: 1.6rem;
	}

	/* 矢印アイコン */
	.Top_Menu_Link a::before {
	left: 0;
	top: 0;
	width: 1.7rem;
	height: 1.7rem;
	}
	
	.Top_Menu_Link a::after {
	left: 0.6rem;
	top: 0.6rem;
	width: 0.5rem;
	height: 0.5rem;
	}

}


/* FooterImage --------------------------------------------------- */

.FooterImage_Catch_Wrapper {
position: relative;
z-index: 2;
width: 100%;
overflow: hidden;
}

.FooterImage_Catch {
display: flex;
width: max-content;
will-change: transform;
transform: translateZ(0);
animation: marqueeScroll_FooterImage 14s linear infinite;
animation-delay: 0.1s;
}

.FooterImage_Catch_Txt {
white-space: nowrap;
}

@keyframes marqueeScroll_FooterImage {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}

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

	.FooterImage_Catch_Txt {
	padding-left: 8rem;
	font-size: 12.5rem;
	}

	.FooterImage_Photo_Top {
	margin-top: -9%;
	}

}

@media print, screen and (min-width: 768px) {

	.FooterImage_Catch_Txt {
	padding-left: 15rem;
	font-size: min(17.86vw, 25rem);
	}

	.FooterImage_Photo_Top {
	margin-top: -6%;
	}

}



/* ■ ABOUT：TOP ==================================================================================== */

/*
Box
IndexMenu
*/


/* Box --------------------------------------------------- */

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

	.Page_AboutTop::after {
	height: 33rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_AboutTop::after {
	height: 67rem;
	}

}


/* IndexMenu --------------------------------------------------- */

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

}

@media print, screen and (min-width: 768px) {

	.Page_AboutTop .IndexMenu_List_Lead_1 {
	margin-top: -8%;
	}

	.Page_AboutTop .IndexMenu_List_Lead_1.is_2Line {
	margin-top: -24%;
	}

}



/* ■ ABOUT：代表あいさつ ==================================================================================== */

/*
Box
PageTitle
TopMessage
FounderMessage
*/


/* Box --------------------------------------------------- */

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

	.Page_AboutMessage::after {
	height: 90rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_AboutMessage::after {
	height: 150rem;
	}

}


/* PageTitle --------------------------------------------------- */

.Page_AboutMessage .PageTitle {
margin-top: 0;
}


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

	.Page_AboutMessage .PageTitle_En {
	margin-top: -20%;
	}

}

@media print, screen and (min-width: 768px) {


	.Page_AboutMessage .PageTitle_En {
	margin-top: -10%;
	}

}


/* TopMessage --------------------------------------------------- */

.TopMessage_Name {
text-align: right;
}

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

	.TopMessage_Inner {
	display: grid;
	grid-template-columns: 1fr;
	padding: 5.5rem var(--m-lr) 0;
	}
	
	.TopMessage_Txt {
	display: contents;
	}
	
	.TopMessage_Mds {
	order: 1;
	font-size: 6rem;
	}
	
	.TopMessage_Photo {
	order: 2;
	margin-top: 2rem;
	}
	
	.TopMessage_Catch,
	.TopMessage_Lead,
	.TopMessage_Name {
	order: 3;
	}

	.TopMessage_Catch {
	margin-top: 3.5rem;
	font-size: 2.1rem;
	line-height: 1.7;
	}

	.TopMessage_Lead {
	margin-top: 3rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.TopMessage_Name {
	margin-top: 3rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

}

@media print, screen and (min-width: 768px) {

	.TopMessage {
	padding-left: var(--m-lr);
	padding-top: 10rem;
	}

	.TopMessage_Inner {
	display: flex;
	}

	.TopMessage_Txt {
	flex: 1;
	padding-right: 9.3%;
	}

	.TopMessage_Mds {
	font-size: min(8.6vw, 12rem);
	}

	.TopMessage_Catch {
	margin-top: 7rem;
	font-size: 3.2rem;
	line-height: 1.7;
	}

	.TopMessage_Lead {
	margin-top: 4rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.TopMessage_Name {
	margin-top: 4rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.TopMessage_Photo {
	width: 37%;
	}

}


/* FounderMessage --------------------------------------------------- */

.FounderMessage_Inner {
border: 1px solid var(--c-1);
}

.FounderMessage_Mds {
color: var(--c-1);
}

.FounderMessage_Name {
text-align: right;
}

.FounderMessage_Signature {
display: block;
}

.FounderMessage_Signature img {
display: inline-block;
}

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

	.FounderMessage {
	padding: 9rem var(--m-lr) 0;
	}

	.FounderMessage::after {
	top: 35rem;
	height: 100%;
	}

	.FounderMessage_Inner {
	display: flex;
	flex-flow: column;
	padding: 0 var(--m-lr) var(--m-lr);
	}

	.FounderMessage_Mds {
	order: 1;
	margin: -1.9rem -3rem 0 -3rem;
	font-size: 4rem;
	text-align: center;
	}

	.FounderMessage_Photo {
	margin-top: 2.5rem;
	order: 2;
	}

	.FounderMessage_Catch,
	.FounderMessage_Lead,
	.FounderMessage_Name {
	order: 3;
	}

	.FounderMessage_Catch {
	margin-top: 2.5rem;
	font-size: 2.1rem;
	line-height: 1.7;
	}

	.FounderMessage_Lead {
	margin-top: 2rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.FounderMessage_Name {
	margin-top: 2rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.FounderMessage_Signature {
	margin-bottom: 0.5rem;
	}

	.FounderMessage_Signature img {
	width: 32%;
	}

}

@media print, screen and (min-width: 768px) {

	.FounderMessage {
	padding: 15rem var(--m-lr) 0;
	}

	.FounderMessage::after {
	top: 41rem;
	height: 100%;
	}

	.FounderMessage_Inner {
	padding-bottom: 8rem;
	}

	.FounderMessage_Photo {
	float: right;
	width: 33.5%;
	margin-left: 6%;
	margin-bottom: 2%;
	}

	.FounderMessage_Mds {
	margin-top: -4.1rem;
	padding-left: 8rem;
	font-size: 8rem;
	line-height: 1.1;
	}

	.FounderMessage_Catch {
	margin-top: 4rem;
	padding-left: 8rem;
	font-size: 3.2rem;
	line-height: 1.7;
	}

	.FounderMessage_Lead {
	margin-top: 4rem;
	padding-left: 8rem;
	padding-right: 8rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.FounderMessage_Name {
	margin-top: 4rem;
	padding-left: 8rem;
	padding-right: 8rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.FounderMessage_Signature {
	margin-bottom: 1rem;
	}

	.FounderMessage_Signature img {
	width: 15%;
	}

}



/* ■ ABOUT：BEJについて ==================================================================================== */

/*
Box
AboutBEJ_Intro（共通）
AboutBEJ
OurIndustries
ParentCompany
CompanyProfile
*/


/* Box --------------------------------------------------- */

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

	.Page_AboutBEJ::after {
	height: 48rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_AboutBEJ::after {
	height: 100rem;
	}

}


/* AboutBEJ_Intro（共通） --------------------------------------------------- */

.AboutBEJ_Intro {
text-align: center;
}

.AboutBEJ_Intro_Mds {
letter-spacing: 0.05em;
color: var(--c-1);
}

.AboutBEJ_Intro_Catch {
letter-spacing: 0.1em;
}

.AboutBEJ_Intro_Lead {
text-align: left;
}

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

	.AboutBEJ_Intro_Num {
	font-size: 9rem;
	}

	.AboutBEJ_Intro_Mds {
	margin-top: 0.5rem;
	padding: 0.5rem 0;
	font-size: 4rem;
	line-height: 1.2;
	}

	.AboutBEJ_Intro_Catch {
	margin-top: 1rem;
	font-size: 1.8rem;
	line-height: 1.7;
	}

	.AboutBEJ_Intro_Lead {
	margin-top: 2rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

}

@media print, screen and (min-width: 768px) {

	.AboutBEJ_Intro_Num {
	font-size: 18rem;
	}

	.AboutBEJ_Intro_Mds {
	margin-top: 3rem;
	padding: 0.5rem 0;
	font-size: 6rem;
	}

	.AboutBEJ_Intro_Catch {
	margin-top: 4rem;
	font-size: 2.8rem;
	line-height: 1.9;
	}

	.AboutBEJ_Intro_Lead {
	max-width: 90rem;
	margin: 4rem auto 0;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

}


/* AboutBEJ --------------------------------------------------- */

.AboutBEJ_Group {
display: grid;
position: relative;
}

.AboutBEJ_Group_Logo {
display: flex;
align-items: center;
justify-content: center;
background-color: #f5f5f5;
}

.AboutBEJ_Group_NameEn,
.AboutBEJ_Group_NameJp,
.AboutBEJ_Group_Place {
text-align: center;
}

.AboutBEJ_Group_NameEn {
color: var(--c-1);
}

.AboutBEJ_Group_Place {
font-weight: 500;
}

.AboutBEJ_Group_Contact_Mds {
font-weight: 700;
}

.AboutBEJ_Group_Contact_Web {
word-break: break-all;
}

.AboutBEJ_Diagram {
border: 1px solid var(--c-1);
}

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

	.AboutBEJ {
	padding: 5rem var(--m-lr) 0;
	}

	.AboutBEJ .AboutBEJ_Intro_Num {
	margin-top: -4.5rem;
	}

	.AboutBEJ_Group {
	grid-template-columns: repeat(1, 1fr);
	gap: 3rem 0;
	margin-top: 3rem;
	}

	.AboutBEJ_Group_Each:first-of-type {
	padding-bottom: 3rem;
	border-bottom: 1px solid var(--c-1);
	}

	.AboutBEJ_Group_Logo img {
	padding: 6rem 24%;
	}

	.AboutBEJ_Group_NameEn {
	margin-top: 2rem;
	font-size: 2.3rem;
	line-height: 1.2;
	}

	.AboutBEJ_Group_NameJp {
	margin-top: 1.8rem;
	font-size: 1.4rem;
	line-height: 1.5;
	}

	.AboutBEJ_Group_Place {
	margin-top: 1.5rem;
	font-size: 1.4rem;
	}

	.AboutBEJ_Group_Lead {
	margin-top: 2.4rem;
	font-size: 1.3rem;
	line-height: 1.8;
	}

	.AboutBEJ_Group_Contact {
	margin-top: 2rem;
	}

	.AboutBEJ_Group_Contact_Mds {
	font-size: 1.3rem;
	}

	.AboutBEJ_Group_Contact_Address,
	.AboutBEJ_Group_Contact_Tel,
	.AboutBEJ_Group_Contact_Web {
	font-size: 1.2rem;
	line-height: 1.3;
	}

	.AboutBEJ_Group_Contact_Address {
	margin-top: 0.8rem;
	}

	.AboutBEJ_Group_Contact_Tel {
	margin-top: 0.5rem;
	}

	.AboutBEJ_Group_Contact_Web {
	margin-top: 0.2rem;
	letter-spacing: 0;
	}

	.AboutBEJ_Group_Contact_Web .LinkNewWin::before {
	top: 1.1rem;
	}

	.AboutBEJ_Group_Contact_Web .LinkNewWin::after {
	top: 0.8rem;
	}

	.AboutBEJ_Diagram {
	margin-top: 5rem;
	padding: 2rem 1.5rem 2rem;
	}

}

@media print, screen and (min-width: 768px) {

	.AboutBEJ {
	padding: 9rem var(--m-lr) 0;
	}

	.AboutBEJ .AboutBEJ_Intro_Num {
	margin-top: -11rem;
	}

	.AboutBEJ_Group {
	grid-template-columns: repeat(2, 1fr);
	gap: 0 16rem;
	margin-top: 6rem;
	}

	.AboutBEJ_Group::after {
	position: absolute;
	left: 50%;
	top: 0;
	width: 1px;
	height: 100%;
	background-color: var(--c-1);
	content: "";
	}

	.AboutBEJ_Group_Each {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 6;
	gap: 0;
	}

	.AboutBEJ_Group_Logo img {
	max-width: 25.3rem;
	padding: 8rem 0;
	}

	.AboutBEJ_Group_NameEn {
	margin-top: 3.5rem;
	font-size: 3rem;
	}

	.AboutBEJ_Group_NameJp {
	margin-top: 2rem;
	font-size: 1.5rem;
	line-height: 1.5;
	}

	.AboutBEJ_Group_Place {
	margin-top: 1.5rem;
	font-size: 1.5rem;
	}

	.AboutBEJ_Group_Lead {
	margin-top: 2.5rem;
	font-size: 1.5rem;
	line-height: 1.7;
	}

	.AboutBEJ_Group_Contact {
	margin-top: 2rem;
	}

	.AboutBEJ_Group_Contact_Mds {
	font-size: 1.5rem;
	}

	.AboutBEJ_Group_Contact_Address,
	.AboutBEJ_Group_Contact_Tel,
	.AboutBEJ_Group_Contact_Web {
	font-size: 1.4rem;
	line-height: 1.3;
	}

	.AboutBEJ_Group_Contact_Address {
	margin-top: 1rem;
	}

	.AboutBEJ_Group_Contact_Tel {
	margin-top: 0.5rem;
	}

	.AboutBEJ_Group_Contact_Web {
	margin-top: 0.5rem;
	}

	.AboutBEJ_Diagram {
	margin-top: 8rem;
	padding: 7rem 5rem 8rem;
	}

}


/* OurIndustries --------------------------------------------------- */

.OurIndustries_Cate {
display: grid;
}

.OurIndustries_Cate_Mds,
.OurIndustries_Cate_Catch {
text-align: center;
}

.OurIndustries_Cate_Mds {
letter-spacing: 0.05em;
color: var(--c-1);
}

.OurIndustries_Cate_Catch {
letter-spacing: 0.15em;
}

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

	.OurIndustries {
	padding: 8rem var(--m-lr) 0;
	}

	.OurIndustries::after {
	top: 12.5rem;
	height: 41.5%;
	}

	.OurIndustries_Cate {
	grid-template-columns: repeat(1, 1fr);
	gap: 3rem 0;
	margin-top: 4rem;
	padding: 0 3.5rem;
	}

	.OurIndustries_Cate_Mds {
	margin-top: 2rem;
	font-size: 2.5rem;
	line-height: 1.15;
	}

	.OurIndustries_Cate_Catch {
	margin-top: 1rem;
	font-size: 1.4rem;
	line-height: 1.8;
	}

	.OurIndustries_Cate_Lead {
	margin-top: 1rem;
	font-size: 1.3rem;
	line-height: 1.9;
	}

}

@media print, screen and (min-width: 768px) {

	.OurIndustries {
	padding: 15rem var(--m-lr) 0;
	}

	.OurIndustries::after {
	top: 25rem;
	height: 65%;
	}

	.OurIndustries_Cate {
	grid-template-columns: repeat(3, 1fr);
	gap: 6rem 1rem;
	margin-top: 6rem;
	}

	.OurIndustries_Cate_Each {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	gap: 0;
	}

	.OurIndustries_Cate_Mds,
	.OurIndustries_Cate_Catch,
	.OurIndustries_Cate_Lead {
	padding: 0 10%;
	}

	.OurIndustries_Cate_Mds {
	align-self: center;
	margin-top: 3rem;
	font-size: 3rem;
	line-height: 1.15;
	}

	.OurIndustries_Cate_Catch {
	margin-top: 1.8rem;
	font-size: 1.5rem;
	line-height: 1.8;
	}

	.OurIndustries_Cate_Lead {
	margin-top: 1rem;
	font-size: 1.5rem;
	line-height: 1.8;
	}

}


/* ParentCompany --------------------------------------------------- */

.ParentCompany .AboutBEJ_Intro_Catch {
font-style: italic;
}

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

	.ParentCompany {
	padding: 8rem var(--m-lr) 0;
	}

	.ParentCompany .AboutBEJ_Intro_Num {
	margin-top: -4.5rem;
	}

	.ParentCompany::after {
	top: 24rem;
	height: 51%;
	}

}

@media print, screen and (min-width: 768px) {

	.ParentCompany {
	padding: 15rem var(--m-lr) 0;
	}

	.ParentCompany .AboutBEJ_Intro_Photo {
	max-width: 90rem;
	margin: 0 auto;
	}

	.ParentCompany .AboutBEJ_Intro_Num {
	margin-top: -11rem;
	}

	.ParentCompany::after {
	top: 32rem;
	height: 65%;
	}

}


/* ParentCompany --------------------------------------------------- */

.CompanyProfile_Detail {
border-top: 1px solid #d6d6d6;
}

.CompanyProfile_Detail dl {
border-bottom: 1px solid #d6d6d6;
}

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

	.CompanyProfile {
	padding: 8rem var(--m-lr) 0;
	}

	.CompanyProfile::after {
	top: 12.5rem;
	height: 100%;
	}

	.CompanyProfile_Detail {
	margin-top: 3rem;
	}

	.CompanyProfile_Detail dl {
	padding: 1.2rem 0;
	}

	.CompanyProfile_Detail dd {
	margin-top: 0.4rem;
	}

}

@media print, screen and (min-width: 768px) {

	.CompanyProfile {
	padding: 15rem var(--m-lr) 0;
	}

	.CompanyProfile::after {
	top: 25rem;
	height: 100%;
	}

	.CompanyProfile_Detail {
	max-width: 90rem;
	margin: 4rem auto 0;
	}

	.CompanyProfile_Detail dl {
	padding: 2rem 1rem;
	}

	.CompanyProfile_Detail dt {
	width: 14rem;
	}

}



/* ■ ABOUT：企業メッセージ ==================================================================================== */

/*
Box
導入
Statement
*/


/* Box --------------------------------------------------- */

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

	.Page_AboutStatement::after {
	height: 45rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_AboutStatement::after {
	height: 98rem;
	}

}


/* 導入 --------------------------------------------------- */

.Statement_Intro_Mds_En_1,
.Statement_Intro_Mds_En_2 {
color: var(--c-1);
text-align: center;
}

.Statement_Intro_Mds {
letter-spacing: 0.1em;
text-align: center;
}

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

	.Statement_Intro {
	margin-top: 4.5rem;
	}

	.Statement_Intro_Inner {
	padding: 0 var(--m-lr);
	}

	.Statement_Intro_Mds_En_1 {
	margin-top: -12%;
	font-size: min(17.33vw, 6.5rem);
	line-height: 1.1;
	}

	.Statement_Intro_Mds_En_2 {
	margin-top: 1.1rem;
	font-size: min(9.33vw, 3.5rem);
	}

	.Statement_Intro_Mds {
	margin-top: 2rem;
	font-size: 1.8rem;
	line-height: 1.8;
	}

}

@media print, screen and (min-width: 768px) {

	.Statement_Intro {
	margin-top: 9rem;
	}

	.Statement_Intro_Inner {
	padding: 0 var(--m-lr);
	}

	.Statement_Intro_Mds_En_1 {
	margin-top: -5.5%;
	font-size: min(8.57vw, 12rem);
	}

	.Statement_Intro_Mds_En_2 {
	margin-top: 3rem;
	font-size: min(4.28vw, 6rem);
	}

	.Statement_Intro_Mds {
	margin-top: 5rem;
	font-size: 2.8rem;
	}

}


/* Statement --------------------------------------------------- */

.Statement {
text-align: center;
}

.Statement + .Statement .Statement_Inner {
border-top: 1px solid var(--c-1);
}

.Statement_Mds_En {
letter-spacing: 0.05em;
color: var(--c-1);
}

.Statement_Mds {
letter-spacing: 0.1em;
color: var(--c-1);
}

.Statement_Mds_Sub {
font-weight: 700;
}

.Statement_Lead {
font-weight: 500;
}

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

	.Statement {
	margin-top: 6rem;
	padding: 0 var(--m-lr);
	}

	.Statement + .Statement {
	margin-top: 4rem;
	}

	.Statement + .Statement .Statement_Inner {
	padding-top: 4rem;
	}

	.Statement_Mds_Num {
	font-size: 6rem;
	}

	.Statement_Mds_En {
	margin-top: 1.6rem;
	font-size: 6rem;
	}

	.Statement_Mds {
	margin-top: 2.4rem;
	font-size: 1.9rem;
	}

	.Statement_Txt {
	margin-top: 3rem;
	}

	.Statement_Mds_Sub {
	margin-top: 3.5rem;
	margin-bottom: 1.2rem;
	font-size: 1.6rem;
	}

	.Statement_Lead {
	font-size: 1.4rem;
	line-height: 2.2;
	}

}

@media print, screen and (min-width: 768px) {

	.Statement {
	margin-top: 12rem;
	padding: 0 17.85%;
	}

	.Statement + .Statement {
	margin-top: 8rem;
	}

	.Statement + .Statement .Statement_Inner {
	padding-top: 8rem;
	}

	.Statement_Mds_Num {
	font-size: 8rem;
	}

	.Statement_Mds_En {
	margin-top: 2.4rem;
	font-size: 10rem;
	}

	.Statement_Mds {
	margin-top: 3.2rem;
	font-size: 2.8rem;
	}

	.Statement_Txt {
	margin-top: 4rem;
	}

	.Statement_Mds_Sub {
	margin-top: 5rem;
	margin-bottom: 1.2rem;
	font-size: 2rem;
	}

	.Statement_Lead {
	font-size: 1.6rem;
	line-height: 2.2;
	}

}



/* ■ ABOUT：私たちの強み ==================================================================================== */

/*
Box
導入
Value
矢印
Answer
*/


/* Box --------------------------------------------------- */

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

	.Page_AboutValue::after {
	height: 47rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_AboutValue::after {
	height: 92.5rem;
	}

}


/* 導入 --------------------------------------------------- */

.Value_Intro_Mds {
letter-spacing: 0.1em;
text-align: center;
}

.Value_Intro_Lead {
font-weight: 500;
}

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

	.Value_Intro {
	margin-top: 5.5rem;
	}

	.Value_Intro_Inner {
	padding: 0 var(--m-lr);	
	}

	.Value_Intro_Mds {
	font-size: 1.8rem;
	}

	.Value_Intro_Lead {
	margin-top: 3rem;
	font-size: 1.3rem;
	line-height: 2.2;
	letter-spacing: 0.05em;
	}

}

@media print, screen and (min-width: 768px) {

	.Value_Intro {
	margin-top: 9rem;
	}

	.Value_Intro_Inner {
	padding: 0 var(--m-lr);	
	}

	.Value_Intro_Mds {
	font-size: 2.8rem;
	}

	.Value_Intro_Lead {
	margin-top: 4rem;
	font-size: 1.6rem;
	line-height: 2.2;
	text-align: center;
	}

}


/* Value --------------------------------------------------- */

.Value_Inner {
position: relative;
}

.Value_Each {
position: absolute;
left: 0;
top: 0;
}

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

	.Value {
	margin-top: 4rem;
	padding: 0 1.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Value {
	margin-top: 10rem;
	padding: 0 20%;
	}

}


/* 矢印 --------------------------------------------------- */

.Value_Arrow {
text-align: center;
}

.Value_Arrow img {
display: inline-block;
}

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

	.Value_Arrow {
	margin-top: 4rem;
	}

	.Value_Arrow img {
	max-width: 20rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Value_Arrow {
	margin-top: 6.5rem;
	}

	.Value_Arrow img {
	max-width: 40rem;
	}

}


/* Answer --------------------------------------------------- */

.Value_Answer {
text-align: center;
}

.Value_Answer img {
display: inline-block;
}

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

	.Value_Answer {
	margin-top: 4rem;
	}

	.Value_Answer img {
	max-width: 30rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Value_Answer {
	margin-top: 6.5rem;
	}

	.Value_Answer img {
	max-width: 59rem;
	}

}



/* ■ ABOUT：沿革 ==================================================================================== */

/*
Box
History
装飾
アニメーション
*/


/* Box --------------------------------------------------- */

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

	.Page_AboutHistory::after {
	height: 29rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_AboutHistory::after {
	height: 51rem;
	}

}


/* History --------------------------------------------------- */

.History_Period,
.History_Year_Wrap {
position: relative;
}

.History_Year_Mds {
position: relative;
letter-spacing: 0.1em;
color: var(--c-1);
}

.History_Year_Episode {
font-weight: 700;
color: #fff;
background-color: var(--c-1);
}

.History_Image {
display: grid;
gap: 0.1rem;
position: relative;
}

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

	.History {
	padding: 8rem var(--m-lr) 0;
	}

	.History_Period {
	padding-left: 3.5rem;
	}

	.History_Period:last-of-type {
	padding-bottom: 2rem;
	}

	.History_Period_Mds {
	font-size: 4.5rem;
	}

	.History_Period:not(:first-of-type) .History_Period_Mds {
	padding-top: 4rem;
	}

	.History_Year_Mds {
	margin-top: 2rem;
	font-size: 1.7rem;
	}

	.History_Year_Lead {
	margin-top: 0.5rem;
	font-size: var(--f-m);
	line-height: 1.8;
	}

	.History_Year:not(:has(.History_Year_Mds)) .History_Year_Lead {
	margin-top: 1.5rem;
	}

	.History_Year_Photo {
	width: 80%;
	margin-top: 2rem;
	}

	.History_Year_Episode {
	margin-left: -3.5rem;
	margin-top: 2rem;
	padding: 0.7rem 1.2rem 0.9rem 3.5rem;
	font-size: var(--f-m);
	line-height: 1.6;
	}

	.History_Image {
	grid-template-columns: repeat(1, 1fr);
	margin-left: -6.5rem;
	margin-right: -3rem;
	padding: 4rem 0 0;
	}

}

@media print, screen and (min-width: 768px) {

	.History {
	padding: 15rem var(--m-lr) 0;
	}

	.History_Period {
	display: flex;
	}

	.History_Period_Mds {
	width: 17rem;
	padding-top: 3rem;
	font-size: 8rem;
	}

	.History_Period:first-of-type .History_Period_Mds {
	padding-top: 1rem;
	}

	.History_Year_Wrap {
	flex: 1;
	padding-top: 5.7rem;
	}

	.History_Period:first-of-type .History_Year_Wrap {
	padding-top: 4rem;
	}

	.History_Period:last-of-type .History_Year_Wrap {
	padding-bottom: 7rem;
	}

	.History_Year:not(:first-of-type) {
	margin-top: 3rem;
	}

	.History_Year_Mds,
	.History_Year_Lead,
	.History_Year_Photo {
	padding-left: min(16%, 18rem);
	}

	.History_Year_Mds {
	font-size: 2.2rem;
	}

	.History_Year_Lead {
	margin-top: 0.5rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.History_Year_Photo {
	width: 70%;
	margin-top: 2rem;
	}

	.History_Year_Episode {
	margin-top: 3rem;
	padding: 1.2rem 2rem 1.4rem min(16%, 18rem);
	font-size: var(--f-m);
	line-height: 1.6;
	}

	.History_Image {
	grid-template-columns: repeat(2, 1fr);
	margin-left: calc((10.7vw * -1) - 18rem);
	margin-right: calc(10.7vw * -1);
	padding: 8rem 0 4rem;
	}

}


/* 装飾 --------------------------------------------------- */

/* 年の棒引き */
.History_Year_Mds::before,
.History_Year_Mds::after {
position: absolute;
content: "";
}

.History_Year_Mds::before {
z-index: 2;
border-radius: 100vh;
background-color: #a0c1b2;
}

.History_Year_Mds::after {
width: 50%;
height: 0.1rem;
background-color: #a0c1b2;
}

.History_Year_Mds span {
display: block;
position: relative;
z-index: 2;
background-color: #fff;
}

.History_Year_Mds span::before {
position: absolute;
top: 0;
height: 100%;
background-color: #fff;
content: "";
}

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

	/* 縦軸のライン */
	.History_Period::before,
	.History_Period::after {
	position: absolute;
	left: 0;
	width: 1.5rem;
	background-color: #d0e5dc;
	content: "";
	}

	.History_Period::before {
	top: 0;
	height: 100%;
	}
	
	.History_Period::after {
	bottom: -0.75rem;
	height: 0.75rem;
	clip-path: polygon(0 0, 100% 0%, 50% 100%);
	}

	/* 年の棒引き */
	.History_Year_Mds::before,
	.History_Year_Mds::after {
	top: 52%;
	}

	.History_Year_Mds::before {
	left: -3rem;
	width: 0.5rem;
	height: 0.5rem;
	margin-top: -0.2rem;
	background-color: var(--c-1);
	}

	.History_Year_Mds::after {
	left: -3rem;
	}

	.History_Year_Mds span::before {
	left: -0.5rem; 
	width: 0.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	/* 縦軸のライン */
	.History_Year_Wrap::before,
	.History_Year_Wrap::after {
	position: absolute;
	left: 0;
	width: 3rem;
	background-color: #d0e5dc;
	content: "";
	}

	.History_Year_Wrap::before {
	top: 0;
	height: 100%;
	}
	
	.History_Year_Wrap::after {
	bottom: -1.5rem;
	height: 1.5rem;
	clip-path: polygon(0 0, 100% 0%, 50% 100%);
	}

	/* 年の棒引き */
	.History_Year_Mds::before,
	.History_Year_Mds::after {
	top: 55%;
	}

	.History_Year_Mds::before {
	left: 1rem;
	width: 1rem;
	height: 1rem;
	margin-top: -0.5rem;
	background-color: var(--c-1);
	}

	.History_Year_Mds::after {
	left: 1.5rem;
	margin-top: -0.05rem;
	}

	.History_Year_Mds span::before {
	left: -1.6rem; 
	width: 1.6rem;
	}

}


/* アニメーション --------------------------------------------------- */



/* ■ ABOUT：協力会社 ==================================================================================== */

/*
Box
タブメニュー
地図
Detail
*/


/* Box --------------------------------------------------- */

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

	.Page_AboutAlliance::after {
	height: 39rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_AboutAlliance::after {
	height: 135rem;
	}

}


/* タブメニュー --------------------------------------------------- */

.Group_TabMenu_Tab {
display: grid;
grid-template-columns: repeat(7, 1fr);
}

.Group_TabMenu_Tab a {
display: flex;
justify-content: center;
align-items: center;
position: relative;
border-bottom-style: solid;
text-align: center;
}

.Group_TabMenu_Tab li:nth-child(1) a {
font-size: 2.8rem;
border-color: #aeaeae;
color: #aeaeae;
background-color: #e8e8e8;
}

.Group_TabMenu_Tab li:nth-child(1) a.is_Active {
color: #fff;
background-color: #aeaeae;
}

.Group_TabMenu_Tab li:nth-child(1) a.is_Active::after {
background-color: #aeaeae;
}

.Group_TabMenu_Tab li:nth-child(2) a {
border-color: #219962;
color: #219962;
background-color: #d3e7de;
}

.Group_TabMenu_Tab li:nth-child(2) a.is_Active {
color: #fff;
background-color: #219962;
}

.Group_TabMenu_Tab li:nth-child(2) a.is_Active::after {
background-color: #219962;
}

.Group_TabMenu_Tab li:nth-child(3) a {
border-color: #f08952;
color: #f08952;
background-color: #f4ded3;
}

.Group_TabMenu_Tab li:nth-child(3) a.is_Active {
color: #fff;
background-color: #f08952;
}

.Group_TabMenu_Tab li:nth-child(3) a.is_Active::after {
background-color: #f08952;
}

.Group_TabMenu_Tab li:nth-child(4) a {
border-color: #d2b64b;
color: #d2b64b;
background-color: #f0e9cf;
}

.Group_TabMenu_Tab li:nth-child(4) a.is_Active {
color: #fff;
background-color: #d2b64b;
}

.Group_TabMenu_Tab li:nth-child(4) a.is_Active::after {
background-color: #d2b64b;
}

.Group_TabMenu_Tab li:nth-child(5) a {
border-color: #3d86bd;
color: #3d86bd;
background-color: #c9dded;
}

.Group_TabMenu_Tab li:nth-child(5) a.is_Active {
color: #fff;
background-color: #3d86bd;
}

.Group_TabMenu_Tab li:nth-child(5) a.is_Active::after {
background-color: #3d86bd;
}

.Group_TabMenu_Tab li:nth-child(6) a {
border-color: #af63a7;
color: #af63a7;
background-color: #f4ddf2;
}

.Group_TabMenu_Tab li:nth-child(6) a.is_Active {
color: #fff;
background-color: #af63a7;
}

.Group_TabMenu_Tab li:nth-child(6) a.is_Active::after {
background-color: #af63a7;
}

.Group_TabMenu_Tab li:nth-child(7) a {
border-color: #ec75b2;
color: #ec75b2;
background-color: #f4ddf2;
}

.Group_TabMenu_Tab li:nth-child(7) a.is_Active {
color: #fff;
background-color: #ec75b2;
}

.Group_TabMenu_Tab li:nth-child(7) a.is_Active::after {
background-color: #ec75b2;
}

.Group_TabMenu_Tab a.is_Active::after {
position: absolute;
left: 50%;
clip-path: polygon(0 0, 100% 0%, 50% 100%);
content: "";
}

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

	.Group_TabMenu_Tab_Wrap {
	margin-top: 4rem;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	}

	.Group_TabMenu_Tab {
	gap: 0.3rem;
	max-width: 100%;
	min-width: 84rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	padding-bottom: 2rem;
	}

	.Group_TabMenu_Tab a {
	height: 8rem;
	padding: 0 0.5rem;
	border-bottom-width: 4px;
	font-size: 1.5rem;
	line-height: 1.1;
	letter-spacing: 0.02em;
	}

	.Group_TabMenu_Tab li:nth-child(1) a {
	font-size: 1.8rem;
	}

	.Group_TabMenu_Tab a.is_Active::after {
	bottom: -1.35rem;
	width: 1.4rem;
	height: 1rem;
	margin-left: -0.7rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Group_TabMenu_Tab {
	gap: 0.5rem;
	padding: 15rem var(--m-lr) 0;
	}

	.Group_TabMenu_Tab a {
	height: 15rem;
	padding: 0 1rem;
	border-bottom-width: 5px;
	font-size: 2rem;
	line-height: 1.3;
	}

	.Group_TabMenu_Tab a.is_Active::after {
	bottom: -1.75rem;
	width: 2.6rem;
	height: 1.3rem;
	margin-left: -1.3rem;
	}

}

@media (hover: hover) {

	.Group_TabMenu_Tab a.is_Active:hover {
	opacity: 1;
	}

}


/* 地図 --------------------------------------------------- */

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

	.Group_TabMenu_Contents {
	margin-top: 0;	
	}

	.Group_TabMenu_Contents_Map {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	}

	.Group_TabMenu_Contents_Map img {
	max-width: 100%;
	min-width: 120rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Group_TabMenu_Contents {
	margin-top: 4rem;	
	}

}


/* Detail --------------------------------------------------- */

.Group_TabMenu_Contents_Mds {
border-top: 1px solid #e0e0e0;
text-align: center;
}

.Group_TabMenu_Contents_Detail.Detail_1 .Group_TabMenu_Contents_Mds {
color: #219962;
}

.Group_TabMenu_Contents_Detail.Detail_2 .Group_TabMenu_Contents_Mds {
color: #f08952;
}

.Group_TabMenu_Contents_Detail.Detail_3 .Group_TabMenu_Contents_Mds {
color: #d2b64b;
}

.Group_TabMenu_Contents_Detail.Detail_4 .Group_TabMenu_Contents_Mds {
color: #3d86bd;
}

.Group_TabMenu_Contents_Detail.Detail_5 .Group_TabMenu_Contents_Mds {
color: #af63a7;
}

.Group_TabMenu_Contents_Detail.Detail_6 .Group_TabMenu_Contents_Mds {
color: #ec75b2;
}

.Group_TabMenu_Contents_Outline dt span {
display: inline-block;
width: 100%;
font-weight: 700;
text-align: center;
color: #fff;
}

.Group_TabMenu_Contents_Detail.Detail_2 .Group_TabMenu_Contents_Outline dt span {
color: #f08952;
background-color: #fde8de;
}

.Group_TabMenu_Contents_Detail.Detail_3 .Group_TabMenu_Contents_Outline dt span {
color: #bda238;
background-color: #fbf3d9;
}

.Group_TabMenu_Contents_Detail.Detail_4 .Group_TabMenu_Contents_Outline dt span {
color: #3d86bd;
background-color: #e4edf5;
}

.Group_TabMenu_Contents_Detail.Detail_5 .Group_TabMenu_Contents_Outline dt span {
color: #af63a7;
background-color: #ffe9fd;
}

.Group_TabMenu_Contents_Detail.Detail_6 .Group_TabMenu_Contents_Outline dt span {
color: #ec75b2;
background-color: #ffe9fd;
}

.Group_TabMenu_Contents_List {
display: grid;
}

.Group_TabMenu_Contents_Link {
text-align: center;
}

.Group_TabMenu_Contents_Link a {
display: inline-block;
letter-spacing: 0.1em;
text-align: left;
}

.Group_TabMenu_Contents_Detail.Detail_1 .Group_TabMenu_Contents_Link a {
border: 1px solid #d3e7de;
color: var(--c-1);
}

.Group_TabMenu_Contents_Detail.Detail_1 .Group_TabMenu_Contents_Link a::before,
.Group_TabMenu_Contents_Detail.Detail_1 .Group_TabMenu_Contents_Link a::after {
border-color: var(--c-1);
}

.Group_TabMenu_Contents_Detail.Detail_2 .Group_TabMenu_Contents_Link a {
border: 1px solid #f4ded3;
color: #f08952;
}

.Group_TabMenu_Contents_Detail.Detail_2 .Group_TabMenu_Contents_Link a::before,
.Group_TabMenu_Contents_Detail.Detail_2 .Group_TabMenu_Contents_Link a::after {
border-color: #f08952;
}

.Group_TabMenu_Contents_Detail.Detail_3 .Group_TabMenu_Contents_Link a {
border: 1px solid #f0e9cf;
color: #bda238;
}

.Group_TabMenu_Contents_Detail.Detail_3 .Group_TabMenu_Contents_Link a::before,
.Group_TabMenu_Contents_Detail.Detail_3 .Group_TabMenu_Contents_Link a::after {
border-color: #bda238;
}

.Group_TabMenu_Contents_Detail.Detail_4 .Group_TabMenu_Contents_Link a {
border: 1px solid #accfea;
color: #3d86bd;
}

.Group_TabMenu_Contents_Detail.Detail_4 .Group_TabMenu_Contents_Link a::before,
.Group_TabMenu_Contents_Detail.Detail_4 .Group_TabMenu_Contents_Link a::after {
border-color: #3d86bd;
}

.Group_TabMenu_Contents_Detail.Detail_5 .Group_TabMenu_Contents_Link a {
border: 1px solid #f4ddf2;
color: #af63a7;
}

.Group_TabMenu_Contents_Detail.Detail_5 .Group_TabMenu_Contents_Link a::before,
.Group_TabMenu_Contents_Detail.Detail_5 .Group_TabMenu_Contents_Link a::after {
border-color: #af63a7;
}

.Group_TabMenu_Contents_Detail.Detail_6 .Group_TabMenu_Contents_Link a {
border: 1px solid #f4ddf2;
color: #ec75b2;
}

.Group_TabMenu_Contents_Detail.Detail_6 .Group_TabMenu_Contents_Link a::before,
.Group_TabMenu_Contents_Detail.Detail_6 .Group_TabMenu_Contents_Link a::after {
border-color: #ec75b2;
}

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

	.Group_TabMenu_Contents_Detail {
	padding: 2rem var(--m-lr) 0;
	}

	.Group_TabMenu_Contents_Mds {
	padding-top: 3rem;
	font-size: min(10.66vw, 4rem);
	line-height: 1.2;
	}

	.Group_TabMenu_Contents_Logo {
	margin: 3rem auto 0;
	}

	.Group_TabMenu_Contents_Detail.Detail_1 .Group_TabMenu_Contents_Logo {
	max-width: calc(29rem / 2);
	}

	.Group_TabMenu_Contents_Detail.Detail_2 .Group_TabMenu_Contents_Logo {
	max-width: 28rem;
	}

	.Group_TabMenu_Contents_Detail.Detail_3 .Group_TabMenu_Contents_Logo {
	max-width: calc(28rem / 2);
	}

	.Group_TabMenu_Contents_Detail.Detail_4 .Group_TabMenu_Contents_Logo {
	max-width: calc(38rem / 2);
	}

	.Group_TabMenu_Contents_Detail.Detail_5 .Group_TabMenu_Contents_Logo {
	max-width: calc(28rem / 2);
	}

	.Group_TabMenu_Contents_Detail.Detail_6 .Group_TabMenu_Contents_Logo {
	max-width: calc(30rem / 2);
	}

	.Group_TabMenu_Contents_Lead {
	margin-top: 3rem;
	font-size: 1.3rem;
	line-height: 2.2;
	}

	.Group_TabMenu_Contents_Outline {
	margin-top: 3rem;
	}

	.Group_TabMenu_Contents_Outline dl {
	gap: 1rem;
	margin-top: 2rem;
	}

	.Group_TabMenu_Contents_Outline dt {
	width: 11rem;
	}

	.Group_TabMenu_Contents_Outline dt span {
	padding: 0.2rem 0;
	}

	.Group_TabMenu_Contents_Outline dd {
	padding: 0.2rem 0;
	}

	.Group_TabMenu_Contents_List {
	grid-template-columns: repeat(1, 1fr);
	gap: 1rem;
	margin-top: 3rem;
	}

	.Group_TabMenu_Contents_Link {
	margin-top: 4rem;
	}

	.Group_TabMenu_Contents_Link a {
	width: 26.5rem;
	padding: 1rem 2rem 1.1rem;
	font-size: 1.6rem;
	}

	.Group_TabMenu_Contents_Link a::before {
	right: 2rem;
	top: 2.4rem;
	}

	.Group_TabMenu_Contents_Link a::after {
	right: 2.2rem;
	top: 2.1rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Group_TabMenu_Contents_Detail {
	padding: 4rem var(--m-lr) 0;
	}

	.Group_TabMenu_Contents_Mds {
	padding-top: 6rem;
	font-size: min(5.71vw, 8rem);
	}

	.Group_TabMenu_Contents_Logo {
	margin: 6rem auto 0;
	}

	.Group_TabMenu_Contents_Detail.Detail_1 .Group_TabMenu_Contents_Logo {
	max-width: 29rem;
	}

	.Group_TabMenu_Contents_Detail.Detail_2 .Group_TabMenu_Contents_Logo {
	max-width: 50rem;
	}

	.Group_TabMenu_Contents_Detail.Detail_3 .Group_TabMenu_Contents_Logo {
	max-width: 28rem;
	}

	.Group_TabMenu_Contents_Detail.Detail_4 .Group_TabMenu_Contents_Logo {
	max-width: 38rem;
	}

	.Group_TabMenu_Contents_Detail.Detail_5 .Group_TabMenu_Contents_Logo {
	max-width: 28rem;
	}

	.Group_TabMenu_Contents_Detail.Detail_6 .Group_TabMenu_Contents_Logo {
	max-width: 30rem;
	}

	.Group_TabMenu_Contents_Lead {
	margin-top: 6rem;
	padding: 0 7.14%;
	font-size: 1.5rem;
	line-height: 2.2;
	}

	.Group_TabMenu_Contents_Outline {
	margin-top: 4rem;
	padding: 0 7.14%;
	}

	.Group_TabMenu_Contents_Outline dl {
	gap: 1rem;
	margin-top: 2rem;
	}

	.Group_TabMenu_Contents_Outline dt {
	width: 11rem;
	}

	.Group_TabMenu_Contents_Outline dt span {
	padding: 0.2rem 0;
	}

	.Group_TabMenu_Contents_Outline dd {
	padding: 0.2rem 0;
	}

	.Group_TabMenu_Contents_List {
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem 3rem;
	margin-top: 6rem;
	padding: 0 6%;
	}

	.Group_TabMenu_Contents_Link {
	margin-top: 6rem;
	}

	.Group_TabMenu_Contents_Link a {
	width: 26.5rem;
	padding: 1rem 2rem 1.1rem;
	font-size: 1.6rem;
	}

	.Group_TabMenu_Contents_Link a::before {
	right: 2rem;
	top: 2.4rem;
	}

	.Group_TabMenu_Contents_Link a::after {
	right: 2.2rem;
	top: 2.1rem;
	}

}



/* ■ ABOUT：主要メーカー ==================================================================================== */

/*
Box
Partner
*/


/* Box --------------------------------------------------- */

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

	.Page_AboutPartner::after {
	height: 39rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_AboutPartner::after {
	height: 51rem;
	}

}


/* Partner --------------------------------------------------- */

.Partner_List {
display: grid;
}

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

	.Partner {
	margin-top: 2rem;
	}

	.Partner_Inner {
	padding: 0 var(--m-lr);
	}

	.Partner_List {
	grid-template-columns: repeat(2, 1fr);
	gap: 0;
	}

}

@media print, screen and (min-width: 768px) {

	.Partner {
	margin-top: 6rem;
	}

	.Partner_Inner {
	padding: 0 var(--m-lr);
	}

	.Partner_List {
	grid-template-columns: repeat(4, 1fr);
	gap: 0.7rem;
	}

}



/* ■ ABOUT：スタッフ コメント ==================================================================================== */

/*
Box
STAFF COMMENTS
ページネーション
パンくず
*/


/* Box --------------------------------------------------- */

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

	.Page_AboutStaff::after {
	height: 39rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_AboutStaff::after {
	height: 51rem;
	}

}


/* STAFF COMMENTS --------------------------------------------------- */

.StaffComments {
padding-top: 0.1rem;
background-color: #333;
}

.StaffComments_Mds {
text-align: center;
color: var(--c-1);
}

.StaffComments_List {
display: grid;
}

.StaffComments_List li {
overflow: hidden;
}

.StaffComments_Each {
position: relative;
}

.StaffComments_Photo_Wrap {
position: relative;
}

.StaffComments_Photo_Wrap_On::before {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: #000;
opacity: 0.3;
content: "";
}

.StaffComments_Lead {
position: absolute;
left: 0;
bottom: 0;
font-weight: 500;
color: #fff;
}

.StaffComments_Name {
position: relative;
text-align: center;
}

.StaffComments_Name:not(.is_Outlined) {
color: var(--c-1);
}

.StaffComments_Name.is_Outlined {
transform: none;
}

.StaffComments_Each	.swiper-cube-shadow,
.StaffComments_Each	.swiper-slide {
transform-style: flat !important;
}

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

	.StaffComments {
	margin-top: 8rem;
	}

	.StaffComments_Mds {
	margin-top: -5.2%;
	font-size: 4rem;
	}

	.StaffComments_Inner {
	padding: 0 4.5rem 4rem;
	}

	.StaffComments_List {
	grid-template-columns: repeat(1, 1fr);
	gap: 0;
	}

	.StaffComments_List li {
	padding: 20% 0;
	}

	.StaffComments_Name {
	margin-top: -7.5%;
	font-size: 4rem;
	}

	.StaffComments_Lead {
	padding: 10% 10% 15%;
	font-size: 1.2rem;
	line-height: 1.8;
	}

}

@media print, screen and (min-width: 768px) {

	.StaffComments {
	margin-top: 18rem;
	}

	.StaffComments_Mds {
	margin-top: -2.5%;
	font-size: 8rem;
	}

	.StaffComments_Inner {
	padding: 2rem 15% 10rem;
	}

	.StaffComments_List {
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem 4rem;
	}

	.StaffComments_List li {
	padding: 15% 0;
	}

	.StaffComments_Name {
	margin-top: -8%;
	font-size: min(4vw, 5.6rem);
	}

	.StaffComments_Lead {
	padding: 10% 10% 18%;
	font-size: min(1.07vw, 1.5rem);
	line-height: 2;
	}

}


/* ページネーション --------------------------------------------------- */

.StaffComments_Each .swiper-pagination {
display: flex;
justify-content: center;
align-items: center;
font-weight: 600;
font-family: "Barlow Condensed", sans-serif;
color: var(--c-1);
}

.StaffComments_Each .swiper-pagination::before {
content: "COMMENT";
}

.StaffComments_Each .swiper-pagination-bullet {
display: flex;
align-items: center;
justify-content: center;
border-radius: inherit;
color: #fff;
background-color: #bebebe;
opacity: 1;
cursor: pointer;
}

.StaffComments_Each .swiper-pagination-bullet:nth-child(1)::after {
font-weight: 600;
font-family: "Barlow Condensed", sans-serif;
content: "OFF";
}

.StaffComments_Each .swiper-pagination-bullet:nth-child(2)::after {
font-weight: 600;
font-family: "Barlow Condensed", sans-serif;
content: "ON";
}

.StaffComments_Each .swiper-pagination-bullet-active {
color: #fff;
background-color: var(--c-1);
}

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

	.StaffComments_Each .swiper-pagination {
	bottom: -14% !important;
	}

	.StaffComments_Each .swiper-pagination::before {
	margin-right: 0.5rem;
	font-size: 1.6rem;
	}

	.StaffComments_Each .swiper-pagination-bullet {
	padding: 6% 10%;
	margin: 0 !important;
	}

	.StaffComments_Each .swiper-pagination-bullet::after {
	padding-bottom: 0;
	font-size: 1.6rem;
	}

}

@media print, screen and (min-width: 768px) {

	.StaffComments_Each .swiper-pagination {
	bottom: -12% !important;
	}

	.StaffComments_Each .swiper-pagination::before {
	margin-right: 1rem;
	padding-bottom: 0.5%;
	font-size: min(1.14vw, 1.6rem);
	}

	.StaffComments_Each .swiper-pagination-bullet {
	margin: 0 !important;
	padding: 4% 8% 5% 8%;
	}

	.StaffComments_Each .swiper-pagination-bullet::after {
	font-size: min(1.14vw, 1.6rem);
	}

}

@media (hover: hover) {

	.StaffComments_Each .swiper-pagination-bullet {
	transition: all 0.2s ease 0.01s;
	}

	.StaffComments_Each .swiper-pagination-bullet:hover {
	background-color: #d4ddec;
	}

	.StaffComments_Each .swiper-pagination-bullet-active {
	background-color: var(--c-1) !important;
	opacity: 1 !important;
	}

}


/* パンくず --------------------------------------------------- */

.Page_AboutStaff .Contents {
padding-bottom: 0;
}

.Page_AboutStaff .BreadCrumb {
background-color: #333;
}

.Page_AboutStaff .BreadCrumb_List li:last-child a {
color: #fff;
}



/* ■ ENGINEERING SERVICE ==================================================================================== */

/*
Box
レイアウト
画像
REMARK
*/


/* Box --------------------------------------------------- */

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

	.Page_Service::after {
	height: 43rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_Service::after {
	height: 63rem;
	}

}


/* レイアウト --------------------------------------------------- */

.Service_Mds_Num {
text-align: center;
}

.Service_Mds_En {
padding: 0.4rem 0;
line-height: 1.2;
letter-spacing: 0.05em;
text-align: center;
color: var(--c-1);
}

.Service_Mds {
line-height: 1.6;
letter-spacing: 0.1em;
text-align: center;
}

.Service_Lead {
font-weight: 500;
}

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

	.Service {
	margin-top: 4.5rem;
	}

	.Service_Inner {
	padding: 0 var(--m-lr);
	}

	.Service_Mds_Num {
	font-size: 9rem;
	}

	.Service_Mds_En {
	margin: 0.5rem -2.5rem 0 -2.5rem;
	font-size: min(10.66vw, 4rem);
	}

	.Service_Mds {
	margin-top: 1rem;
	font-size: 1.8rem;
	}

	.Service_Lead {
	margin-top: 2rem;
	font-size: 1.3rem;
	line-height: var(--l-m);
	}

}

@media print, screen and (min-width: 768px) {

	.Service {
	margin-top: 9rem;
	}

	.Service_Inner {
	padding: 0 var(--m-lr);
	}

	.Service_Mds_Num {
	font-size: 18rem;
	}

	.Service_Mds_En {
	margin-top: 3.8rem;
	font-size: 6rem;
	}

	.Service_Mds {
	margin-top: 1rem;
	font-size: 2.8rem;
	}

	.Service_Lead {
	max-width: 90rem;
	margin: 3.5rem auto 0;
	font-size: 1.6rem;
	line-height: var(--l-m);
	}

}


/* 画像 --------------------------------------------------- */

.Service_Photo {
position: relative;
background-color: #f5f5f5;
}

/* ページネーション */
.Service_Photo .swiper-pagination-bullet {
border: 1px solid var(--c-1);
background-color: #fff;
opacity: 1;
}

.Service_Photo .swiper-pagination-bullet-active {
background-color: var(--c-1);
}

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

	.Service_Photo {
	margin-top: 2rem;
	margin: 2rem -0.5rem 0 -0.5rem;
	}

	.Service_Photo_Border img {
	border: 1px solid #d0d0d0;
	}

	/* ページネーション */
	.Service_Photo .swiper-pagination {
	bottom: -2.5rem !important;
	}

	.Service_Photo .swiper-pagination-bullet {
	width: 1rem;
	height: 1rem;
	}

	/* 前後ボタン */
	.Service_Photo .swiper-button-prev,
	.Service_Photo .swiper-button-next {
	display: none;
	}

}

@media print, screen and (min-width: 768px) {

	.Service_Photo {
	margin-top: 6rem;
	padding: 4.5% 9%; 
	}

	.Service_Photo_S {
	padding: 4.5% 22.7%; 	
	}

	.Service_Photo_M {
	padding: 4.5% 10.7%; 	
	}

	/* ページネーション */
	.Service_Photo .swiper-pagination {
	bottom: 3.6% !important;
	}

	.Service_Photo .swiper-pagination-bullet {
	width: 1rem;
	height: 1rem;
	}

	/* 前後ボタン */
	.Service_Photo .swiper-button-prev,
	.Service_Photo .swiper-button-next {
	color: var(--c-1);
	}

	.Service_Photo .swiper-button-prev {
	left: 3%;
	}

	.Service_Photo .swiper-button-next {
	right: 3%;
	}

}


/* REMARK --------------------------------------------------- */

.Service_Remark {
display: grid;
}

.Service_Remark_Mds {
letter-spacing: 0.1em;
color: var(--c-1);
}

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

	.Service_Remark {
	grid-template-columns: repeat(1, 1fr);
	gap: 2.5rem;
	margin-top: 4rem;
	}

	.Service_Remark_Mds {
	font-size: 2.4rem;
	}

	.Service_Remark_Cate {
	margin-top: 1.5rem;
	font-size: 1.4rem;
	}

	.Service_Remark_Cate:first-of-type {
	margin-top: 2rem;
	}

	.Service_Remark_List {
	margin-top: 1rem;
	}

	.Service_Remark_Each:last-of-type {
	padding-top: 2.5rem;
	border-top: 1px solid var(--c-1);
	}

}

@media print, screen and (min-width: 768px) {

	.Service_Remark {
	position: relative;
	grid-template-columns: repeat(2, 1fr);
	gap: 16rem;
	margin-top: 5rem;
	}

	.Service_Remark::before {
	position: absolute;
	left: 50%;
	top: 0;
	width: 0.1rem;
	height: 100%;
	background-color: var(--c-1);
	content: "";
	}

	.Service_Remark.Service_Remark_Only1::before {
	display: none;
	}

	.Service_Remark_Mds {
	font-size: 3rem;
	}

	.Service_Remark_Cate {
	margin-top: 2rem;
	font-size: 1.6rem;
	}

	.Service_Remark_Cate:first-of-type {
	margin-top: 3rem;
	}

	.Service_Remark_List {
	margin-top: 1rem;
	}

}



/* ■ PRODUCTS ==================================================================================== */

/*
Box
レイアウト
スペック
*/


/* Box --------------------------------------------------- */

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

	.Page_Product::after {
	height: 52rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_Product::after {
	height: 70rem;
	}

}


/* レイアウト --------------------------------------------------- */

.ProductList_List {
display: grid;
}

.ProductList_List li {
overflow: hidden;
}

.ProductList_Photo {
position: relative;
}

.ProductList_Name {
position: relative;
z-index: 2;
letter-spacing: 0.05em;
text-align: center;
color: var(--c-1);
}

/* ページネーション */
.ProductList_Photo .swiper-pagination-bullet {
border: 1px solid var(--c-1);
background-color: #fff;
opacity: 1;
}

.ProductList_Photo .swiper-pagination-bullet-active {
background-color: var(--c-1);
}

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

	.ProductList_Inner {
	padding: 4.5rem var(--m-lr) 0;
	}

	.ProductList_List {
	grid-template-columns: repeat(1, 1fr);
	gap: 5rem;
	}

	.ProductList_Name {
	margin-top: -4%;
	font-size: 2.7rem;
	}

	/* ページネーション */
	.ProductList_Photo .swiper-pagination {
	bottom: 12% !important;
	}

	.ProductList_Photo .swiper-pagination-bullet {
	width: 1rem;
	height: 1rem;
	}

	/* 前後ボタン */
	.ProductList_Photo .swiper-button-prev,
	.ProductList_Photo .swiper-button-next {
	display: none;
	}

}

@media print, screen and (min-width: 768px) {

	.ProductList_Inner {
	padding: 9rem var(--m-lr) 0;
	}

	.ProductList_List {
	grid-template-columns: repeat(2, 1fr);
	gap: 8rem 6rem;
	}

	.ProductList_Name {
	margin-top: -4%;
	font-size: min(2.86vw, 4rem);
	}

	/* ページネーション */
	.ProductList_Photo .swiper-pagination {
	bottom: 12% !important;
	}

	.ProductList_Photo .swiper-pagination-bullet {
	width: 1rem;
	height: 1rem;
	}

	/* 前後ボタン */
	.ProductList_Photo .swiper-button-prev,
	.ProductList_Photo .swiper-button-next {
	color: var(--c-1);
	}

	.ProductList_Photo .swiper-button-prev svg,
	.ProductList_Photo .swiper-button-next svg {
	width: 40% !important;
	}

	.ProductList_Photo .swiper-button-prev {
	left: 2%;
	}

	.ProductList_Photo .swiper-button-next {
	right: 2%;
	}

}


/* スペック --------------------------------------------------- */

.ProductList_Spec {
margin-top: 4rem;
}

.ProductList_Spec dl {
border-bottom: 1px solid #e0e0e0;
}

.ProductList_Spec_Link a {
letter-spacing: 0.05em;
}

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

	.ProductList_Spec {
	margin-top: 0.4rem;	
	}

	.ProductList_Spec dl {
	padding: 1.6rem 0.6rem 1.6rem 0;
	font-size: 1.3rem;
	}

	.ProductList_Spec dd {
	margin-top: 0.3rem;
	}

	.ProductList_Spec_Link .LinkNewWin::before {
	top: 1.2rem;
	}

    .ProductList_Spec_Link .LinkNewWin::after {
     top: 0.9rem;
    }

}

@media print, screen and (min-width: 768px) {

	.ProductList_Spec {
	margin-top: 2rem;	
	}

	.ProductList_Spec dl {
	align-items: center;
	padding: 1.8rem 2rem 1.8rem 0.8rem;
	font-size: 1.4rem;
	}

	.ProductList_Spec dt {
	width: 12rem;
	}

}



/* ■ PROJECTS：最新 ==================================================================================== */

/*
Box
背景動画
レイアウト
表組み
*/


/* Box --------------------------------------------------- */

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

	.Page_Project::after {
	height: 48rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_Project::after {
	height: 100rem;
	}

}


/* 背景動画 --------------------------------------------------- */

.Project_Movie_Wrap {
position: sticky;
left: 0;
top: 0;
z-index: -1 !important;
}

.Project_Movie {
width: 100vw;
height: 100vh;
object-fit: cover;
}

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

}

@media print, screen and (min-width: 768px) {

}


/* レイアウト --------------------------------------------------- */

.Project_Inner {
position: relative;
z-index: 1;
padding-top: 0.1rem;
background: rgba(255, 255, 255, 0.7);
}

.Project_Mds {
text-align: center;
color: var(--c-1);
}

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

	.Project:first-of-type {
	margin-top: 5rem;
	}

	.Project_Inner {
	padding-bottom: 10rem;
	}

	.Project_Mds {
	margin-top: -3rem;
	padding: 0.5rem 0;
	font-size: 5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Project:first-of-type {
	margin-top: 9rem;
	}

	.Project_Inner {
	padding-bottom: 16rem;
	}

	.Project_Mds {
	margin-top: -6rem;
	padding: 0.5rem 3rem;
	font-size: 10rem;
	}

}


/* 表組み --------------------------------------------------- */

.Project_Table th:nth-child(1) {
width: 27.5%;
}

.Project_Table th:nth-child(2) {
width: 15%;
}

.Project_Table th:nth-child(3) {
width: 20%;
}

.Project_Table th:nth-child(4) {
width: 20%;
}

.Project_Table th:nth-child(5) {
width: 7.5%;
}

.Project_Table th:nth-child(6) {
width: 10%;
}

.Project_Table td {
text-align: center;
}

.Project_Table td:first-child {
font-weight: 700;
}

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

	.Project_Table {
	margin-top: 4.5rem;
	padding: 0 var(--m-lr);
	}

	.Project_Table td small {
	font-size: 1.2rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Project_Table {
	margin-top: 9rem;
	padding: 0 var(--m-lr);
	}

	.Project_Table td small {
	font-size: 1.2rem;
	}

}



/* ■ PROJECTS：アーカイブ ==================================================================================== */

/*
Box
レイアウト
表組み
*/


/* Box --------------------------------------------------- */

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

	.Page_ProjectArchive::after {
	height: 48rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_ProjectArchive::after {
	height: 100rem;
	}

}


/* レイアウト --------------------------------------------------- */

.ProjectArchive_Mds {
text-align: center;
color: var(--c-1);
}

.ProjectArchive_Table_Mds a {
display: block;
border: 1px solid var(--c-1);
border-bottom: none;
color: var(--c-1);
}

.ProjectArchive_Table_Wrap:last-of-type .ProjectArchive_Table_Mds a {
border-bottom: 1px solid var(--c-1);
}

.ProjectArchive_Table_Mds a.is_Opened {
box-shadow: 0px 8px 8px -4px rgba(0, 0, 0, 0.3);
}

.ProjectArchive_Table .Table2 {
border-bottom: 1px solid #d6d6d6;
}

.ProjectArchive_Table td:first-child {
font-weight: 700;
}

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

	.ProjectArchive {
	margin-top: 6rem;
	}

	.ProjectArchive:first-of-type {
	margin-top: 4.5rem;
	}

	.ProjectArchive_Inner {
	padding: 0 var(--m-lr);
	}

	.ProjectArchive_Mds {
	margin-top: -8%;
	margin-bottom: 4rem;
	font-size: 5rem;
	}

	.ProjectArchive_Table_Mds a {
	padding: 1.6rem 1.6rem;
	font-size: 2.7rem;
	}

	.ProjectArchive_Table {
	padding-bottom: 2rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ProjectArchive {
	margin-top: 11rem;
	}

	.ProjectArchive:first-of-type {
	margin-top: 9rem;
	}

	.ProjectArchive_Inner {
	padding: 0 var(--m-lr);
	}

	.ProjectArchive_Mds {
	margin-top: -4%;
	margin-bottom: 6rem;
	font-size: min(7.14vw, 10rem);
	}

	.ProjectArchive_Table_Mds a {
	padding: 2rem 2rem;
	font-size: 4rem;
	}

	.ProjectArchive_Table {
	padding-bottom: 4rem;
	}

	.ProjectArchive_Table_Mds .Icon_Plus::before,
	.ProjectArchive_Table_Mds .Icon_Plus::after {
	right: 2.5rem;
	width: 2rem;
	height: 0.2rem;
	}

}

@media (hover: hover) {

	.ProjectArchive_Table_Mds a:hover {
	opacity: 1;
	}

}


/* 表組み --------------------------------------------------- */

.ProjectArchive_Table th:nth-child(1) {
width: 27.5%;
}

.ProjectArchive_Table th:nth-child(2) {
width: 15%;
}

.ProjectArchive_Table th:nth-child(3) {
width: 20%;
}

.ProjectArchive_Table th:nth-child(4) {
width: 20%;
}

.ProjectArchive_Table th:nth-child(5) {
width: 7.5%;
}

.ProjectArchive_Table th:nth-child(6) {
width: 10%;
}

.ProjectArchive_Table td {
text-align: center;
}

.ProjectArchive_Table td:first-child {
font-weight: 700;
}

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

	.ProjectArchive_Table td small {
	font-size: 1.2rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ProjectArchive_Table td small {
	font-size: 1.2rem;
	}

}



/* ■ VOICE：TOP ==================================================================================== */

/*
Box
IndexMenu
STAFF COMMENTS
ページネーション
パンくず
*/


/* Box --------------------------------------------------- */

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

	.Page_VoiceTop::after {
	height: 33rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_VoiceTop::after {
	height: 67rem;
	}

}


/* IndexMenu --------------------------------------------------- */

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

}

@media print, screen and (min-width: 768px) {

	.Page_VoiceTop .IndexMenu_List_Lead_1 {
	margin-top: -8%;
	}

	.Page_VoiceTop .IndexMenu_List_Lead_1.is_2Line {
	margin-top: -24%;
	}

}


/* STAFF COMMENTS --------------------------------------------------- */
/* → 「■ ABOUT：スタッフコメント」 参照 */


/* ページネーション --------------------------------------------------- */
/* → 「■ ABOUT：スタッフコメント」 参照 */


/* パンくず --------------------------------------------------- */

.Page_VoiceTop .Contents {
padding-bottom: 0;
}

.Page_VoiceTop .BreadCrumb {
background-color: #333;
}

.Page_VoiceTop .BreadCrumb_List li:last-child a {
color: #fff;
}




/* ■ VOICE：INTERVIEW ==================================================================================== */

/*
Box
導入
インタビュー
*/


/* Box --------------------------------------------------- */

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

	.Page_VoiceInterview::after {
	height: 52rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_VoiceInterview::after {
	height: 83rem;
	}

}


/* 導入 --------------------------------------------------- */

.Interview_Intro_Name_En {
text-align: center;
}

.Interview_Intro_Title {
font-weight: 500;
text-align: center;
}

.Interview_Intro_Name {
letter-spacing: 0.1em;
text-align: center;
color: var(--c-1);
}

.Interview_Intro_Lead {
font-weight: 500;
}

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

	.Interview_Intro {
	margin-top: 4.5rem;
	}

	.Interview_Intro_Inner {
	padding: 0 var(--m-lr);
	}

	.Interview_Intro_Photo {
	margin: 0 -0.75rem;
	}

	.Interview_Intro_Name_En {
	margin-top: -9%;
	margin: -9% -3rem 0;
	font-size: 6rem;
	}
	
	.Interview_Intro_Title {
	margin-top: 2rem;
	font-size: 1.4rem;
	line-height: 1.8;
	}

	.Interview_Intro_Name {
	margin-top: 2rem;
	font-size: 1.9rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Interview_Intro {
	margin-top: 9rem;
	}

	.Interview_Intro_Inner {
	padding: 0 var(--m-lr);
	}

	.Interview_Intro_Name_En {
	margin-top: -7.2%;
	font-size: min(10vw, 14rem);
	}

	.Interview_Intro_Title {
	margin-top: 4.5rem;
	font-size: 1.6rem;
	line-height: 1.8;
	}

	.Interview_Intro_Name {
	margin-top: 4rem;
	font-size: 2.8rem;
	}

}


/* インタビュー --------------------------------------------------- */

.Interview_Mds_En {
letter-spacing: 0.05em;
text-align: center;
color: var(--c-1);
}

.Interview_Mds {
text-align: center;
}

.Interview_Q {
display: flex;
position: relative;
font-weight: 700;
color: var(--c-1);
}

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

	.Interview {
	margin-top: 4.5rem;
	}

	.Interview_Inner {
	padding: 0 var(--m-lr);
	}

	.Interview_Mds_En {
	margin-bottom: 3rem;
	font-size: 4rem;
	}

	.Interview_Mds {
	font-size: 1.8rem;
	line-height: 1.8;
	}

	.Interview_Q {
	margin-top: 3rem;
	padding-top: 2rem;
	border-top: 1px solid var(--c-1);
	font-size: 1.4rem;
	line-height: 1.8;
	}

	.Interview_Q span {
	display: block;
	margin-right: 0.4rem;
	}

	.Interview_Lead {
	margin-top: 1.8rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.Interview_Photo {
	margin-top: 3rem;
	}

	.Interview_List {
	margin-top: 0.5rem;
	}

	.Interview_List li {
	margin-top: 0.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Interview {
	margin-top: 10rem;
	}

	.Interview_Inner {
	padding: 0 17.85%;
	}

	.Interview_Mds_En {
	margin-bottom: 5rem;
	font-size: 6rem;
	}

	.Interview_Mds {
	font-size: 2.8rem;
	line-height: 1.8;
	}

	.Interview_Q {
	margin-top: 6rem;
	padding-left: 8rem;
	font-size: 1.6rem;
	line-height: 1.8;
	}

	.Interview_Q::before {
	position: absolute;
	left: 0;
	top: 1.55rem;
	width: 6rem;
	height: 0.1rem;
	background-color: var(--c-1);
	content: "";
	}

	.Interview_Q span {
	display: block;
	margin-right: 0.5rem;
	}

	.Interview_Lead {
	margin-top: 4rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.Interview_List {
	margin-top: 1rem;
	}

	.Interview_List li {
	margin-top: 1rem;
	}

	.Interview_Photo {
	margin-top: 8rem;
	}

}



/* ■ VOICE：CROSS TALK ==================================================================================== */

/*
Box
導入
プロフィール
インタビュー
FooterImage
*/


/* Box --------------------------------------------------- */

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

	.Page_VoiceCrossTalk::after {
	height: 52rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_VoiceCrossTalk::after {
	height: 83rem;
	}

}


/* 導入 --------------------------------------------------- */

.CrossTalk_Intro_Mds_En {
text-align: center;
}

.CrossTalk_Intro_Mds {
letter-spacing: 0.1em;
text-align: center;
}

.CrossTalk_Intro_Lead {
font-weight: 500;
}

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

	.CrossTalk_Intro {
	margin-top: 4.5rem;
	}

	.CrossTalk_Intro_Inner {
	padding: 0 var(--m-lr);
	}

	.CrossTalk_Intro_Photo {
	margin: 0 -0.75rem;
	}

	.CrossTalk_Intro_Mds_En {
	margin-top: -9%;
	font-size: 6rem;
	}
	
	.CrossTalk_Intro_Mds {
	margin-top: 2rem;
	font-size: 1.8rem;
	line-height: 1.8;
	}

	.CrossTalk_Intro_Lead {
	margin-top: 2rem;
	font-size: 1.3rem;
	line-height: var(--l-m);
	}

}

@media print, screen and (min-width: 768px) {

	.CrossTalk_Intro {
	margin-top: 9rem;
	}

	.CrossTalk_Intro_Inner {
	padding: 0 var(--m-lr);
	}

	.CrossTalk_Intro_Mds_En {
	margin-top: -6.8%;
	font-size: min(10vw, 14rem);
	}
	
	.CrossTalk_Intro_Mds {
	margin-top: 8rem;
	font-size: 2.8rem;
	}

	.CrossTalk_Intro_Lead {
	margin-top: 4rem;
	font-size: 1.6rem;
	line-height: var(--l-m);
	text-align: center;
	}

}


/* プロフィール --------------------------------------------------- */

.CrossTalk_Profile_List {
display: grid;
}

.CrossTalk_Profile_Mds {
text-align: center;
color: var(--c-1);
}

.CrossTalk_Profile_Lead {
text-align: center;
}

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

	.CrossTalk_Profile {
	margin-top: 4.5rem;
	}

	.CrossTalk_Profile_Inner {
	padding: 0 6rem;
	}

	.CrossTalk_Profile_List {
	grid-template-columns: repeat(1, 1fr);
	gap: 3rem;
	}

	.CrossTalk_Profile_Mds {
	margin-top: -7.8%;
	font-size: 3.1rem;
	}

	.CrossTalk_Profile_Lead {
	margin-top: 1.2rem;
	font-size: 1.3rem;
	line-height: 1.8;
	}

}

@media print, screen and (min-width: 768px) {

	.CrossTalk_Profile {
	margin-top: 9rem;
	}

	.CrossTalk_Profile_Inner {
	padding: 0 var(--m-lr);
	}

	.CrossTalk_Profile_List {
	grid-template-columns: repeat(3, 1fr);
	gap: 6.36%;
	}

	.CrossTalk_Profile_Mds {
	margin-top: -6.8%;
	font-size: min(2.86vw, 4rem);
	}

	.CrossTalk_Profile_Lead {
	margin-top: 1.8rem;
	font-size: 1.5rem;
	line-height: 2;
	}

}


/* インタビュー --------------------------------------------------- */

.CrossTalk_Interview_Q {
position: relative;
font-weight: 700;
color: var(--c-1);
}

.CrossTalk_Interview_Each {
display: flex;
}

.CrossTalk_Interview_Each_Icon img {
border-radius: 100vh;
}

.CrossTalk_Interview_Each_Txt {
flex: 1;
}

.CrossTalk_Interview_Each_Name {
font-weight: 700;
color: var(--c-1);
}

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

	.CrossTalk_Interview {
	margin-top: 6rem;
	}

	.CrossTalk_Interview_Inner {
	padding: 0 var(--m-lr);
	}

	.CrossTalk_Interview_Txt {
	padding-top: 2rem;
	border-top: 1px solid var(--c-1);
	}

	.CrossTalk_Interview_Q {
	font-size: 1.4rem;
	line-height: 2;
	}

	.CrossTalk_Interview_Mds {
	margin-top: 2rem;
	font-size: 1.6rem;
	line-height: 1.8;
	}

	.CrossTalk_Interview_Each {
	margin-top: 3rem;
	}

	.CrossTalk_Interview_Each:first-of-type {
	margin-top: 3rem;
	}

	.CrossTalk_Interview_Each_Icon {
	width: 4rem;
	}

	.CrossTalk_Interview_Each_Txt {
	padding-left: 1.2rem;
	}

	.CrossTalk_Interview_Each_Name {
	font-size: 1.5rem;
	}

	.CrossTalk_Interview_Each_Lead {
	margin-top: 1rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.CrossTalk_Interview_Photo {
	margin-top: 2.5rem;
	}

	.CrossTalk_Interview_Photo_Each {
	margin-bottom: 1.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.CrossTalk_Interview {
	margin-top: 14rem;
	}

	.CrossTalk_Interview_Inner {
	display: flex;
	}

	.CrossTalk_Interview_Txt {
	width: 62%;
	}

	.CrossTalk_Interview:nth-of-type(odd) .CrossTalk_Interview_Txt {
	padding-left: var(--m-lr);
	padding-right: 8%;
	}

	.CrossTalk_Interview_Photo {
	width: 38%;
	}

	.CrossTalk_Interview:nth-of-type(even) .CrossTalk_Interview_Txt {
	order: 2;
	padding-left: 8%;
	padding-right: var(--m-lr);
	}

	.CrossTalk_Interview_Q {
	padding-left: 8rem;
	font-size: 1.6rem;
	line-height: 2.4;
	}

	.CrossTalk_Interview_Q::before {
	position: absolute;
	left: 0;
	top: 1.95rem;
	width: 6rem;
	height: 0.1rem;
	background-color: var(--c-1);
	content: "";
	}

	.CrossTalk_Interview_Mds {
	margin-top: 5rem;
	font-size: 2.4rem;
	line-height: 1.8;
	}

	.CrossTalk_Interview_Each {
	margin-top: 4rem;
	}

	.CrossTalk_Interview_Each:first-of-type {
	margin-top: 6rem;
	}

	.CrossTalk_Interview_Each_Icon {
	width: 5rem;
	}

	.CrossTalk_Interview_Each_Txt {
	padding-left: 1.2rem;
	}

	.CrossTalk_Interview_Each_Name {
	font-size: 1.5rem;
	}

	.CrossTalk_Interview_Each_Lead {
	margin-top: 1.1rem;
	font-size: var(--f-m);
	line-height: var(--l-m);
	}

	.CrossTalk_Interview_Photo_Each {
	margin-bottom: 2.5rem;
	}

}


/* FooterImage --------------------------------------------------- */

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

	.CrossTalk_FooterImage {
	margin-top: 9rem;
	padding: 0 2.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.CrossTalk_FooterImage {
	margin-top: 14rem;
	padding: 0 var(--m-lr);
	}

}



/* ■ お問い合わせ ==================================================================================== */

/*
Box
Header
Contact
Foooter
*/


/* Box --------------------------------------------------- */

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

	.Page_Contact::after {
	height: 24rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_Contact::after {
	height: 40rem;
	}

}


/* Header --------------------------------------------------- */

.Page_Contact .Header {
position: inherit;
}


/* Contact --------------------------------------------------- */

.Contact_Lead {
font-weight: 500;
}

.Contact_Complete_Inner {
border: 1px solid #ccc;
}

.Contact_Complete_Lead {
font-weight: 500;
}

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

	.Contact {
	margin-top: 6rem;
	padding: 0 var(--m-lr);
	}

	.Contact_Lead {
	margin-top: 3rem;
	font-size: 1.4rem;
	line-height: 1.8;
	}

	.Contact_Complete {
	margin-top: 6rem;
	padding: 0 var(--m-lr);
	}

	.Contact_Complete_Inner {
	padding: 2rem;
	}

	.Contact_Complete_Lead {
	font-size: 1.6rem;
	line-height: 2;
	}

	.Contact_Complete_Notice {
	margin-top: 2rem;
	font-size: 1.3rem;
	line-height: 2;
	}

}

@media print, screen and (min-width: 768px) {

	.Contact {
	max-width: 100rem;
	margin: 9rem auto 0;
	}

	.Contact_Lead {
	margin-top: 6rem;
	font-size: 1.6rem;
	line-height: 2;
	}

	.Contact_Complete {
	max-width: 100rem;
	margin: 10rem auto 0;
	}

	.Contact_Complete_Inner {
	padding: 3rem;
	}

	.Contact_Complete_Lead {
	font-size: 1.7rem;
	line-height: 2;
	}

	.Contact_Complete_Notice {
	margin-top: 2rem;
	font-size: 1.4rem;
	line-height: 2;
	}

}



/* ■ 個人情報保護方針 ==================================================================================== */

/*
Box
Privacy
*/


/* Box --------------------------------------------------- */

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

	.Page_Privacy::after {
	height: 55rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_Privacy::after {
	height: 67rem;
	}

}


/* Privacy --------------------------------------------------- */

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

	.Privacy {
	margin-top: 1rem;
	}

	.Privacy_Inner {
	padding: 0 var(--m-lr);
	}

	.Privacy_List li {
	margin-top: 2rem;
	}

	.Privacy_Contact {
	margin-top: 4rem;
	}

	.Privacy_Contact_Mds {
	font-size: 1.4rem;
	}

	.Privacy_Contact_Lead {
	margin-top: 1rem;
	font-size: 1.3rem;
	line-height: 1.8;
	}

	.Privacy_Contact_Company {
	margin-top: 2rem;
	font-size: 1.3rem;
	line-height: 1.5;
	}

	.Privacy_Contact_Name {
	margin-top: 1rem;
	font-size: 1.3rem;
	line-height: 1.8;
	}

	.Privacy_Contact_Address {
	margin-top: 1rem;
	font-size: 1.3rem;
	line-height: 1.8;
	}

	.Privacy_Contact_Tel {
	font-size: 1.3rem;
	line-height: 1.8;
	}

}

@media print, screen and (min-width: 768px) {

	.Privacy {
	margin-top: 7rem;
	}

	.Privacy_Inner {
	max-width: 100rem;
	margin: 0 auto;
	}

	.Privacy_List li {
	margin-top: 3rem;
	}

	.Privacy_Contact {
	margin-top: 6rem;
	}

	.Privacy_Contact_Mds {
	font-size: 1.8rem;
	}

	.Privacy_Contact_Lead {
	margin-top: 1rem;
	font-size: 1.5rem;
	line-height: 1.8;
	}

	.Privacy_Contact_Company {
	margin-top: 2rem;
	font-size: 1.6rem;
	}

	.Privacy_Contact_Name {
	margin-top: 1rem;
	font-size: 1.5rem;
	line-height: 1.8;
	}

	.Privacy_Contact_Address {
	margin-top: 1rem;
	font-size: 1.5rem;
	line-height: 1.8;
	}

	.Privacy_Contact_Tel {
	font-size: 1.5rem;
	line-height: 1.8;
	}

}



/* ■ ウェブサイト利用規約 ==================================================================================== */

/*
Box
Terms
*/


/* Box --------------------------------------------------- */

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

	.Page_Terms::after {
	height: 55rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_Terms::after {
	height: 67rem;
	}

}


/* Terms --------------------------------------------------- */

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

	.Terms {
	margin-top: 5rem;
	}

	.Terms_Inner {
	padding: 0 var(--m-lr);
	}

	.Terms_Mds {
	font-size: 1.6rem;
	}

	.Terms_Lead {
	margin-top: 1.5rem;
	font-size: var(--f-m);
	line-height: 1.6;
	}

	.Terms_List {
	margin-top: 1.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Terms {
	margin-top: 7rem;
	}

	.Terms_Inner {
	max-width: 100rem;
	margin: 0 auto;
	}

	.Terms_Mds {
	font-size: 2rem;
	}

	.Terms_Lead {
	margin-top: 2rem;
	font-size: var(--f-m);
	line-height: 1.8;
	}

	.Terms_List {
	margin-top: 2rem;
	}

}



/* ■ Not Found ==================================================================================== */

/*
Box
NotFound
*/


/* Box --------------------------------------------------- */

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

	.Page_NotFound::after {
	height: 35rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Page_NotFound::after {
	height: 36rem;
	}

}


/* NotFound --------------------------------------------------- */

.NotFound_Lead {
font-weight: 500;
}

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

	.NotFound {
	margin-top: 8rem;
	padding: 0 var(--m-lr);
	}

	.NotFound_Inner {
	padding: 2rem;
	border: 2px solid #ccc;
	}

	.NotFound_Lead {
	font-size: 1.4rem;
	line-height: 2;
	}

}

@media print, screen and (min-width: 768px) {

	.NotFound {
	max-width: 90rem;
	margin: 9rem auto 0;
	}

	.NotFound_Inner {
	padding: 4rem;
	border: 3px solid #ccc;
	}

	.NotFound_Lead {
	font-size: 1.6rem;
	line-height: 2.2;
	}

}




/* ■ アニメーション ==================================================================================== */

/*
変数
ページロード
フェードイン_1
マスクワイプ_LR
マスクワイプ_RL
マスクワイプ_TB
マスクワイプ_BT
Box
回転
個別調整
*/


/* 変数 --------------------------------------------------- */

:root {
--a-dur-s: 0.5s;
--a-dur-m: 1s;
--a-dur-l: 1.5s;
--a-ease-1: cubic-bezier(0.4, 0, 0.2, 1);
}


/* ページロード --------------------------------------------------- */

.Header,
.Contents {
opacity: 0;
animation-name: pageLoad;
animation-timing-function: var(--a-ease-1);
animation-fill-mode: forwards;
}

@keyframes pageLoad {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

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

	.Header,
	.Contents {
	animation-duration: 1s;
	}

}

@media print, screen and (min-width: 768px) {

	.Header,
	.Contents {
	animation-duration: 1.5s;
	}

}

@media print {

	.Header,
	.Contents {
    opacity: 1;
	}

}


/* フェードイン_1 --------------------------------------------------- */

.a_FadeIn_1_Target {
opacity: 0;
}

.a_FadeIn_1_Active {
animation-name: fadeIn_1;
animation-duration: var(--a-dur-m);
animation-timing-function: var(--a-ease-1);
animation-fill-mode: forwards;
}

@keyframes fadeIn_1 {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@media print {

	.a_FadeIn_1_Target {
    opacity: 1;
	}

}


/* マスクワイプ_LR --------------------------------------------------- */

.a_MaskWipe_LR_Target,
.a_MaskWipe_LR_Top_Target {
mask-image: linear-gradient(270deg, transparent 50%, black 50%);
mask-size: 200% 100%;
mask-position: 100% 0%;
}

.a_MaskWipe_LR_Active,
.a_MaskWipe_LR_Top_Active.is_Start {
animation-name: MaskWipe_LR;
animation-duration: var(--a-dur-m);
animation-timing-function: var(--a-ease-1);
animation-fill-mode: forwards;
}

@keyframes MaskWipe_LR {
	0% {
		mask-position: 100% 0%;
	}
	100% {
		mask-position: 0% 0%;
	}
}

@media print {

	.a_MaskWipe_LR_Target {
	mask: none;
	}

}


/* マスクワイプ_RL --------------------------------------------------- */

.a_MaskWipe_RL_Target {
mask-image: linear-gradient(90deg, transparent 50%, black 50%);
mask-size: 200% 100%;
}

.a_MaskWipe_RL_Active {
animation-name: MaskWipe_RL;
animation-duration: var(--a-dur-m);
animation-timing-function: var(--a-ease-1);
animation-fill-mode: forwards;
}

@keyframes MaskWipe_RL {
	0% {
		mask-position: 0% 0%;
	}
	100% {
		mask-position: 100% 0%;
	}
}

@media print {

	.a_MaskWipe_RL_Target {
	mask: none;
	}

}


/* マスクワイプ_TB --------------------------------------------------- */

.a_MaskWipe_TB_Target {
mask-image: linear-gradient(to bottom, black 50%, transparent 50%);
mask-size: 100% 200%;
mask-position: 0% -100%;
}

.a_MaskWipe_TB_Active {
animation-name: MaskWipe_TB;
animation-duration: var(--a-dur-m);
animation-timing-function: var(--a-ease-1);
animation-fill-mode: forwards;
}

@keyframes MaskWipe_TB {
	0% {
		mask-position: 0% 100%;
	}
	100% {
		mask-position: 100% 0%;
	}
}

@media print {

	.a_MaskWipe_TB_Target {
	mask: none;
	}

}


/* マスクワイプ_BT --------------------------------------------------- */

.a_MaskWipe_BT_Target {
mask-image: linear-gradient(to bottom, black 50%, transparent 50%);
mask-size: 100% 200%;
mask-position: 0% -100%;
}

.a_MaskWipe_BT_Active {
animation-name: MaskWipe_BT;
animation-duration: var(--a-dur-m);
animation-timing-function: var(--a-ease-1);
animation-fill-mode: forwards;
}

@keyframes MaskWipe_BT {
	0% {
		mask-position: 0% -100%;
	}
	100% {
		mask-position: 0 0%;
	}
}

@media print {

	.a_MaskWipe_BT_Target {
	mask: none;
	}

}


/* Box --------------------------------------------------- */

.a_Texture_Box_Target::after,
.a_Texture_Box_Top_Target::after {
width: 0;
transition: width var(--a-dur-m) var(--a-ease-1);
}

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

	.a_Texture_Box_Active::after,
	.a_Texture_Box_Top_Active.is_Start::after {
	width: 63%;
	}

	/* ヘッダー */
	body.is_Opened .Header::after {
	transition: width var(--a-dur-s) var(--a-ease-1);
	}

}

@media print, screen and (min-width: 768px) {

	.a_Texture_Box_Active::after,
	.a_Texture_Box_Top_Active.is_Start::after {
	width: 68%;
	}

	/* ヘッダー */
	body.is_Opened .Header::after {
	transition: width var(--a-dur-s) var(--a-ease-1);
	}

}

@media print {

	.a_Texture_Box_Target::after {
	width: 68%;
	}

}


/* 回転 --------------------------------------------------- */

.a_Rotate_Target {
perspective: 800px;
}

.a_Rotate_Active {
animation-name: Rotate;
animation-duration: 2s;
animation-timing-function: var(--a-ease-1);
animation-fill-mode: forwards;
transform-style: preserve-3d;
}

@keyframes Rotate {
	0% {
		transform: rotateY(0deg);
	}
	100% {
		transform: rotateY(360deg);
	}
}


/* 個別調整 --------------------------------------------------- */

/* animation-delay */
.a_Delay_01 { animation-delay: 0.1s; }
.a_Delay_02 { animation-delay: 0.2s; }
.a_Delay_03 { animation-delay: 0.3s; }
.a_Delay_04 { animation-delay: 0.4s; }
.a_Delay_05 { animation-delay: 0.5s; }
.a_Delay_06 { animation-delay: 0.6s; }
.a_Delay_07 { animation-delay: 0.7s; }
.a_Delay_08 { animation-delay: 0.8s; }
.a_Delay_09 { animation-delay: 0.9s; }
.a_Delay_10 { animation-delay: 1.0s; }
.a_Delay_11 { animation-delay: 1.1s; }
.a_Delay_12 { animation-delay: 1.2s; }
.a_Delay_13 { animation-delay: 1.3s; }
.a_Delay_14 { animation-delay: 1.4s; }
.a_Delay_15 { animation-delay: 1.5s; }
.a_Delay_16 { animation-delay: 1.6s; }
.a_Delay_17 { animation-delay: 1.7s; }
.a_Delay_18 { animation-delay: 1.8s; }
.a_Delay_19 { animation-delay: 1.9s; }
.a_Delay_20 { animation-delay: 2.0s; }
.a_Delay_21 { animation-delay: 2.1s; }
.a_Delay_22 { animation-delay: 2.2s; }
.a_Delay_23 { animation-delay: 2.3s; }
.a_Delay_24 { animation-delay: 2.4s; }
.a_Delay_25 { animation-delay: 2.5s; }
.a_Delay_26 { animation-delay: 2.6s; }
.a_Delay_27 { animation-delay: 2.7s; }
.a_Delay_28 { animation-delay: 2.8s; }
.a_Delay_29 { animation-delay: 2.9s; }
.a_Delay_30 { animation-delay: 3.0s; }
.a_Delay_31 { animation-delay: 3.1s; }
.a_Delay_32 { animation-delay: 3.2s; }
.a_Delay_33 { animation-delay: 3.3s; }
.a_Delay_34 { animation-delay: 3.4s; }
.a_Delay_35 { animation-delay: 3.5s; }
.a_Delay_36 { animation-delay: 3.6s; }
.a_Delay_37 { animation-delay: 3.7s; }
.a_Delay_38 { animation-delay: 3.8s; }
.a_Delay_39 { animation-delay: 3.9s; }
.a_Delay_40 { animation-delay: 4.0s; }
.a_Delay_41 { animation-delay: 4.1s; }
.a_Delay_42 { animation-delay: 4.2s; }
.a_Delay_43 { animation-delay: 4.3s; }
.a_Delay_44 { animation-delay: 4.4s; }
.a_Delay_45 { animation-delay: 4.5s; }
.a_Delay_46 { animation-delay: 4.6s; }
.a_Delay_47 { animation-delay: 4.7s; }
.a_Delay_48 { animation-delay: 4.8s; }
.a_Delay_49 { animation-delay: 4.9s; }
.a_Delay_50 { animation-delay: 5.0s; }

/* animation-duration */
.a_Dur_01 { animation-duration: 0.1s; }
.a_Dur_02 { animation-duration: 0.2s; }
.a_Dur_03 { animation-duration: 0.3s; }
.a_Dur_04 { animation-duration: 0.4s; }
.a_Dur_05 { animation-duration: 0.5s; }
.a_Dur_06 { animation-duration: 0.6s; }
.a_Dur_07 { animation-duration: 0.7s; }
.a_Dur_08 { animation-duration: 0.8s; }
.a_Dur_09 { animation-duration: 0.9s; }
.a_Dur_10 { animation-duration: 1.0s; }
.a_Dur_11 { animation-duration: 1.1s; }
.a_Dur_12 { animation-duration: 1.2s; }
.a_Dur_13 { animation-duration: 1.3s; }
.a_Dur_14 { animation-duration: 1.4s; }
.a_Dur_15 { animation-duration: 1.5s; }
.a_Dur_16 { animation-duration: 1.6s; }
.a_Dur_17 { animation-duration: 1.7s; }
.a_Dur_18 { animation-duration: 1.8s; }
.a_Dur_19 { animation-duration: 1.9s; }
.a_Dur_20 { animation-duration: 2.0s; }
.a_Dur_21 { animation-duration: 2.1s; }
.a_Dur_22 { animation-duration: 2.2s; }
.a_Dur_23 { animation-duration: 2.3s; }
.a_Dur_24 { animation-duration: 2.4s; }
.a_Dur_25 { animation-duration: 2.5s; }
.a_Dur_26 { animation-duration: 2.6s; }
.a_Dur_27 { animation-duration: 2.7s; }
.a_Dur_28 { animation-duration: 2.8s; }
.a_Dur_29 { animation-duration: 2.9s; }
.a_Dur_30 { animation-duration: 3.0s; }
.a_Dur_31 { animation-duration: 3.1s; }
.a_Dur_32 { animation-duration: 3.2s; }
.a_Dur_33 { animation-duration: 3.3s; }
.a_Dur_34 { animation-duration: 3.4s; }
.a_Dur_35 { animation-duration: 3.5s; }
.a_Dur_36 { animation-duration: 3.6s; }
.a_Dur_37 { animation-duration: 3.7s; }
.a_Dur_38 { animation-duration: 3.8s; }
.a_Dur_39 { animation-duration: 3.9s; }
.a_Dur_40 { animation-duration: 4.0s; }
.a_Dur_41 { animation-duration: 4.1s; }
.a_Dur_42 { animation-duration: 4.2s; }
.a_Dur_43 { animation-duration: 4.3s; }
.a_Dur_44 { animation-duration: 4.4s; }
.a_Dur_45 { animation-duration: 4.5s; }
.a_Dur_46 { animation-duration: 4.6s; }
.a_Dur_47 { animation-duration: 4.7s; }
.a_Dur_48 { animation-duration: 4.8s; }
.a_Dur_49 { animation-duration: 4.9s; }
.a_Dur_50 { animation-duration: 5.0s; }

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

	/* animation-delay */
	.a_Delay_01_SP { animation-delay: 0.1s; }
	.a_Delay_02_SP { animation-delay: 0.2s; }
	.a_Delay_03_SP { animation-delay: 0.3s; }
	.a_Delay_04_SP { animation-delay: 0.4s; }
	.a_Delay_05_SP { animation-delay: 0.5s; }
	.a_Delay_06_SP { animation-delay: 0.6s; }
	.a_Delay_07_SP { animation-delay: 0.7s; }
	.a_Delay_08_SP { animation-delay: 0.8s; }
	.a_Delay_09_SP { animation-delay: 0.9s; }
	.a_Delay_10_SP { animation-delay: 1.0s; }
	.a_Delay_11_SP { animation-delay: 1.1s; }
	.a_Delay_12_SP { animation-delay: 1.2s; }
	.a_Delay_13_SP { animation-delay: 1.3s; }
	.a_Delay_14_SP { animation-delay: 1.4s; }
	.a_Delay_15_SP { animation-delay: 1.5s; }
	.a_Delay_16_SP { animation-delay: 1.6s; }
	.a_Delay_17_SP { animation-delay: 1.7s; }
	.a_Delay_18_SP { animation-delay: 1.8s; }
	.a_Delay_19_SP { animation-delay: 1.9s; }
	.a_Delay_20_SP { animation-delay: 2.0s; }
	.a_Delay_21_SP { animation-delay: 2.1s; }
	.a_Delay_22_SP { animation-delay: 2.2s; }
	.a_Delay_23_SP { animation-delay: 2.3s; }
	.a_Delay_24_SP { animation-delay: 2.4s; }
	.a_Delay_25_SP { animation-delay: 2.5s; }
	.a_Delay_26_SP { animation-delay: 2.6s; }
	.a_Delay_27_SP { animation-delay: 2.7s; }
	.a_Delay_28_SP { animation-delay: 2.8s; }
	.a_Delay_29_SP { animation-delay: 2.9s; }
	.a_Delay_30_SP { animation-delay: 3.0s; }
	.a_Delay_31_SP { animation-delay: 3.1s; }
	.a_Delay_32_SP { animation-delay: 3.2s; }
	.a_Delay_33_SP { animation-delay: 3.3s; }
	.a_Delay_34_SP { animation-delay: 3.4s; }
	.a_Delay_35_SP { animation-delay: 3.5s; }
	.a_Delay_36_SP { animation-delay: 3.6s; }
	.a_Delay_37_SP { animation-delay: 3.7s; }
	.a_Delay_38_SP { animation-delay: 3.8s; }
	.a_Delay_39_SP { animation-delay: 3.9s; }
	.a_Delay_40_SP { animation-delay: 4.0s; }
	.a_Delay_41_SP { animation-delay: 4.1s; }
	.a_Delay_42_SP { animation-delay: 4.2s; }
	.a_Delay_43_SP { animation-delay: 4.3s; }
	.a_Delay_44_SP { animation-delay: 4.4s; }
	.a_Delay_45_SP { animation-delay: 4.5s; }
	.a_Delay_46_SP { animation-delay: 4.6s; }
	.a_Delay_47_SP { animation-delay: 4.7s; }
	.a_Delay_48_SP { animation-delay: 4.8s; }
	.a_Delay_49_SP { animation-delay: 4.9s; }
	.a_Delay_50_SP { animation-delay: 5.0s; }

	/* animation-duration */
	.a_Dur_01_SP { animation-duration: 0.1s; }
	.a_Dur_02_SP { animation-duration: 0.2s; }
	.a_Dur_03_SP { animation-duration: 0.3s; }
	.a_Dur_04_SP { animation-duration: 0.4s; }
	.a_Dur_05_SP { animation-duration: 0.5s; }
	.a_Dur_06_SP { animation-duration: 0.6s; }
	.a_Dur_07_SP { animation-duration: 0.7s; }
	.a_Dur_08_SP { animation-duration: 0.8s; }
	.a_Dur_09_SP { animation-duration: 0.9s; }
	.a_Dur_10_SP { animation-duration: 1.0s; }
	.a_Dur_11_SP { animation-duration: 1.1s; }
	.a_Dur_12_SP { animation-duration: 1.2s; }
	.a_Dur_13_SP { animation-duration: 1.3s; }
	.a_Dur_14_SP { animation-duration: 1.4s; }
	.a_Dur_15_SP { animation-duration: 1.5s; }
	.a_Dur_16_SP { animation-duration: 1.6s; }
	.a_Dur_17_SP { animation-duration: 1.7s; }
	.a_Dur_18_SP { animation-duration: 1.8s; }
	.a_Dur_19_SP { animation-duration: 1.9s; }
	.a_Dur_20_SP { animation-duration: 2.0s; }
	.a_Dur_21_SP { animation-duration: 2.1s; }
	.a_Dur_22_SP { animation-duration: 2.2s; }
	.a_Dur_23_SP { animation-duration: 2.3s; }
	.a_Dur_24_SP { animation-duration: 2.4s; }
	.a_Dur_25_SP { animation-duration: 2.5s; }
	.a_Dur_26_SP { animation-duration: 2.6s; }
	.a_Dur_27_SP { animation-duration: 2.7s; }
	.a_Dur_28_SP { animation-duration: 2.8s; }
	.a_Dur_29_SP { animation-duration: 2.9s; }
	.a_Dur_30_SP { animation-duration: 3.0s; }
	.a_Dur_31_SP { animation-duration: 3.1s; }
	.a_Dur_32_SP { animation-duration: 3.2s; }
	.a_Dur_33_SP { animation-duration: 3.3s; }
	.a_Dur_34_SP { animation-duration: 3.4s; }
	.a_Dur_35_SP { animation-duration: 3.5s; }
	.a_Dur_36_SP { animation-duration: 3.6s; }
	.a_Dur_37_SP { animation-duration: 3.7s; }
	.a_Dur_38_SP { animation-duration: 3.8s; }
	.a_Dur_39_SP { animation-duration: 3.9s; }
	.a_Dur_40_SP { animation-duration: 4.0s; }
	.a_Dur_41_SP { animation-duration: 4.1s; }
	.a_Dur_42_SP { animation-duration: 4.2s; }
	.a_Dur_43_SP { animation-duration: 4.3s; }
	.a_Dur_44_SP { animation-duration: 4.4s; }
	.a_Dur_45_SP { animation-duration: 4.5s; }
	.a_Dur_46_SP { animation-duration: 4.6s; }
	.a_Dur_47_SP { animation-duration: 4.7s; }
	.a_Dur_48_SP { animation-duration: 4.8s; }
	.a_Dur_49_SP { animation-duration: 4.9s; }
	.a_Dur_50_SP { animation-duration: 5.0s; }

}

@media print, screen and (min-width: 768px) {

	/* animation-delay */
	.a_Delay_01_PC { animation-delay: 0.1s; }
	.a_Delay_02_PC { animation-delay: 0.2s; }
	.a_Delay_03_PC { animation-delay: 0.3s; }
	.a_Delay_04_PC { animation-delay: 0.4s; }
	.a_Delay_05_PC { animation-delay: 0.5s; }
	.a_Delay_06_PC { animation-delay: 0.6s; }
	.a_Delay_07_PC { animation-delay: 0.7s; }
	.a_Delay_08_PC { animation-delay: 0.8s; }
	.a_Delay_09_PC { animation-delay: 0.9s; }
	.a_Delay_10_PC { animation-delay: 1.0s; }
	.a_Delay_11_PC { animation-delay: 1.1s; }
	.a_Delay_12_PC { animation-delay: 1.2s; }
	.a_Delay_13_PC { animation-delay: 1.3s; }
	.a_Delay_14_PC { animation-delay: 1.4s; }
	.a_Delay_15_PC { animation-delay: 1.5s; }
	.a_Delay_16_PC { animation-delay: 1.6s; }
	.a_Delay_17_PC { animation-delay: 1.7s; }
	.a_Delay_18_PC { animation-delay: 1.8s; }
	.a_Delay_19_PC { animation-delay: 1.9s; }
	.a_Delay_20_PC { animation-delay: 2.0s; }
	.a_Delay_21_PC { animation-delay: 2.1s; }
	.a_Delay_22_PC { animation-delay: 2.2s; }
	.a_Delay_23_PC { animation-delay: 2.3s; }
	.a_Delay_24_PC { animation-delay: 2.4s; }
	.a_Delay_25_PC { animation-delay: 2.5s; }
	.a_Delay_26_PC { animation-delay: 2.6s; }
	.a_Delay_27_PC { animation-delay: 2.7s; }
	.a_Delay_28_PC { animation-delay: 2.8s; }
	.a_Delay_29_PC { animation-delay: 2.9s; }
	.a_Delay_30_PC { animation-delay: 3.0s; }
	.a_Delay_31_PC { animation-delay: 3.1s; }
	.a_Delay_32_PC { animation-delay: 3.2s; }
	.a_Delay_33_PC { animation-delay: 3.3s; }
	.a_Delay_34_PC { animation-delay: 3.4s; }
	.a_Delay_35_PC { animation-delay: 3.5s; }
	.a_Delay_36_PC { animation-delay: 3.6s; }
	.a_Delay_37_PC { animation-delay: 3.7s; }
	.a_Delay_38_PC { animation-delay: 3.8s; }
	.a_Delay_39_PC { animation-delay: 3.9s; }
	.a_Delay_40_PC { animation-delay: 4.0s; }
	.a_Delay_41_PC { animation-delay: 4.1s; }
	.a_Delay_42_PC { animation-delay: 4.2s; }
	.a_Delay_43_PC { animation-delay: 4.3s; }
	.a_Delay_44_PC { animation-delay: 4.4s; }
	.a_Delay_45_PC { animation-delay: 4.5s; }
	.a_Delay_46_PC { animation-delay: 4.6s; }
	.a_Delay_47_PC { animation-delay: 4.7s; }
	.a_Delay_48_PC { animation-delay: 4.8s; }
	.a_Delay_49_PC { animation-delay: 4.9s; }
	.a_Delay_50_PC { animation-delay: 5.0s; }

	/* animation-duration */
	.a_Dur_01_PC { animation-duration: 0.1s; }
	.a_Dur_02_PC { animation-duration: 0.2s; }
	.a_Dur_03_PC { animation-duration: 0.3s; }
	.a_Dur_04_PC { animation-duration: 0.4s; }
	.a_Dur_05_PC { animation-duration: 0.5s; }
	.a_Dur_06_PC { animation-duration: 0.6s; }
	.a_Dur_07_PC { animation-duration: 0.7s; }
	.a_Dur_08_PC { animation-duration: 0.8s; }
	.a_Dur_09_PC { animation-duration: 0.9s; }
	.a_Dur_10_PC { animation-duration: 1.0s; }
	.a_Dur_11_PC { animation-duration: 1.1s; }
	.a_Dur_12_PC { animation-duration: 1.2s; }
	.a_Dur_13_PC { animation-duration: 1.3s; }
	.a_Dur_14_PC { animation-duration: 1.4s; }
	.a_Dur_15_PC { animation-duration: 1.5s; }
	.a_Dur_16_PC { animation-duration: 1.6s; }
	.a_Dur_17_PC { animation-duration: 1.7s; }
	.a_Dur_18_PC { animation-duration: 1.8s; }
	.a_Dur_19_PC { animation-duration: 1.9s; }
	.a_Dur_20_PC { animation-duration: 2.0s; }
	.a_Dur_21_PC { animation-duration: 2.1s; }
	.a_Dur_22_PC { animation-duration: 2.2s; }
	.a_Dur_23_PC { animation-duration: 2.3s; }
	.a_Dur_24_PC { animation-duration: 2.4s; }
	.a_Dur_25_PC { animation-duration: 2.5s; }
	.a_Dur_26_PC { animation-duration: 2.6s; }
	.a_Dur_27_PC { animation-duration: 2.7s; }
	.a_Dur_28_PC { animation-duration: 2.8s; }
	.a_Dur_29_PC { animation-duration: 2.9s; }
	.a_Dur_30_PC { animation-duration: 3.0s; }
	.a_Dur_31_PC { animation-duration: 3.1s; }
	.a_Dur_32_PC { animation-duration: 3.2s; }
	.a_Dur_33_PC { animation-duration: 3.3s; }
	.a_Dur_34_PC { animation-duration: 3.4s; }
	.a_Dur_35_PC { animation-duration: 3.5s; }
	.a_Dur_36_PC { animation-duration: 3.6s; }
	.a_Dur_37_PC { animation-duration: 3.7s; }
	.a_Dur_38_PC { animation-duration: 3.8s; }
	.a_Dur_39_PC { animation-duration: 3.9s; }
	.a_Dur_40_PC { animation-duration: 4.0s; }
	.a_Dur_41_PC { animation-duration: 4.1s; }
	.a_Dur_42_PC { animation-duration: 4.2s; }
	.a_Dur_43_PC { animation-duration: 4.3s; }
	.a_Dur_44_PC { animation-duration: 4.4s; }
	.a_Dur_45_PC { animation-duration: 4.5s; }
	.a_Dur_46_PC { animation-duration: 4.6s; }
	.a_Dur_47_PC { animation-duration: 4.7s; }
	.a_Dur_48_PC { animation-duration: 4.8s; }
	.a_Dur_49_PC { animation-duration: 4.9s; }
	.a_Dur_50_PC { animation-duration: 5.0s; }

}

/* styleタグ指定用 */
.a_Time {
animation-delay: var(--a-delay, 0s);
animation-duration: var(--a-dur, 1s);
}



/* ■ JSライブラリ ==================================================================================== */

/*
Swiper
*/


/* Swiper：カスタマイズ --------------------------------------------------- */z
