@charset "UTF-8";

/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WP Maruso Group Theme
	ver.2023.08.16.Custom-
	スタイルシート
────────────────────────────────────────
FileName:		/marusogroupTheme/assets/css/style-common.css
Editor:			TRUSTEC
Description:	スタイルシート。
────────────────────────────────────────
2023/07/25:		公開。
2022/12/01:		開発開始。
2022/11/01:		サンプル開発開始。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/





/* ::::: [COMMON] ::::: */

/* Custom Properties
--------- --------- --------- ------- */
:root {

	/*
	 * フォントサイズ
	 */
	/**	Introduction Title Font Size: 100px	*/
	--title-intro-font-size: max(2.5rem, 5.21vw);
	/**	Introduction Child Title Font Size: 80px	*/
	--title-intro-child-font-size: max(2rem, 4.17vw);
	/**	Introduction Description Font Size: 32px	*/
	--title-intro-description-font-size: max(0.9rem, 1.67vw);
	/**	TopicPath Font Size: 20px	*/
	--topicpath-font-size: max(1rem, 1.04vw);




	/*
	 * マガジンレイアウトの水平方向の余白
	 */
/*	--magazin-layout-space-width: 4.8vw;
	--magazin-layout-space-width-half: 2.4vw;
	--magazin-layout-space-width-double: 9.6vw;*/
/*	--magazin-layout-space-width: 8vw;
	--magazin-layout-space-width-half: 4vw;
	--magazin-layout-space-width-double: 16vw;*/
	--magazin-layout-space-width: calc(var(--header-padding-x) * 2);
	--magazin-layout-space-width-half: var(--header-padding-x);
	--magazin-layout-space-width-double: calc(var(--header-padding-x) * 4);

	/*
	 * マガジンレイアウトの垂直方向の余白
	 */
	--magazin-layout-space-height: 10vw;
	--magazin-layout-space-height-half: 5vw;
	--magazin-layout-space-height-double: 20vw;

	/*
	 * ページレイアウトの水平方向の余白
	 */
/*	--page-layout-space-width: 4.8vw;*/
/*	--page-layout-space-width: 8vw;
	--page-layout-space-width-half: 4vw;
	--page-layout-space-width-double: 16vw;*/
	--page-layout-space-width: calc(var(--header-padding-x) * 2);
	--page-layout-space-width-half: var(--header-padding-x);
	--page-layout-space-width-double: calc(var(--header-padding-x) * 4);

	/*	ページレイアウトの最大表示幅	*/
/*	--page-layout-wrapper-max-width: 1600px;*/
	--page-layout-wrapper-max-width: 92%;

	/*	ブロック要素に付加する垂直方向の余白	*/
	--page-block-space-height: min(5em, 7vw);


	/*		*/
	--section-background-color-1: rgba(283, 38, 33, 0.08);
	/*		*/
	--section-background-color-2: rgba(0, 0, 0, 0.08);
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth < SM	*/
@media (max-width: 767px) {

	:root {

		/*	フォントサイズ	*/
		--title-intro-font-size: 3.21rem;					/*	--title-font-size-45	*/
		--title-intro-child-font-size: 3.21rem;				/*	--title-font-size-45	*/
		--title-intro-description-font-size: 1.14rem;		/*	--title-font-size-16	*/

		/*	マガジンレイアウトの水平方向の余白	*/
		--magazin-layout-space-width: max(20px, 1rem);
		--magazin-layout-space-width-half: max(20px, 1rem);
		--magazin-layout-space-width-double: max(20px, 1rem);

		/*	マガジンレイアウトの垂直方向の余白	*/
		--magazin-layout-space-height: 5rem;
		--magazin-layout-space-height-half: 5rem;
		--magazin-layout-space-height-double: 10rem;

		/*	ページレイアウトの水平方向の余白	*/
		--page-layout-space-width: max(20px, 1rem);
		--page-layout-space-width-half: max(20px, 1rem);
		--page-layout-space-width-double: max(20px, 1rem);

		/*	ページレイアウトの最大表示幅	*/
		--page-layout-wrapper-max-width: 100%;
	}
}





/* Boot Strap Hacks:
--------- --------- --------- ------- */






/* Common Tags
--------- --------- --------- ------- */
body {
/*	background-color: #ffffff;
	color: #000000;*/

	line-break: strict;
	word-break: break-word;
}

body.page-child {
	background: url("../images/common/background.svg") repeat-y left top;
	background-size: 30.72%;
}




/* ::::: [HEADER] ::::: */

/* Page Header
--------- --------- --------- ------- */
#pageHeader {
	background-color: var(--header-menu-background-color);
	color: var(--header-menu-color);
}

#pageHeader a {
	color: currentColor;
}

/* Page Header's Toggle Button
--------- --------- --------- ------- */
#pageHeader .navbar-toggler {
	color: currentColor;
}

/* Page Header Scrolled
--------- --------- --------- ------- */
#pageHeader.scrolled {
	background-color: var(--header-menu-scrolled-background-color);
/*	color: var(--header-menu-scrolled-color);*/
	transition: 0.4s;
}
#pageHeader.scrolled a,
#pageHeader.scrolled .navbar-toggler {
/*	color: #000000;*/
	color: var(--header-menu-scrolled-color);
}

#pageHeader.scrolled .navbar-brand img {
	content: url("../images/common/logo-header-black.svg#logo-group");
}
#pageHeader.scrolled .header-menu-icon img {
	content: url("../images/common/icon-contact-black.svg");
}





/* ::::: [INTRODUCTION] ::::: */

/* Intro
--------- --------- --------- ------- */
.intro {
	background: var(--common-pointed-color-1) no-repeat center center;	/*	イメージは各ページでアイキャッチを拾って設定	*/
	background-size: cover;
	color: #ffffff;
	width: 100%;
	height: calc(100vh - 2rem);
	padding-left: var(--header-padding-x);
	padding-right: var(--header-padding-x);
	overflow: hidden;
	position: relative;
}

.intro-wrapper {
	height: 100%;
/*	background-color: rgba(0, 255, 0, 0.5);*/
}

.intro-title {
	position: absolute;
	top: 46%;
	left: 13%;
	transform: translateY(-50%);
}

.intro-title .title {
	font-size: var(--title-intro-font-size);	/*	--title-font-size-100	*/
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-bold);
	font-style: var(--common-font-an-style);
	line-height: 1.2em;
	letter-spacing: 0.1em;
	text-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 3px 3px 5px rgba(0, 0, 0, 0.3);
	margin-bottom: 1.5rem;
	display: block;
}

.intro-title .title-small {
	font-size: var(--title-intro-description-font-size);	/*	--title-font-size-32	*/
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
	line-height: 1.5em;
	letter-spacing: initial;
	text-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 3px 3px 5px rgba(0, 0, 0, 0.3);
	margin-bottom: 0;
	display: block;
}
.intro-title .title-small::before {
	content: "";
	background-color: var(--common-pointed-color-1);
	vertical-align: middle;
	width: 3px;
	height: 2.6em;
	margin-left: 0.3em;
	margin-right: 1em;
	display: inline-block;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 3px 3px 5px rgba(0, 0, 0, 0.3);
}

/*	波打つイメージ	*/
.intro-waves-wrapper {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
}
.intro-waves-wrapper img {
	width: 100%;
	height: auto;
}

/*	パンくずリスト	*/
.intro-topicpath {
	font-size: var(--topicpath-font-size);	/*	--title-font-size-20	*/
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight);
	font-style: var(--common-font-style);
	margin: 0;
	padding: 1em;
	position: absolute;
	bottom: 0;
	right: var(--header-padding-x);
	--bs-breadcrumb-divider: "─";

/*	background-color: rgba(255, 255, 255, 0.2);*/
}
.intro-topicpath .breadcrumb {
	color: #ffffff;
	margin: 0;
	padding: 0;
}
.intro-topicpath .breadcrumb li::before,
.intro-topicpath .breadcrumb .breadcrumb-item,
.intro-topicpath .breadcrumb .breadcrumb-item a {
	color: currentColor;
	text-decoration: none;
}

/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Intro
	--------- --------- --------- ------- */
	.intro {
		height: calc(100vh - 3rem);
	}

	.intro-title {
		left: var(--header-padding-x);
	}

	.intro-title .title {
		margin-bottom: 0;
		text-shadow: none;
	}

	.intro-title .title-small {
		margin-top: 0.5em;
		text-shadow: none;
	}
	.intro-title .title-small::before {
		content: "";
		background: none;
		width: 5.5em;
		height: auto;
		margin: 0 0 -0.4em 0;
		padding: 0;
		border-bottom: solid 2px var(--common-pointed-color-1);
		box-shadow: none;
		display: inline-block;
		position: absolute;
		bottom: 0;
		left: 0;
	}

	/*	波打つイメージ	*/
	.intro-waves-wrapper {
	}
	.intro-waves-wrapper img {
		width: 600%;
	}
}



/* Intro Child
--------- --------- --------- ------- */
.intro-child {
	background: var(--common-pointed-color-1) no-repeat center center;	/*	イメージは各ページでアイキャッチを拾って設定	*/
	background-size: cover;
	color: #ffffff;
	width: 100%;
	height: 66.94vh;
	margin-bottom: max(5rem, 7.5vw);
}

.intro-child-wrapper {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.intro-child-overlays-wrapper {
	position: absolute;
	top: 40%;
	left: 6%;
	transform: translateY(-50%);
}

.intro-child-overlays-wrapper .title {
	font-size: var(--title-intro-child-font-size);		/*	--title-font-size-80	*/
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-bold);
	font-style: var(--common-font-an-style);
	line-height: 1.2em;
	letter-spacing: 0.1em;
	text-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 3px 3px 5px rgba(0, 0, 0, 0.3);
	margin-bottom: 1.5rem;
	display: block;
}

.intro-child-overlays-wrapper .title-small {
/*	font-size: 1.78rem;	*/
/*	font-size: clamp(1rem, 1.57vw, 1.78rem);				/*	--title-font-size-32	*/
	font-size: var(--title-intro-description-font-size);	/*	--title-font-size-32	*/
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
	line-height: 1.5em;
	letter-spacing: initial;
	text-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 3px 3px 5px rgba(0, 0, 0, 0.3);
	margin-bottom: 1rem;
	display: block;
}

.intro-child-topicpath {
	font-size: var(--topicpath-font-size);	/*	--title-font-size-20	*/
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight);
	font-style: var(--common-font-style);
	margin: 0;
/*	padding: 1rem 3rem 0 3rem;	*/
	padding: 1vw var(--header-padding-x) 0 var(--header-padding-x);

	--bs-breadcrumb-divider: "─";
}
.intro-child-topicpath .breadcrumb {
	color: #a2a2a2;
	margin: 0;
	padding: 0;
}
.intro-child-topicpath .breadcrumb li::before,
.intro-child-topicpath .breadcrumb .breadcrumb-item {
	color: currentColor;
}
.intro-child-topicpath .breadcrumb .breadcrumb-item a {
	color: var(--common-pointed-color-1);
	text-decoration: none;
}

/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Intro Child
	--------- --------- --------- ------- */
	.intro-child {
		height: 80vh;
	}

	.intro-child-overlays-wrapper {
		width: calc(100vw - 12%);
		left: var(--header-padding-x);
	}
}



/* Intro Recruit
--------- --------- --------- ------- */
.intro-recruit {
	background: var(--common-pointed-color-1) no-repeat center center;	/*	イメージは各ページでアイキャッチを拾って設定	*/
	background-size: cover;
	color: #ffffff;
	width: 100%;
	height: 67vh;
	margin-bottom: max(5rem, 7.5vw);
}

.intro-recruit-wrapper {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.intro-recruit-overlays-wrapper {
	position: absolute;
	bottom: 5%;
	left: 10%;
	/*transform: translateY(-50%);*/
}

.intro-recruit-overlays-wrapper .title {
	font-size: var(--title-intro-child-font-size);		/*	--title-font-size-80	*/
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-bold);
	font-style: var(--common-font-an-style);
	line-height: 1.2em;
	letter-spacing: 0.1em;
	text-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 3px 3px 5px rgba(0, 0, 0, 0.3);
	margin-bottom: 1.5rem;
	display: block;
}

.intro-recruit-overlays-wrapper .title-small {
	background: var(--common-pointed-color-1);
	font-size: var(--title-intro-description-font-size);	/*	--title-font-size-32	*/
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
	line-height: 1em;
	letter-spacing: 0.1em;
	margin-bottom: 1rem;
	padding: 0.7em 1em;
	display: inline-block;
}

.intro-recruit-topicpath {
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight);
	font-style: var(--common-font-style);
	margin: 0;
	padding: 1vw var(--header-padding-x) 0 var(--header-padding-x);

	--bs-breadcrumb-divider: "─";
}
.intro-recruit-topicpath .breadcrumb {
	color: #a2a2a2;
	margin: 0;
	padding: 0;
}
.intro-recruit-topicpath .breadcrumb li::before,
.intro-recruit-topicpath .breadcrumb .breadcrumb-item {
	color: currentColor;
}
.intro-recruit-topicpath .breadcrumb .breadcrumb-item a {
	color: var(--common-pointed-color-1);
	text-decoration: none;
}

/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Intro Child
	--------- --------- --------- ------- */
	.intro-recruit {
		height: 80vh;
	}

	.intro-recruit-overlays-wrapper {
		width: calc(100vw - 12%);
		bottom: auto;
		top: 50%;
		left: var(--header-padding-x);
		transform: translateY(-50%);
	}

	.intro-recruit-overlays-wrapper .title {
		/*font-size: 2rem;*/
		text-shadow: none;
	}

	.intro-recruit-overlays-wrapper .title-small {
		text-shadow: none;
	}
}





/* ::::: [LAYOUT-PARTS] ::::: */

/* Magazin Layout
--------- --------- --------- ------- */
.magazine-layout {
}
.magazine-layout-wrapper {
}


/*	水平方向のmargin	*/
.ml-mx {
	margin-left: var(--magazin-layout-space-width);
	margin-right: var(--magazin-layout-space-width);
}
.ml-ms {
	margin-left: var(--magazin-layout-space-width);
}
.ml-me {
	margin-right: var(--magazin-layout-space-width);
}

.ml-mx-half {
	margin-left: var(--magazin-layout-space-width-half);
	margin-right: var(--magazin-layout-space-width-half);
}
.ml-ms-half {
	margin-left: var(--magazin-layout-space-width-half);
}
.ml-me-half {
	margin-right: var(--magazin-layout-space-width-half);
}

.ml-mx-double {
	margin-left: var(--magazin-layout-space-width-double);
	margin-right: var(--magazin-layout-space-width-double);
}
.ml-ms-double {
	margin-left: var(--magazin-layout-space-width-double);
}
.ml-me-double {
	margin-right: var(--magazin-layout-space-width-double);
}

/*	垂直方向のmargin	*/
.ml-my {
	margin-top: var(--magazin-layout-space-height);
	margin-bottom: var(--magazin-layout-space-height);
}
.ml-mt {
	margin-top: var(--magazin-layout-space-height);
}
.ml-mb {
	margin-bottom: var(--magazin-layout-space-height);
}

.ml-my-half {
	margin-top: var(--magazin-layout-space-height-half);
	margin-bottom: var(--magazin-layout-space-height-half);
}
.ml-mt-half {
	margin-top: var(--magazin-layout-space-height-half);
}
.ml-mb-half {
	margin-bottom: var(--magazin-layout-space-height-half);
}

.ml-my-double {
	margin-top: var(--magazin-layout-space-height-double);
	margin-bottom: var(--magazin-layout-space-height-double);
}
.ml-mt-double {
	margin-top: var(--magazin-layout-space-height-double);
}
.ml-mb-double {
	margin-bottom: var(--magazin-layout-space-height-double);
}


/*	水平方向のpadding	*/
.ml-px {
	padding-left: var(--magazin-layout-space-width);
	padding-right: var(--magazin-layout-space-width);
}
.ml-ps {
	padding-left: var(--magazin-layout-space-width);
}
.ml-pe {
	padding-right: var(--magazin-layout-space-width);
}


.ml-py {
	padding-top: var(--magazin-layout-space-height-half);
	padding-bottom: var(--magazin-layout-space-height-half);
}
.ml-pt {
	padding-top: var(--magazin-layout-space-height-half);
}
.ml-pb {
	padding-bottom: var(--magazin-layout-space-height-half);
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {
}



/* Page Layout
--------- --------- --------- ------- */
.page-layout {
	padding-left: var(--page-layout-space-width);
	padding-right: var(--page-layout-space-width);
}
.page-layout-wrapper {
/*	max-width: var(--page-layout-wrapper-max-width);
	margin-left: auto;
	margin-right: auto;*/
}

/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
/*
	.page-layout {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	.page-layout-wrapper {
		max-width: none;
	}*/
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {
	.page-layout {
		padding-left: 0;
		padding-right: 0;
	}
	.page-layout-wrapper {
	}
}



/* Layout Alignment Wrappers
--------- --------- --------- ------- */

/*		*/
.layout-pullover-left,
.layout-pullover-right {
	position: relative;
}

.layout-pullover-left {
	margin-left: 0;
	margin-right: var(--magazin-layout-space-width-double);
	/*background-color: rgba(180, 255, 0, 0.1);*/
}
.layout-pullover-left .layout-wrapper {
	margin-left: var(--magazin-layout-space-width);
	margin-right: 0;
	/*background-color: rgba(180, 255, 0, 0.1);*/
}

.layout-pullover-right {
	margin-left: var(--magazin-layout-space-width-double);
	margin-right: 0;
	/*background-color: rgba(0, 255, 180, 0.1);*/
}
.layout-pullover-right .layout-wrapper {
	margin-left: 0;
	margin-right: var(--magazin-layout-space-width);
	/*background-color: rgba(180, 255, 0, 0.1);*/
}



/*	以下削除予定	*/
.layout-align-left {
	padding-left: var(--magazin-layout-space-width);
}
.layout-align-left .layout-align-wrapper {
	margin-right: var(--magazin-layout-space-width);
}

.layout-align-left .layout-align-pullover {
	position: relative;
}
.layout-align-left .layout-align-pullover .layout-align-pullover-wrapper {
}

/*		*/
.layout-align-right {
	padding-right: var(--magazin-layout-space-width);
}
.layout-align-right .layout-align-wrapper {
	margin-left: var(--magazin-layout-space-width);
}

.layout-align-right .layout-align-pullover {
	position: relative;
}
.layout-align-right .layout-align-pullover .layout-align-pullover-wrapper {
}

/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/*		*/
	.layout-align-left {
		/*padding-left: 1rem;*/
	}
	.layout-align-left .layout-align-wrapper {
		/*margin-right: 1rem;*/
	}
	.layout-align-left .layout-align-pullover {
		/*margin-left: 1rem;*/
	}

	/*		*/
	.layout-align-right {
		/*padding-right: 1rem;*/
	}
	.layout-align-right .layout-align-wrapper {
		/*margin-left: 1rem;*/
	}
	.layout-align-right .layout-align-pullover {
		/*margin-right: 1rem;*/
	}
}



/* Backgrounds
--------- --------- --------- ------- */
.background-pullover-left,
.background-pullover-right {
	position: relative;
/*	background-color: rgba(0, 0, 180, 0.1);*/
}

.background-pullover-left::before,
.background-pullover-right::before {
	content: "";
	width: 94%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	z-index: -1;
	/*background-color: rgba(180, 255, 0, 0.1);*/
}

.background-pullover-left::before {
	left: 0;
	/*background-color: rgba(180, 255, 0, 0.1);*/
}
.background-pullover-right::before {
	right: 0;
	/*background-color: rgba(0, 255, 180, 0.1);*/
}

/*	朱	*/
.background-varmillion {
}
.background-varmillion::before {
	background-color: var(--section-background-color-1);
}

/*	グレイ	*/
.background-gray {
}
.background-gray::before {
	background-color: var(--section-background-color-2);
}





/* Common Margin and Padding
--------- --------- --------- ------- */
.bs-my {
	margin-top: var(--page-block-space-height);
	margin-bottom: var(--page-block-space-height);
}
.bs-mt {
	margin-top: var(--page-block-space-height);
}
.bs-mb {
	margin-bottom: var(--page-block-space-height);
}

.bs-py {
	padding-top: var(--page-block-space-height);
	padding-bottom: var(--page-block-space-height);
}
.bs-pt {
	padding-top: var(--page-block-space-height);
}
.bs-pb {
	padding-bottom: var(--page-block-space-height);
}





/* ::::: [LAYOUT-PARTS] ::::: */

/* Pictures
--------- --------- --------- ------- */
.picture img {
	vertical-align: bottom;
	width: 100%;
}

/*	横長	*/
.landscapes {
	aspect-ratio: 4 / 3;
	margin-left: auto;
	margin-right: auto;
	display: block;
}
.landscapes .landscapes-wrapper {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.landscapes .landscapes-wrapper .picture {
	width: 100%;
	margin: 0;
	padding: 0;
}
.landscapes .picture {
	width: 100%;
	margin: 0;
	padding: 0;
}
.landscapes .picture img {
	object-fit: cover;
	object-position: center;
}

/*	縦長	*/
.portraits {
	width: 100%;
	aspect-ratio: 4 / 3;
	display: block;
}
.portraits-wrapper {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.portraits .portraits-wrapper .picture {
	width: 100%;
	margin: 0;
	padding: 0;
	/*background-color: rgba(255, 255, 0, 0.1);*/
}
.portraits .portraits-wrapper .picture img {
	object-fit: cover;
	object-position: center;
}



/* Message
--------- --------- --------- ------- */
/*	Message	*/
.message {
	line-height: 1.5em;
}

/*	Signature	*/
.signature {
	font-size: clamp(1.2rem, 2.1vw, 2.25rem);		/*	--title-font-size-40	*/
	font-weight: var(--common-font-weight-medium);
	line-height: 1em;
}
.signature-post {
	font-size: min(1rem, 0.6em);
	margin-bottom: 0;
}
.signature-name {
	margin-bottom: 0;
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/*	Message	*/
	.message {
		letter-spacing: 0.1em;
	}

	.pattern-title-line .title {
	}
	.pattern-title-line .title::after {
	}

	.pattern-title-line .title-small {
	}
}





/* ::::: [PATTERN-TITLE-MARKER] ::::: */

/* Setting
--------- --------- --------- ------- */
.pattern-title-marker {
	/*	カスタムプロパティ	*/
	--title-pointed-color: var(--common-pointed-color-1);
	--title-font-size: max(1rem, 2.97vw);
	--title-font-size-small: max(0.5rem, 1.57vw);

	font-size: var(--title-font-size);
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-normal);
}

/*		*/
.pattern-title-marker .title {
	font-size: inherit;
	font-family: inherit;
	font-weight: inherit;
	font-style: inherit;
	line-height: 1.3em;
	letter-spacing: 0.15em;
	margin: 0;
	padding: 0;
	display: inline-block;
}
.pattern-title-marker .title .title-text {
	background-color: var(--title-pointed-color);
	color: #ffffff;
	padding: 0.2em 0.1em;
	display: inline-block;
}

/*		*/
.pattern-title-marker .title-small {
	color: var(--title-pointed-color);
	font-size: var(--title-font-size-small);
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-medium);
	font-style: var(--common-font-an-style);
/*	display: inline-block;*/
	margin: 0.2em 0.5em 0 0;
	padding: 0;
}

/*	縦書き	*/
.pattern-title-marker.vertical {
	writing-mode: vertical-rl;
}
.pattern-title-marker.vertical .title {
}
.pattern-title-marker.vertical .title .title-text {
	padding: 0.5em 0.3em;
}
.pattern-title-marker.vertical .title-small {
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	.pattern-title-marker {
		/*	カスタムプロパティ	*/
		--title-font-size: 1.43rem;		/*	--title-font-size-20	*/
/*		--title-font-size-small: */
	}

	/*		*/
	.pattern-title-marker .title {
	}
	.pattern-title-marker .title .title-text {
		line-height: 1em;
		padding: 0.3em var(--magazin-layout-space-width) 0.4em var(--magazin-layout-space-width);
	}

	/*	縦書き	*/
	.pattern-title-marker.vertical {
		writing-mode: initial;
		width: auto;
		height: auto;
	}

	.pattern-title-marker.vertical .title {
	}
	.pattern-title-marker.vertical .title .title-text {
		line-height: 1em;
		padding: 0.3em var(--magazin-layout-space-width) 0.4em var(--magazin-layout-space-width);
	}
}





/* ::::: [PATTERN-TITLE-HANDWRITE] ::::: */

/* Setting
--------- --------- --------- ------- */
.pattern-title-handwriting {
	/*	カスタムプロパティ	*/
	--title-pointed-color: var(--common-pointed-color-1);
	--title-font-size: max(1.5rem, 6.2vw);

	color: var(--title-pointed-color);
	opacity: 0.6;
	font-size: 6.62rem;
	font-size: var(--title-font-size);
	font-family: kremlin-pro-expanded, sans-serif;
	font-weight: 500;
	font-style: normal;
	line-height: 1em;
	letter-spacing: 0.1em;
	text-shadow: 0 0 3px rgb(0 0 0 / 30%);
	text-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 3px 3px 5px rgba(0, 0, 0, 0.3);
	transform: rotate(-8deg);
	margin: 0;
	padding: 0;
	display: inline-block;
/*	position: absolute;
	bottom: 0;
	right: calc(var(--recruit-movie-title-hand-font-size) * -1);*/
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	.pattern-title-handwriting {
		/*	カスタムプロパティ	*/
		--title-font-size: 2.36rem;		/*	--title-font-size-33	*/
	}

	.pattern-title-handwriting {
/*		right: 0;*/
	}
}





/* ::::: [PATTERN-TITLE-RIBBON] ::::: */

/* Setting
--------- --------- --------- ------- */
.pattern-title-ribbon {
	/*	カスタムプロパティ	*/
	--background-color-level1: var(--common-pointed-color-1);
	--background-color-level2: #707070;
	--background-color-level4: #fff4f4;
	--highlight-color: var(--common-pointed-color-1);

	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
}

/*	レベル１の見出し	*/
.pattern-title-ribbon.title-level1 {
	background-color: var(--background-color-level1);
/*	font-size: 1.945rem;*/
/*	font-size: clamp(1.2rem, 1.83vw, 1.945rem);			--title-font-size-35	*/
/*	font-size: 1.83vw;								/*	--title-font-size-35	*/
	font-size: max(1.2rem, 1.83vw);					/*	--title-font-size-35	*/
	line-height: 1.5em;
	color: #ffffff;
	margin-bottom: 1.5em;
	padding: 0.3em 0 0.4em 1.5em;
}

/*	レベル２の見出し	*/
.pattern-title-ribbon.title-level2 {
	background-color: var(--background-color-level2);
	color: #ffffff;
/*	font-size: 1.38rem;*/
/*	font-size: clamp(1.2rem, 1.3vw, 1.38rem);		--title-font-size-25	*/
/*	font-size: 1.3vw;							/*	--title-font-size-25	*/
	font-size: max(1.2rem, 1.3vw);				/*	--title-font-size-25	*/
	line-height: 1.5em;
	margin-bottom: 1.5em;
	padding: 0.2em 0 0.2em 2em;
}

/*	レベル３の見出し	*/
.pattern-title-ribbon.title-level3 {
	color: var(--common-color);
/*	font-size: 1.38rem;*/
/*	font-size: clamp(1.2rem, 1.3vw, 1.38rem);		--title-font-size-25	*/
/*	font-size: 1.3vw;							/*	--title-font-size-25	*/
	font-size: max(1.2rem, 1.3vw);				/*	--title-font-size-25	*/
/*	font-weight: var(--common-font-weight-black);*/
	line-height: 1.5em;
	margin-bottom: 0.5em;
	padding: 0.5em 0 0.5em 1em;
	border-left: solid 0.4em var(--highlight-color);
	position: relative;
}

/*	レベル４の見出し	*/
.pattern-title-ribbon.title-level4 {
	background-color: var(--background-color-level4);
	color: var(--common-color);
/*	font-size: 1.2em;*/
/*	font-size: 1.2vw;*/
	font-size: max(1em, 1.2vw);					/*	--title-font-size-23	*/
	line-height: 1.5em;
	margin-bottom: 1em;
	padding: 0.5em 1.5em 0.6em 1.5em;
	border-right: solid 1em var(--highlight-color);
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/*	レベル１の見出し	*/
	.pattern-title-ribbon.title-level1 {
		font-size: 1.28rem;		/*	--title-font-size-18	*/
		margin-right: var(--page-layout-space-width);			/*★☆*/
		padding-left: calc(var(--page-layout-space-width) * 2);	/*★☆*/
	}

	/*	レベル２の見出し	*/
	.pattern-title-ribbon.title-level2 {
		font-size: 1.14rem;		/*	--title-font-size-16	*/
		margin-right: var(--page-layout-space-width);			/*★☆*/
		padding-left: calc(var(--page-layout-space-width) * 2);	/*★☆*/
	}

	/*	レベル３の見出し	*/
	.pattern-title-ribbon.title-level3 {
		font-size: 1.14rem;		/*	--title-font-size-16	*/
		padding-left: calc(var(--page-layout-space-width) * 0.6);	/*★☆*/
		border-left-width: 0.71rem;
	}

	/*	レベル４の見出し	*/
	.pattern-title-ribbon.title-level4 {
		font-size: 1.14rem;		/*	--title-font-size-16	*/
		padding-left: var(--page-layout-space-width);	/*★☆*/
		border-right-width: 1.64rem;
	}
}





/* ::::: [PATTERN-TITLE-LINE] ::::: */

/* Setting
--------- --------- --------- ------- */
/*		*/
.pattern-title-line {
	--title-color: #5c5c5c;
	--title-small-color: var(--common-pointed-color-1);
	--title-border-color: var(--common-border-color-1);
/*	--title-font-size: 2.71vw;					/*	--title-font-size-52	*/
	--title-font-size: max(1.15rem, 2.71vw);	/*	--title-font-size-52	*/

	font-size: var(--title-font-size);
	line-height: 1em;
	height: 2.5em;
	margin-bottom: 1em;
	position: relative;
	/*background-color: rgba(255, 0, 0, 0.1);*/
}
.pattern-title-line .title {
	color: var(--title-color);
	font-size: inherit;
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
	line-height: 1em;
	letter-spacing: 0.1em;
	width: 100%;
	display: flex;
	align-items: center;
	position: absolute;
	top: 0.8em;
	left: 0;
}
.pattern-title-line .title::after {
	content: "";
	margin-left: var(--title-font-size);
	border-top: 1px solid var(--title-border-color);
	flex-grow: 1;
}

.pattern-title-line .title-small {
	color: var(--title-small-color);
	font-size: 0.44em;
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-bold);
	font-style: var(--common-font-an-style);
	line-height: 1em;
	letter-spacing: 0.2em;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	/*		*/
	.pattern-title-line {
	}

	.pattern-title-line .title {
	}
	.pattern-title-line .title::after {
	}

	.pattern-title-line .title-small {
	}
}





/* ::::: [PATTERN-TITLE-LINE2] ::::: */

/* Setting
--------- --------- --------- ------- */
.pattern-title-line2 {
	--title-color: #5c5c5c;
	--title-small-color: var(--common-pointed-color-1);
	--title-border-color: var(--common-border-color-1);
	--title-font-size: max(1.15rem, 2.71vw);	/*	--title-font-size-52	*/

	font-size: var(--title-font-size);
	line-height: 1.5em;
	margin-bottom: 1.5em;

	position: relative;

	display: flex;
	flex-direction: column;
	justify-content: flex-start;
/*	background-color: rgba(255, 0, 0, 0.1);*/
}
.pattern-title-line2:where(.is-layout-flex) {
	gap: 0;
}

.pattern-title-line2 .title {
	color: var(--title-color);
	font-size: inherit;
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
	line-height: 1.5em;
	letter-spacing: 0.1em;
	width: 100%;
	order: 2;

	display: flex;
	flex-direction: row;
	align-items: center;
/*	background-color: rgba(255, 0, 0, 0.1);*/
}
.pattern-title-line2 .title::after {
	content: "";
	margin-left: var(--title-font-size);
	border-top: 1px solid var(--title-border-color);
	flex-grow: 1;
}

.pattern-title-line2 .title-small {
	color: var(--title-small-color);
	font-size: 0.44em;
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-bold);
	font-style: var(--common-font-an-style);
	line-height: 1.5em;
	letter-spacing: 0.2em;
	margin: 0;
	padding: 0;
	order: 1;
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	/*		*/
	.pattern-title-line2 {
		--title-font-size: 1.43rem;		/*	--title-font-size-20	*/

		display: flex;
		align-items: center !important;
	}


	.pattern-title-line2 .title {
		width: auto;
		display: flex;
		flex-direction: column;
/*		background-color: rgba(255, 255, 0, 0.1);*/
	}
	.pattern-title-line2 .title::after {
/*		width: 100%;*/
		width: 61.33vw;
		margin: 0.3em 0;
	}

	.pattern-title-line2 .title-small {
		font-size: 0.72rem;
		margin-bottom: 0;
	}
}





/* ::::: [PATTERN-TITLE-SMALL-CAPTION] ::::: */

/* Setting
--------- --------- --------- ------- */
.pattern-title-smallcaption {
	--section-title-color: var(--common-color);
	--section-title-small-color: var(--common-pointed-color-1);


	color: var(--section-title-color);
/*	font-size: clamp(1.5rem, 1.82vw, 1.94rem);			/*	--title-font-size-35	*/
/*	font-size: 1.82vw;									/*	--title-font-size-35	*/
	font-size: max(1.2rem, 1.82vw);						/*	--title-font-size-35	*/
	line-height: 1.5em;
	margin-bottom: 1em;
}
.pattern-title-smallcaption .title {
	color: inherit;
	font-size: inherit;
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-black);
	font-style: var(--common-font-style);
	letter-spacing: 0.1em;
/*	width: 100%;*/
	margin: 0;
	padding: 0;
}
.pattern-title-smallcaption .title-small {
	color: var(--section-title-small-color);
	font-size: max(10px, 0.52em);						/*	--title-font-size-18	*/
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-medium);
	line-height: 1.2em;
	font-style: var(--common-font-an-style);
	letter-spacing: 0.1em;
	margin: 0;
	padding: 0.8em 0;
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < LG	*/
@media (max-width: 991px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	.pattern-title-smallcaption {
	}
}





/* ::::: [PATTERN-TITLE-ROUNDED] ::::: */

/* Setting
--------- --------- --------- ------- */
/*		*/
.pattern-title-rounded {
	--title-font-size: max(1rem, 1.36vw);	/*	--title-font-size-26	*/

	background-color: var(--common-pointed-color-1);
	color: #ffffff;
	font-size: var(--title-font-size);
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-medium);
	font-style: var(--common-font-style);
	line-height: 1em;
	margin-bottom: 1em;
	padding: 0.3em 2em 0.4em 2em;
	border-radius: 1em;
	display: inline-block;
}

/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	.pattern-title-rounded {
		--title-font-size: 1.42rem;		/*	--title-font-size-20	*/

		text-align: center;
		padding: 0.5em 0;
		display: block;
	}
}






/* ::::: [PATTERN-BLOCK-LANDSCAPE] ::::: */

/* Setting
--------- --------- --------- ------- */
.pattern-block-landscape {
	/*	カスタムプロパティ	*/
	--background-color: var(--section-background-color-1);

	position: relative;
	/*background-color: rgba(180, 255, 0, 0.1);*/
}
.pattern-block-landscape::before {
	content: "";
	width: 87%;
	height: 85%;
	display: block;
	position: absolute;
	top: 15%;
	right: 0;
	z-index: -1;
}
.pattern-block-landscape.layout-align-right::before {
	right: 0;
}
.pattern-block-landscape.layout-align-left::before {
	left: 0;
}

/* タイトルとイメージのエリア
--------- --------- --------- ------- */
.pattern-block-landscape .picture-wrapper {
	position: relative;
	/*background-color: rgba(180, 255, 0, 0.1);*/
}
.pattern-block-landscape .picture-wrapper::before {
}

.pattern-block-landscape-max-width {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	/*background-color: rgba(180, 255, 0, 0.1);*/
}

/* Over Write: Pattern Title Marker
--------- --------- --------- ------- */
.pattern-block-landscape .picture-wrapper .pattern-title-marker {
	position: absolute;
	top: 0;
	z-index: 20;
}
.pattern-block-landscape.layout-align-right .picture-wrapper .pattern-title-marker {
	right: 0;
}
.pattern-block-landscape.layout-align-left .picture-wrapper .pattern-title-marker {
	left: 0;
}

/* Over Write: Pattern Title Handwriting
--------- --------- --------- ------- */
.pattern-block-landscape .picture-wrapper .pattern-title-handwriting {
	position: absolute;
	bottom: 0;
	z-index: 20;
}
.pattern-block-landscape.layout-align-right .picture-wrapper .pattern-title-handwriting {
	left: 0;
}
.pattern-block-landscape.layout-align-left .picture-wrapper .pattern-title-handwriting {
	right: 0;
	bottom: 0.2em;
}

/* Pictures
--------- --------- --------- ------- */
/*	横長	*/
.pattern-block-landscape .landscapes {
	max-width: 82%;
	aspect-ratio: 16 / 10;
	position: relative;
	z-index: 10;
/*	background-color: rgba(255, 0, 0, 0.2);*/
}
.pattern-block-landscape .landscapes .landscapes-wrapper .picture {
	aspect-ratio: 16 / 9;
	/*background-color: rgba(255, 255, 0, 0.1);*/
}
.pattern-block-landscape .landscapes .landscapes-wrapper .picture img {
	background-color: #000000;
}

/*	縦長	*/
.pattern-block-landscape .portraits {
	aspect-ratio: 9 / 18;
	position: relative;
	z-index: 10;
	/*background-color: rgba(255, 0, 0, 0.2);*/
}

.pattern-block-landscape .portraits .portraits-wrapper .picture img {
	background-color: #000000;
	aspect-ratio: 9 / 16;
}

/* 文章のエリア
--------- --------- --------- ------- */
.pattern-block-landscape .message-wrapper {
	--message-font-size: max(1em, 1.2vw);		/*	23px	*/
	font-size: var(--message-font-size);
	line-height: 2.2em;
	/*position: relative;*/
}

.pattern-block-landscape .message-wrapper .message-wrapper-center {
	max-width: 95%;
	margin-left: auto;
	margin-right: auto;
	padding-right: var(--magazin-layout-space-width);	/*★☆*/
}

/* Over Write: Message
--------- --------- --------- ------- */
/*	Message	*/
.pattern-block-landscape .message {
	font-size: inherit;
	font-weight: var(--common-font-weight-medium);
	line-height: 2.2em;
}
.pattern-block-landscape .message:not(:last-of-type) {
	margin-bottom: 1em;
}

/*	Signature	*/
.pattern-block-landscape .signature {
	font-size: inherit;
	line-height: 1.5em;
}
.pattern-block-landscape .signature-post {
	font-size: inherit;
}
.pattern-block-landscape .signature-name {
	font-size: 2.26em;
	line-height: 1.5em;
}

/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* 文章のエリア
	--------- --------- --------- ------- */
	.pattern-block-landscape .message-wrapper {
		line-height: 1.8em;
	}

	/* Over Write: Message
	--------- --------- --------- ------- */
	/*	Message	*/
	.pattern-block-landscape .message {
		line-height: 1.8em;
	}
}





/* ::::: [PATTERN-BLOCK-2COLMUNS] ::::: */

/* Setting
--------- --------- --------- ------- */
.pattern-block-2columns {
	/*	カスタムプロパティ	*/
/*	--pattern-block-2columns-border-height: clamp(3rem, 4vw, 4.2em);
	--pattern-block-2columns-border-height-half: clamp(1.5rem, 2vw, 2.1em);*/
	--pattern-block-2columns-border-height: 4vw;
	--pattern-block-2columns-border-height-half: 2vw;
/*	--pattern-block-2columns-border-height: max(2em, 4vw);
	--pattern-block-2columns-border-height-half: max(2em, 2vw);*/
	--pattern-block-2columns-border-color: var(--common-pointed-color-1);

	position: relative;
	/*background-color: rgba(0, 0, 0, 0.1);*/
}
.pattern-block-2columns::before {
	content: "";
	border-top: solid var(--pattern-block-2columns-border-height) var(--pattern-block-2columns-border-color);
	width: 70%;
	height: 0;
	margin-right: auto;
	display: block;
	position: absolute;
	z-index: 10;
}

/* Content
--------- --------- --------- ------- */
.pattern-block-2columns .content {
	padding-top: var(--pattern-block-2columns-border-height);
	/*background-color: rgba(255, 0, 0, 0.1);*/
}

.pattern-block-2columns .content .inner-wrapper {
/*	padding: min(3.3rem, 3vw);*/
	padding: 3vw;
	/*background-color: rgba(255, 0, 0, 0.1);*/
}

/*	本文	*/
.pattern-block-2columns .content .text {
	line-height: 2.5em;
	margin-bottom: 0;
}

/* Picture
--------- --------- --------- ------- */
.pattern-block-2columns .picture {
	aspect-ratio: 4 / 3;
	overflow: hidden;
	position: relative;
}
.pattern-block-2columns .picture img {
	width: 100%;
	height: auto;
/*	object-fit: scale-down;*/
	object-fit: contain;
	position: absolute;
	top: var(--pattern-block-2columns-border-height-half);
}

/* Title
--------- --------- --------- ------- */
.pattern-block-2columns.ribbon-title {
}
.pattern-block-2columns.ribbon-title::before {
	content: "";
	border: none;
	width: auto;
	height: 0;
	margin: auto;
	display: initial;
	position: initial;
	z-index: auto;
}

.pattern-block-2columns.ribbon-title .title {
	background-color: var(--pattern-block-2columns-border-color);
/*	font-size: 1.945rem;*/
/*	font-size: clamp(1.2rem, 1.83vw, 1.945rem);			--title-font-size-35	*/
/*	font-size: 1.83vw;									--title-font-size-35	*/
	font-size: max(1.2rem, 1.83vw);					/*	--title-font-size-35	*/
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
/*	line-height: 1em;*/
	color: #ffffff;
	width: 75%;
	height: max(2em, var(--pattern-block-2columns-border-height));
	margin-right: auto;
	padding: 0.5em 0;
	display: block;
	position: absolute;
	z-index: 10;
}
.pattern-block-2columns.ribbon-title .title::before {
	content: "　";
	padding-left: 0.5em;
}

/* Over Writes: Pattern Title Smallcaption
--------- --------- --------- ------- */
.pattern-block-2columns .pattern-title-smallcaption {
	margin-top: 0;
}

/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < LG	*/
@media (max-width: 991px) {
	/* Content
	--------- --------- --------- ------- */
	.pattern-block-2columns .content {
		padding-top: 0;
	}
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	.pattern-block-2columns {
		/*	カスタムプロパティ	*/
		--pattern-block-2columns-border-height: 3rem;
		--pattern-block-2columns-border-height-half: 1.5rem;
	}
	.pattern-block-2columns::before {
	}

	.pattern-block-2columns .content .inner-wrapper {
		margin-left: var(--page-layout-space-width);
		margin-right: var(--page-layout-space-width);
		padding-left: var(--page-layout-space-width);
		padding-right: var(--page-layout-space-width);
	}


	/* Title
	--------- --------- --------- ------- */
	.pattern-block-2columns.ribbon-title {
		font-size: 1.28rem;				/*	--title-font-size-18	*/
	}
	.pattern-block-2columns.ribbon-title .title {
		line-height: 1.5em;
	}
	.pattern-block-2columns.ribbon-title .title::before {
		padding-left: var(--magazin-layout-space-width-half);	/*★☆*/
	}

	/* Content
	--------- --------- --------- ------- */
	.pattern-block-2columns .content {
		padding-top: 0;
	}

	/*	本文	*/
	.pattern-block-2columns .content .text {
		line-height: 1.78em;
	}


	/* Picture
	--------- --------- --------- ------- */
	.pattern-block-2columns .picture {
	}
	.pattern-block-2columns .picture img {
		padding-left: var(--page-layout-space-width);
		padding-right: var(--page-layout-space-width);
	}

	.pattern-block-2columns .picture img {
		top: var(--pattern-block-2columns-border-height-half);
	}
}






/* ::::: [PATTERN-BLOCK-POINT] ::::: */

/* Setting
--------- --------- --------- ------- */
.pattern-block-point {

	/*	カスタムプロパティ	*/
	--prefix-word-1: "POINT";
	--prefix-word-2: "INITIATIVE";
	--prefix-word-3: "STRENGTHS";
	--prefix-word-4: "FEATURE";
	--prefix-word-5: "TRAINING";
	--prefix-word-6: "TYPE";
	--prefix-word-7: "FROW";
	--prefix-word-none: "";		/*	接頭辞なし	*/
	--prefix-color: #ea5652;
/*	--prefix-space-width: 9em;*/
	--prefix-space-width: 13vw;
	--background-color: #fff4f4;
	--highlight-color: var(--common-pointed-color-1);

	--item-space-height: 1.5vw;

	counter-reset: dl-count;

	color: inherit;
	font-size: inherit;
	font-family: inherit;
	font-weight: inherit;
	font-style: inherit;

/*	background-color: rgba(0, 255, 255, 0.1);*/
}

.pattern-block-point .pattern-block-point-wrapper {
/*	background-color: rgba(0, 255, 255, 0.1);*/
}

.pattern-block-point .pattern-block-point-item {
	counter-increment: dl-count;
	line-height: 1.5em;
/*	display: flex;*/
/*	background-color: rgba(0, 255, 255, 0.1);*/
}

.pattern-block-point .pattern-block-point-item:not(:first-of-type) {
	margin-top: var(--item-space-height);
}

.pattern-block-point .pattern-block-point-item > .wp-block-group__inner-container {
	display: flex;
/*	background-color: rgba(0, 255, 255, 0.1);*/
}

/*	カウンター	*/
.pattern-block-point .pattern-block-point-prefix {
	flex-grow: 0;
	flex-shrink: 1;
	flex-basis: var(--prefix-space-width);
/*	width: 24%;*/
	width: var(--prefix-space-width);
	min-width: var(--prefix-space-width);
	padding: 1em 1em 1em 0;
/*	position: relative;*/
/*	background-color: rgba(0, 255, 0, 0.1);*/
}
/*	接頭辞なし	*/
.pattern-block-point.prefix-only-number .pattern-block-point-prefix {
	flex-basis: 10vw;
	width: 10vw;
	min-width: 10vw;
	padding: 0.5em 1em 0 0;
}

.pattern-block-point .pattern-block-point-counter {
	color: var(--prefix-color);
	font-size: inherit;
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-bold);
	font-style: var(--common-font-an-style);
	line-height: 1em;
/*	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);*/
}
.pattern-block-point .pattern-block-point-counter::before {
	content: var(--prefix-word-1);
/*	font-size: 1.28rem;*/
/*	font-size: clamp(1rem, 1.2vw, 1.28rem);			--title-font-size-23	*/
	font-size: 1.2vw;							/*	--title-font-size-23	*/
	font-size: max(0.8rem, 1.2vw);				/*	--title-font-size-23	*/
	line-height: 1.5em;
	letter-spacing: 0.1em;
	text-align: center;
	display: block;
/*	background-color: rgba(0, 255, 0, 0.1);*/
}
.pattern-block-point.prefix-point .pattern-block-point-counter::before {
	content: var(--prefix-word-1);
}
.pattern-block-point.prefix-initiative .pattern-block-point-counter::before {
	content: var(--prefix-word-2);
}
.pattern-block-point.prefix-strengths .pattern-block-point-counter::before {
	content: var(--prefix-word-3);
}
.pattern-block-point.prefix-feature .pattern-block-point-counter::before {
	content: var(--prefix-word-4);
}
.pattern-block-point.prefix-training .pattern-block-point-counter::before {
	content: var(--prefix-word-5);
}
.pattern-block-point.prefix-type .pattern-block-point-counter::before {
	content: var(--prefix-word-6);
}
.pattern-block-point.prefix-flow .pattern-block-point-counter::before {
	content: var(--prefix-word-7);
}
/*	接頭辞なし	*/
.pattern-block-point.prefix-only-number .pattern-block-point-counter::before {
	content: var(--prefix-word-none);
}

.pattern-block-point .pattern-block-point-counter::after {
	content: "0" counter(dl-count) ".";
/*	font-size: 1.28rem;*/
/*	font-size: clamp(2rem, 2.76vw, 2.945rem);			--title-font-size-53	*/
/*	font-size: 2.76vw;						/*	--title-font-size-53	*/
	font-size: max(2rem, 2.76vw);			/*	--title-font-size-53	*/
	line-height: 1em;
	letter-spacing: 0.1em;
	text-align: center;
	display: block;
/*	background-color: rgba(0, 255, 0, 0.1);*/
}
/*
.pattern-block-point-counter .prefix::before {
	content: var(--prefix-word-1);
	display: block;
	background-color: rgba(0, 255, 0, 0.1);
}
.pattern-block-point-counter .counter::before {
	content: "0" counter(dl-count) ".";
	display: block;
	background-color: rgba(0, 255, 0, 0.1);
}*/

/*	接頭辞なし	*/
.pattern-block-point.prefix-only-number .pattern-block-point-counter::after {
/*	color: var(--prefix-color);*/
	color: var(--common-border-color-1);
/*	font-size: max(2rem, 3vw);*/
/*	font-family: var(--common-font-an-family);*/
	font-weight: var(--common-font-an-weight);
/*	font-style: var(--common-font-an-style);*/
	line-height: 1em;
	text-align: right;
}



/*		*/
.pattern-block-point .pattern-block-point-body {
	padding-left: 2.5vw;
	border-style: none none none solid;
	border-width: max(5px, 1vw);
	border-color: var(--highlight-color);
	flex-grow: 1;
	flex-shrink: 1;
/*	flex-basis: auto;
/*	background-color: rgba(0, 0, 255, 0.1);*/
}

/*	接頭辞なし	*/
.pattern-block-point.prefix-only-number .pattern-block-point-body {
	padding-left: 0;
	border: none;
}

/*		*/
.pattern-block-point .pattern-block-point-title {
	background-color: var(--background-color);
/*	font-size: 1.39em;	*/
/*	font-size: clamp(1.2rem, 1.3vw, 1.389em);		--title-font-size-25	*/
/*	font-size: 1.3vw;							/*	--title-font-size-25	*/
	font-size: max(1rem, 1.3vw);				/*	--title-font-size-25	*/
	font-family: inherit;
	font-weight: var(--common-font-weight-black);
	font-style: inherit;
	letter-spacing: 0.1em;
	margin: 0;
	padding: 1em 2em;
/*	background-color: rgba(255, 0, 0, 0.1);*/
}

/*		*/
.pattern-block-point .pattern-block-point-content {
	line-height: 2em;
	padding: 1em 1.5em;
/*	background-color: rgba(255, 0, 0, 0.1);*/
}
.pattern-block-point .pattern-block-point-content p:last-of-type {
	margin-bottom: 0;
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {

	/*	カウンター	*/
	.pattern-block-point .pattern-block-point-prefix {
		min-width: 7em;
	}
	/*	接頭辞なし	*/
	.pattern-block-point.prefix-only-number .pattern-block-point-prefix {
		min-width: 7em;
	}
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	.pattern-block-point .pattern-block-point-wrapper {
		padding-left: var(--page-layout-space-width);
		padding-right: var(--page-layout-space-width);
	}

	.pattern-block-point .pattern-block-point-item {
	}

	.pattern-block-point .pattern-block-point-item:not(:last-of-type) {
		margin-bottom: 1rem;
	}

	.pattern-block-point .pattern-block-point-item > .wp-block-group__inner-container {
		display: block;
	}

	.pattern-block-point .pattern-block-point-prefix {
		text-align: center;
		width: 100%;
		margin-bottom: 0.5em;
		padding: 0.8em 0.5em;
		border-style: none none solid none;
		border-width: max(8px, 1vw);
		border-color: var(--highlight-color);
	}
	/*	接頭辞なし	*/
	.pattern-block-point.prefix-only-number .pattern-block-point-prefix {
		border: none;
	}

	.pattern-block-point .pattern-block-point-counter {
		font-size: 1rem;
	}
	.pattern-block-point .pattern-block-point-counter::before {
		font-size: 1rem;
		letter-spacing: 0.05em;
		vertical-align: auto;
		margin-right: 0.5em;
		display: inline-block;
	}
	.pattern-block-point .pattern-block-point-counter::after {
		font-size: 2.14rem;			/*	title-font-size-30	*/
		vertical-align: auto;
		display: inline-block;
	}

	.pattern-block-point .pattern-block-point-body {
		padding: 0;
		border: none;
	}

	/*		*/
	.pattern-block-point .pattern-block-point-content {
		line-height: 1.8em;
		padding-left: var(--page-layout-space-width);
		padding-right: var(--page-layout-space-width);
	}

	/*		*/
	.pattern-block-point .pattern-block-point-title {
		font-size: 1.14rem;		/*	--title-font-size-16	*/
		text-align: center;
		padding: 0.5em;
	}
}





/* ::::: [SECTION : PATTERN BLOCK FLOW] ::::: */

/* Settiong
--------- --------- --------- ------- */
.pattern-block-flow {
	/*background-color: rgba(0, 180, 255, 0.1);*/

	--flow-blue: #1c92ff;
	--flow-blue-opacity: rgba(28, 146, 255, 0.1);
	--flow-turquoise: #22d3be;
	--flow-turquoise-opacity: rgba(34, 211, 190, 0.1);
	--flow-scarlet: #ea5652;
	--flow-scarlet-opacity: rgba(234, 86, 82, 0.1);
	--flow-green: #a3CC18;
	--flow-green-opacity: rgba(163, 204, 24, 0.1);
	--flow-border-width: max(2px, 0.2vw);
	--flow-space-width: max(1rem, 1vw);

	font-size: inherit;
	font-family: inherit;
	font-weight: inherit;
	line-height: 1.5em;
}

/* Flex Items
--------- --------- --------- ------- */
.pattern-block-flow .pattern-block-flow-item {
	/*background-color: rgba(0, 0, 0, 0.1);*/
/*	display: flex;
	justify-content: flex-start;
	align-items: stretch;*/
	border: solid var(--flow-border-width) rgba(0, 0, 0, 0.2);
}
.pattern-block-flow .pattern-block-flow-item > .wp-block-group__inner-container {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
}

/* Titles
--------- --------- --------- ------- */
.pattern-block-flow .pattern-block-flow-item .flow-item-title {
	background-color: rgba(0, 0, 0, 0.7);
	color: #ffffff;
	font-size: max(1.2rem, 1.71vw);
	font-weight: var(--common-font-weight-bold);
	flex-basis: 30%;
	position: relative;
}
.pattern-block-flow .pattern-block-flow-item .flow-item-title > .wp-block-group__inner-container {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.pattern-block-flow .pattern-block-flow-item .flow-item-title .title {
	font-size: inherit;
	font-weight: inherit;
	text-align: center;
	min-width: 12em;
}
.pattern-block-flow .pattern-block-flow-item .flow-item-title .title-small {
	font-size: max(0.8rem, 0.67em);
	text-align: center;
	margin-bottom: 0;
	display: block;
}

/* Contents
--------- --------- --------- ------- */
.pattern-block-flow .pattern-block-flow-item .flow-item-content {
	background-color: #ffffff;
	padding: var(--flow-space-width);
	flex-basis: 70%;
}

/*	Contents Text	*/
.pattern-block-flow .pattern-block-flow-item .flow-item-content .item-text {
	/*background-color: rgba(0, 0, 0, 0.2);*/
	padding: 1em 2em;
	padding: var(--flow-space-width);
}
.pattern-block-flow .pattern-block-flow-item .flow-item-content .item-text .item-text-title {
	font-weight: var(--common-font-weight-bold);
	margin-bottom: 0.5em;
}
.pattern-block-flow .pattern-block-flow-item .flow-item-content .item-text p {
	margin-bottom: 0;
}

/*	Contents Arrows	*/
.pattern-block-flow .pattern-block-flow-item .flow-item-content .item-arrow {
	/*background-color: rgba(0, 0, 0, 0.1);*/
}
.pattern-block-flow .pattern-block-flow-item .flow-item-content .item-arrow > .wp-block-group__inner-container {
	display: flex;
	justify-content: space-around;
	align-items: center;
}
.pattern-block-flow .pattern-block-flow-item .flow-item-content .item-arrow .arrow-up {
	transform: rotate(180deg);
	margin: 0;
}
.pattern-block-flow .pattern-block-flow-item .flow-item-content .item-arrow .arrow-down {
	transform: rotate(360deg);
	margin: 0;
}
.pattern-block-flow .pattern-block-flow-item .flow-item-content .item-arrow img {
	width: calc(var(--flow-space-width) * 1);
	height: auto;
}

.pattern-block-flow .pattern-block-flow-item .flow-item-content > *:not(:last-of-type) {
	/*margin-bottom:  var(--flow-space-width);*/
}
.pattern-block-flow .pattern-block-flow-item .flow-item-content > .wp-block-group__inner-container > *:not(:last-of-type) {
	margin-bottom:  var(--flow-space-width);
}


/* Colors: Blue
--------- --------- --------- ------- */
.pattern-block-flow .pattern-block-flow-item.flow-blue {
	border-color: var(--flow-blue);
}
.pattern-block-flow .pattern-block-flow-item.flow-blue .flow-item-title {
	background-color: var(--flow-blue);
}
.pattern-block-flow .pattern-block-flow-item.flow-blue .flow-item-content .item-text {
	background-color: var(--flow-blue-opacity);
}

/* Colors: Turquoise
--------- --------- --------- ------- */
.pattern-block-flow .pattern-block-flow-item.flow-turquoise {
	border-color: var(--flow-turquoise);
}
.pattern-block-flow .pattern-block-flow-item.flow-turquoise .flow-item-title {
	background-color: var(--flow-turquoise);
}
.pattern-block-flow .pattern-block-flow-item.flow-turquoise .flow-item-content .item-text {
	background-color: var(--flow-turquoise-opacity);
}

/* Colors: Scarlet
--------- --------- --------- ------- */
.pattern-block-flow .pattern-block-flow-item.flow-scarlet {
	border-color: var(--flow-scarlet);
}
.pattern-block-flow .pattern-block-flow-item.flow-scarlet .flow-item-title {
	background-color: var(--flow-scarlet);
}
.pattern-block-flow .pattern-block-flow-item.flow-scarlet .flow-item-content .item-text {
	background-color: var(--flow-scarlet-opacity);
}

/* Colors: Green
--------- --------- --------- ------- */
.pattern-block-flow .pattern-block-flow-item.flow-green {
	border-color: var(--flow-green);
}
.pattern-block-flow .pattern-block-flow-item.flow-green .flow-item-title {
	background-color: var(--flow-green);
}
.pattern-block-flow .pattern-block-flow-item.flow-green .flow-item-content .item-text {
	background-color: var(--flow-green-opacity);
}


/* Item Arrows
--------- --------- --------- ------- */
.pattern-block-flow .pattern-block-flow-arrow {
	/*background-color: rgba(0, 180, 255, 0.1);*/
/*	display: flex;
	justify-content: space-around;
	align-items: center;*/
}
.pattern-block-flow .pattern-block-flow-arrow > .wp-block-group__inner-container {
	display: flex;
	justify-content: space-around;
	align-items: center;
}

.pattern-block-flow .pattern-block-flow-arrow .arrow-up {
	transform: rotate(180deg);
	margin: 0;
}
.pattern-block-flow .pattern-block-flow-arrow .arrow-down {
	transform: rotate(360deg);
	margin: 0;
}

.pattern-block-flow .pattern-block-flow-arrow img {
	width: calc(var(--flow-space-width) * 6);
	height: auto;
}


/* Item Margins
--------- --------- --------- ------- */
/*	Contents Margins	*/
.pattern-block-flow > *:not(:last-of-type) {
	/*margin-bottom:  var(--flow-space-width);*/
}

.pattern-block-flow > .wp-block-group__inner-container > *:not(:last-of-type) {
	margin-bottom:  var(--flow-space-width);
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {

}
/*	DisplayWidth < MD	*/
@media (max-width: 767px) {
	:root {
		--section-padding: 1em;
	}
}
/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Flex Items
	--------- --------- --------- ------- */
	.pattern-block-flow .pattern-block-flow-item {
	}
	.pattern-block-flow .pattern-block-flow-item > .wp-block-group__inner-container {
		display: block;
	}

	/* Titles
	--------- --------- --------- ------- */
	.pattern-block-flow .pattern-block-flow-item .flow-item-title {
		margin-bottom: 0;
		position: relative;
	}
	.pattern-block-flow .pattern-block-flow-item .flow-item-title > .wp-block-group__inner-container {
		position: relative;
		top: auto;
		left: auto;
		transform: translate(0);
	}
	.pattern-block-flow .pattern-block-flow-item .flow-item-title .title {
		min-width: auto;
	}
	.pattern-block-flow .pattern-block-flow-item .flow-item-title .title-small {
	}

	/* Contents
	--------- --------- --------- ------- */
	.pattern-block-flow .pattern-block-flow-item .flow-item-content {
	}
}





/* ::::: [SECTION : PATTERN BLOCK FLEX BOX] ::::: */

/* Settiong
--------- --------- --------- ------- */
/*.pattern-block-flex-box {*/
.pattern-block-flex-box > .wp-block-group__inner-container {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: stretch;
	gap: max(1rem, 1vw);
}
.pattern-block-flex-box-item {
	/*align-self: center;*/
}
.pattern-block-flex-box-item > .wp-block-group__inner-container {
	height: 100%;
}

/*	Box Setting	*/
.pattern-block-flex-box-item .box {
	background-color: #ffffff;
	font-size: inherit;
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
	line-height: 1.5em;
	width: 100%;
	height: 100%;
	padding: max(1rem, 1vw);
	box-shadow: 0 0 max(0.25rem, 0.5vw) rgba(0, 0, 0, 0.5);
}

.pattern-block-flex-box-item .box .box-inner {
}
/*.pattern-block-flex-box-item .box-inner * {
	background-color: rgba(255, 0, 0, 0.1);
	margin: 0;
	padding: 0;
}*/

/*	Box Text Setting	*/
.pattern-block-flex-box-item .box .box-title {
	font-size: max(1.2rem, 1.3vw);				/*	--title-font-size-25	*/
	font-weight: var(--common-font-weight-black);
	margin: 0;
	padding: 0;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}

.pattern-block-flex-box-item .box .box-lead {
	font-size: max(1.2rem, 1.3vw);				/*	--title-font-size-25	*/
	font-weight: var(--common-font-weight-black);
	margin: 0;
	padding: 0;
	margin-top: 1em;
	margin-bottom: 1em;
}

.pattern-block-flex-box-item .box .box-text {
	font-size: max(0.84rem, 0.78vw);	/*	title-font-size-15	*/
	margin: 0;
	padding: 0;
}
.pattern-block-flex-box-item .box .box-text:not(:last-of-type) {
	margin-top: 0.5em;
}
.pattern-block-flex-box-item .box .box-text.bold {
	font-weight: var(--common-font-weight-bold);
}





/* ::::: [PATTERN-BORDER-TOP] ::::: */

/* Setting
--------- --------- --------- ------- */
.pattern-border-top {
	/*	カスタムプロパティ	*/
	--border-color: var(--common-pointed-color-1);
	--border-height-level1: 4.07vw;		/*	78px	*/
	--border-height-level2: 2.2vw;		/*	42px	*/
	--border-height-level3: 1vw;		/*	78px	*/

	border-top-style: solid;
	border-width: var(--border-height-level1);
	border-top-color: var(--border-color);
}

/*	レベル１	*/
.pattern-border-top.border-level1 {
	border-width: var(--border-height-level1);
}

/*	レベル２	*/
.pattern-border-top.border-level2 {
	border-width: var(--border-height-level2);
}

/*	レベル３	*/
.pattern-border-top.border-level3 {
	border-width: var(--border-height-level3);
}

/* Over Writes: Pattern Title Smallcaption
--------- --------- --------- ------- */
.pattern-border-top .pattern-title-smallcaption {
	margin-top: 1em;
	margin-bottom: 1em;
	padding-left: 2em;
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Over Writes: Pattern Title Smallcaption
	--------- --------- --------- ------- */
	.pattern-border-top .pattern-title-smallcaption {
/*		padding-left: 1em;
		padding-right: 1em;*/
		padding-left: var(--page-layout-space-width);
		padding-right: var(--page-layout-space-width);
	}
}





/* ::::: [COMMON-CONTACT] ::::: */

/* Setting
--------- --------- --------- ------- */
.common-contact {
	background: var(--common-color) url("../images/common/common-contact-background.jpg") no-repeat center center;
	background-attachment: fixed;
	background-size: cover;
	color: #ffffff;
/*	height: 600px;*/
	width: 100%;
/*	max-height: 55vh;
	aspect-ratio: 2 / 1;*/
	position: relative;
}

.common-contact-wrapper {
	width: calc(100% - var(--magazin-layout-space-width-double));
/*	width: 60%;
	min-width: 600px;*/
	margin-left: auto;
	margin-right: auto;
/*	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);*/
		padding-top: 8vw;
		padding-bottom: 8vw;
}

.common-contact a {
	color: inherit;
}
.common-contact a:hover,
.common-contact a:focus,
.common-contact a:active  {
	color: inherit;
}

/* Title
--------- --------- --------- ------- */
.common-contact .common-contact-title {
/*	font-size: 2.3rem;*/
/*	font-size: clamp(1.2rem, 2.15vw, 2.3rem);*/
/*	font-size: 2.15vw;*/
	font-size: max(1.2rem, 2.15vw);
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
	letter-spacing: 0.1em;
	text-align: center;
/*	margin-top: 2em;	*/
/*	margin-bottom: min(2em, 2vw);*/
	margin-bottom: 2.5em;
}

/*
--------- --------- --------- ------- */
.common-contact .common-contact-button-wrapper {
	display: flex;
	justify-content: center;
	gap: 3vw;
}

/* Button
--------- --------- --------- ------- */
.btn-contact-menu {
	background-color: var(--common-pointed-color-1);
	color: #ffffff;
/*	font-size: 2rem;*/
	/*font-size: clamp(1.2rem, 1.88vw, 2rem);		--title-font-size-36*/
/*	font-size: 1.88vw;			/*	--title-font-size-36*/
	font-size: max(1.2rem, 1.88vw);		/*	--title-font-size-36*/
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight);
	font-style: var(--common-font-style);
	text-align: left;
	width: 100%;
/*	max-width: 20em;*/
	max-width: 16em;
	padding: 1em 1.4em;
	border: solid 3px #ffffff;
	border-radius: 4em;
	position: relative;
}
.btn-contact-menu::after {
	content: "";
	background: url("../images/common/icon-circle-white.svg") no-repeat center center;
	background-size: cover;
	width: 1em;
	height: 1em;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 1.5em;
	transform: translateY(-50%);
}
.btn-contact-menu .title {
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-medium);
	font-style: var(--common-font-an-style);
	letter-spacing: 0.1em;
	vertical-align: middle;

	display: inline-block;
}
.btn-contact-menu .title-small {
	font-size: inherit;
	font-family: inherit;
	font-weight: var(--common-font-weight-medium);
	font-style: inherit;
	font-size: 0.5em;
	/*font-size: max(0.8rem, 0.5em);*/
	margin-left: 1em;
	display: inline-block;
}

/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {

	/* Setting
	--------- --------- --------- ------- */
/*	.common-contact {
		max-height: none;
		aspect-ratio: auto;
	}

	.common-contact-wrapper {
		position: initial;
		top: auto;
		transform: translateY(0);
	}*/
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	.common-contact {
		max-height: initial;
		aspect-ratio: auto;
		padding-top: 2.5em;
		padding-bottom: 2.5em;
	}

	/* Title
	--------- --------- --------- ------- */
	.common-contact .common-contact-title {
		margin-bottom: 2em;
	}

	/*
	--------- --------- --------- ------- */
	.common-contact .common-contact-button-wrapper {
		display: initial;
	}

	/* Button
	--------- --------- --------- ------- */
	.btn-contact-menu {
		margin-left: auto;
		margin-right: auto;
		display: block;
	}
	.btn-contact-menu:not(:last-child) {
		margin-bottom: 1.5em;
	}
}





/* ::::: [GROUP-COMPANY] ::::: */

/* Setting
--------- --------- --------- ------- */
.card-group-company {
	background-color: rgba(255, 255, 255, 0.9);
	font-size: inherit;
	margin: 0;
	padding: 0;
	border: none;
/*	border-radius: 0 2.5em 0 0;*/
/*	border-radius: 0 clamp(1em, 2.35vw, 2.5em) 0 0;*/
	border-radius: 0 max(1rem, 2.35vw) 0 0;
	position: relative;
}
.card-group-company::before {
	content: "";
	background: url("../images/common/icon-circle-red-hole.svg") no-repeat;
	background-size: cover;
/*	width: clamp(1em, 1.6vw, 1.7em);
	height: clamp(1em, 1.6vw, 1.7em);
	position: absolute;
	bottom: max(0.7em, 1.27vw);
	right: max(0.7em, 1.27vw);*/
	width: max(1rem, 1.6vw);
	height: max(1rem, 1.6vw);
	position: absolute;
	bottom: max(0.7em, 1.27vw);
	right: max(0.7em, 1.27vw);
	opacity: 0.3;
}

a.card-group-company,
.card-group-company a {
/*	color: inherit;
	text-decoration: inherit;
	aspect-ratio: 3.5 / 1;*/
	color: inherit;
	text-decoration: inherit;
	aspect-ratio: auto;
	height: 100%;
}

/* Bootstrap Card Hack
--------- --------- --------- ------- */
.card-group-company .card-header,
.card-group-company .card-body,
.card-group-company .card-footer {
}
.card-group-company .card-body {
/*	width: 100%;
	height: 100%;
	padding-right: 2.5em;*/
	width: 100%;
	height: 100%;
/*	padding: 0.3em 2.5em 1em 1em;
	padding: 0.3em 1em 1em 1em;*/
	padding: 0.5em 1em;
}

.card-group-company .card-title,
.card-group-company .card-text {
	margin: 0;
	padding: 0;
}
.card-group-company .card-title {
/*	color: var(--common-pointed-color-1);
	text-align: center;
	width: 100%;
	height: 100%;*/
	color: var(--common-pointed-color-1);
	text-align: center;
/*	width: 100%;*/
	width: calc(100% - max(1rem, 2vw));
	height: auto;
	aspect-ratio: 4 / 1;
}
.card-group-company .card-text {
/*	margin-top: 1em;
	padding-left: 1em;
	border-left: solid 2px var(--common-pointed-color-1);*/
	font-size: 1.05vw;		/*	--title-font-size-20	*/
	line-height: 1.75em;
	margin-top: 0.5em;
	padding-left: 1em;
	padding: 0.5em 0 0.5em 1em;
	border-left: solid 2px var(--common-pointed-color-1);
}

.card-group-company img,
.card-group-company svg {
/*	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center;*/
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {

}
/*	DisplayWidth < MD	*/
@media (max-width: 767px) {
}
/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	.card-group-company {
	}
	.card-group-company::before {
		width: 1.86rem;
		height: 1.86rem;
	}

	/* Bootstrap Card Hack
	--------- --------- --------- ------- */
	.card-group-company .card-title {
	/*	width: 100%;*/
		width: calc(100% - 2rem);
	}
}





/* ::::: [] ::::: */

/* Setting
--------- --------- --------- ------- */
#recruit-company-menu {
	background-color: #f0f0f0;
	color: inherit;
}

.recruit-company-menu-wrapper {
}

/* Title
--------- --------- --------- ------- */
#recruit-company-menu .recruit-company-menu-title {
	background-color: var(--common-pointed-color-1);
	color: #ffffff;
/*	font-size: 1.89em;*/
	font-size: clamp(1rem, 1.77vw, 1.89em);
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
	line-height: 1.5em;
	letter-spacing: 0.1em;

	text-align: center;
	padding: 0.5em 1em;
}

/* Over Writes : card-group-company
--------- --------- --------- ------- */
#recruit-company-menu .card-group-company {
}

#recruit-company-menu .card-group-company::before {
	top: 50%;
	bottom: auto;
	transform: translateY(-50%);
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {

}
/*	DisplayWidth < MD	*/
@media (max-width: 767px) {
	:root {
		--section-padding: 1em;
	}
}
/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Setting
	--------- --------- --------- ------- */
	#recruit-company-menu {
	}
	.recruit-company-menu-wrapper {
	}

	/* Title
	--------- --------- --------- ------- */
	#recruit-company-menu .recruit-company-menu-title {
		font-size: 1.28rem;				/*	--title-font-size-18	*/
	}

	#recruit-company-menu .ml-mb-half {
		margin-bottom: 2rem;
	}

	#recruit-company-menu .container {
		padding-left: var(--magazin-layout-space-width);
		padding-right: var(--magazin-layout-space-width);
	}
}





/* ::::: [] ::::: */

/* Setting
--------- --------- --------- ------- */
.recruitment-guidence {
	padding-bottom: 3vw;
	/*background-color: rgba(0, 255, 0, 0.2);*/
}
.recruitment-guidence-wrapper {
	/*background-color: rgba(255, 0, 0, 0.2);*/

}

/* Title
--------- --------- --------- ------- */
.recruitment-guidence .recruitment-guidence-title {
	background-color: var(--common-pointed-color-1);
	color: #ffffff;
/*	font-size: 50px;				/*	50px	*/
	font-size: max(1.5rem, 2.6vw);	/*	50px	*/
/*	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-black);
	font-style: var(--common-font-weight-style);*/
	line-height: 1em;
	letter-spacing: 0.1em;
	margin-bottom: 2em;
	padding: 1em 1em 1em 1.5em;
}
.recruitment-guidence .recruitment-guidence-title .title {
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-weight-style);
}
.recruitment-guidence .recruitment-guidence-title .title-handwriting {
/*	font-size: 40px;		/*	40px	*/
	font-size: 0.8em;		/*	40px	*/
	line-height: 1em;
	font-family: kremlin-pro-expanded, sans-serif;
	font-weight: 500;
	font-style: normal;
	opacity: 0.6;
}

/* Buttons
--------- --------- --------- ------- */
.recruitment-guidence .btn-recruitment-guidence {
	background-color: #ffffff;
	color: currentColor;
	text-decoration: none;
	padding: max(1rem, 2vw) max(0.5rem, 2vw);
	box-shadow: 0 0 0.5rem var(--common-border-color-1);
	display: flex;
	justify-content: space-between;
}

.recruitment-guidence .btn-inner {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.btn-recruitment-guidence::after {
	content: "";
	background: url("../images/common/icon-circle-red-hole.svg") no-repeat right;
	background-size: contain;
	width: 1.2em;
/*	height: 1em;
	margin-left: 1em;*/
	flex-grow: 0;
}








/* ::::: [★☆削除予定] ::::: */

/* マーカータイトル
--------- --------- --------- ------- */
.marker-title {
	font-size: clamp(1rem, 2.97vw, 3.137em);
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-normal);
}
.marker-title .title {
	font-size: inherit;
	font-family: inherit;
	font-weight: inherit;
	font-style: inherit;
	line-height: 1.3em;
	letter-spacing: 0.15em;
	margin: 0;
	padding: 0;
	display: inline-block;
}
.marker-title .title .title-text {
	background-color: var(--common-pointed-color-1);
	color: #ffffff;
	padding: 0.2em 0.1em;
	display: inline-block;
}
.marker-title .title-small {
	color: var(--common-pointed-color-1);
	font-size: clamp(0.5rem, 1.57vw, 1.67em);
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-medium);
	font-style: var(--common-font-an-style);
/*	line-height: 1.3em;*/
	display: inline-block;
	margin: 0.2em 0.5em 0 0;
	padding: 0;
}

.marker-title.vertical {
	writing-mode: vertical-rl;
}
.marker-title.vertical .title {
  /*
	width: 3em;
	height: 13em;
  */
}
.marker-title.vertical .title .title-text {
	padding: 0.5em 0.3em;
}
.marker-title.vertical .title-small {
}

/*	DisplayWidth < SM	*/
@media (max-width: 575px) {
	.marker-title {
	}
	.marker-title .title {
	}
	.marker-title .title .title-text {
	}

	.marker-title.vertical .title {
	}
	.marker-title.vertical .title .title-text {
	}
}











/* ::::: [BUTTONS] ::::: */

/* Google Map Button
--------- --------- --------- ------- */
.btn-google-map {
	background-color: #fae4e4;
	color: var(--common-color);
	font-size: smaller;
	font-family: var(--common-font-an-family);
	font-weight: var(--common-font-an-weight-medium);
	font-style: var(--common-font-an-style);
	letter-spacing: 0.1em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
/*	min-width: 290px;	*/
	max-width: 100%;
	padding: 0.5em 3.5em;
	border: solid 1px var(--common-border-color-1);
	border-radius: 2em;
	display: inline-block;
}
.btn-google-map a {
	color: var(--common-color);
	text-decoration: none;
}



/* Nursery School Button
--------- --------- --------- ------- */
.btn-nursery-school {
	background-color: #ffffff;
	color: var(--common-color);
	font-size: smaller;
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-bold);
	font-style: var(--common-font-style);
	text-align: left;
	letter-spacing: 0.1em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
/*	min-width: 28em;	*/
	max-width: 100%;
	padding: 0.7em 3em 0.7em 2em;
	border: solid 2px var(--common-pointed-color-1);
	border-radius: 2em;
	display: inline-block;
	position: relative;
}
.btn-nursery-school::after {
	content: "";
	background: url("../images/common/icon-circle-red-hole.svg") no-repeat center center;
	background-size: cover;
	width: 1em;
	height: 1em;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
}
.btn-nursery-school a {
	color: var(--common-color);
	text-decoration: none;
}



/* File Download Button
--------- --------- --------- ------- */
.btn-download {
	background-color: #ffffff;
	color: var(--common-color);
	font-size: smaller;
	font-family: var(--common-font-family);
	font-weight: var(--common-font-weight-medium);
	font-style: var(--common-font-style);
	text-align: left;
/*	letter-spacing: 0.05em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;*/
	max-width: 100%;
/*	padding: 0.7em 0.5em 0.7em 2em;*/
	border-radius: 0;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.1), 3px 3px 5px rgba(0, 0, 0, 0.3);
	display:inline-block;
}
.btn-download a {
	color: var(--common-color);
	text-decoration: none;
}

.btn-download.file-pdf::before {
	content: url("../images/common/icon-download-pdf.svg");
	font-size: inherit;
	line-height: 1em;
	vertical-align: middle;
	margin: 0 0.5em 0 0;
	padding: 0;
	display: inline-block;
}


/* Media Query
--------- --------- --------- ------- */
/*	DisplayWidth > XL	*/
@media (min-width: 1400px) {
}

/*	DisplayWidth < SM	*/
@media (max-width: 767px) {
}

/*	DisplayWidth < XS	*/
@media (max-width: 575px) {

	/* Nursery School Button
	--------- --------- --------- ------- */
	.btn-nursery-school {
		font-size: 1rem;
	}
}



