/**
 *
 * page-company.scss
 *
 */
/* ------------------------------------------------------------
 company-intro
------------------------------------------------------------ */
.company-intro {
	position: relative;
}

@media screen and (min-width: 1024px) {
	.company-intro {
		margin-top: 17.4rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-intro {
		margin-top: 11rem ;
	}
}

.company-intro__inner {
	position: relative;
}

@media screen and (min-width: 1024px) {
	.company-intro__inner {
		display: flex;
		flex-direction: row-reverse;
		align-items: flex-start;
		justify-content: space-between;
	}
}

/* ----------------------------------------
 company-intro__contents
---------------------------------------- */
.company-intro__contents {
	position: relative;
	z-index: 10;
}

@media screen and (min-width: 1024px) {
	.company-intro__contents {
		max-width: 56.7rem ;
		width: 46.26866%;
		margin-top: 3.5rem ;
	}
}

.company-intro__catch {
	letter-spacing: 0.08em;
}

@media screen and (min-width: 1024px) {
	.company-intro__catch {
		font-size: var(--font-size37);
		--line-height: 2.18919;
	}
}

@media screen and (max-width: 1023px) {
	.company-intro__catch {
		text-align: right;
		font-size: var(--font-size22);
		--line-height: 2.04545;
		margin-right: -1.8rem ;
	}
}

@media screen and (min-width: 1024px) {
	.company-intro__txt {
		margin-top: 21rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-intro__txt {
		margin-top: 11.5rem ;
	}
}

/* ----------------------------------------
 company-intro__figures
---------------------------------------- */
.company-intro__figures {
	position: relative;
	z-index: 1;
}

@media screen and (min-width: 1024px) {
	.company-intro__figures {
		width: 46.1194%;
	}
}

@media screen and (max-width: 1023px) {
	.company-intro__figures {
		max-width: 40.8rem ;
		width: 99.11765%;
		margin-inline: auto;
		margin-top: 7rem ;
	}
}

.company-intro__figures figure {
	position: relative;
	z-index: 1;
	width: calc( ( var(--width) / 618 ) * 100%);
	margin-top: calc( ( var(--margin-top) / 618 ) * 100%);
	margin-left: calc( ( var(--margin-left) / 618 ) * 100%);
}

.company-intro__figures figure.-unique1 {
	--width: 425;
	--margin-top: 0;
	--margin-left: 63;
}

.company-intro__figures figure.-unique2 {
	--width: 206;
	--margin-top: -88;
	--margin-left: 393;
}

.company-intro__figures figure.-unique3 {
	--width: 126;
	--margin-top: -110;
	--margin-left: 156;
}

.company-intro__figures figure.-unique4 {
	--width: 126;
	--margin-top: -40;
	--margin-left: 63;
}

.company-intro__figures figure.-unique5 {
	--width: 245;
	--margin-top: -100;
	--margin-left: 372;
}

.company-intro__figures figure.-unique6 {
	--width: 204;
	--margin-top: -163;
	--margin-left: 0;
}

.company-intro__figures figure.-unique7 {
	--width: 132;
	--margin-top: -23;
	--margin-left: 372;
}

.company-intro__figures figure.-unique8 {
	--width: 130;
	--margin-top: -111;
	--margin-left: 175;
}

/* ----------------------------------------
 company-intro__motif
---------------------------------------- */
.company-intro__motif {
	position: absolute;
	z-index: 0;
	pointer-events: none;
}

@media screen and (min-width: 1024px) {
	.company-intro__motif {
		width: 104.7rem ;
		top: -9.1rem ;
		left: -30.8rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-intro__motif {
		width: 57.9rem ;
		top: -31.9rem ;
		left: -15.9rem ;
		display: none;
	}
}

.company-intro__motif2 {
	position: absolute;
	z-index: 0;
	pointer-events: none;
}

@media screen and (min-width: 1024px) {
	.company-intro__motif2 {
		display: none;
	}
}

@media screen and (max-width: 1023px) {
	.company-intro__motif2 {
		width: 57.9rem ;
		top: 9rem ;
		left: -15.9rem ;
	}
}

/* ------------------------------------------------------------
 company-message
------------------------------------------------------------ */
@media screen and (min-width: 1024px) {
	.company-message {
		margin-top: 20.7rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-message {
		margin-top: 11.1rem ;
	}
}

.company-message__inner {
	position: relative;
}

@media screen and (min-width: 1024px) {
	.company-message__inner {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
	}
}

/* ----------------------------------------
 company-message__contents
---------------------------------------- */
.company-message__contents {
	position: relative;
	z-index: 10;
}

@media screen and (min-width: 1024px) {
	.company-message__contents {
		width: 42.42175%;
		margin-top: 7.6rem ;
		margin-left: 0.57661%;
	}
}

.company-message__catch {
	letter-spacing: 0.08em;
}

@media screen and (min-width: 1024px) {
	.company-message__catch {
		font-size: var(--font-size32);
		margin-top: 8.7rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-message__catch {
		font-size: var(--font-size24);
		margin-top: 7rem ;
	}
}

@media screen and (min-width: 1024px) {
	.company-message__txt {
		margin-top: 7.8rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-message__txt {
		margin-top: 6.4rem ;
	}
}

/* ----------------------------------------
 company-message__figure
---------------------------------------- */
.company-message__figure {
	position: relative;
	z-index: 10;
}

@media screen and (min-width: 1024px) {
	.company-message__figure {
		width: 45.63427%;
	}
}

@media screen and (max-width: 1023px) {
	.company-message__figure {
		margin-inline: auto;
		margin-top: 4rem ;
	}
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
	.company-message__figure {
		width: 29.64rem ;
	}
}

@media screen and (max-width: 560px) {
	.company-message__figure {
		max-width: 247px;
		width: 100%;
	}
}

.company-message__figure figcaption {
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--radius-max);
	background-color: var(--color-bg);
	letter-spacing: 0.08em;
	white-space: nowrap;
}

@media screen and (min-width: 1024px) {
	.company-message__figure figcaption {
		bottom: 3.5rem ;
		height: 4rem ;
		font-size: var(--font-size15);
		padding: 0 3.6rem 0 3.4rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-message__figure figcaption {
		bottom: 1rem ;
		height: 3rem ;
		font-size: var(--font-size12);
		padding: 0 2.3rem 0 2rem ;
	}
}

.company-message__figure span {
	padding-bottom: 0.1rem ;
}

@media screen and (min-width: 1024px) {
	.company-message__figure span + span {
		margin-left: 1.9rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-message__figure span + span {
		margin-left: 1.1rem ;
	}
}

.company-message__figure div {
	display: flex;
	align-items: center;
}

.company-message__figure div::before {
	content: '';
	display: block;
	width: 0px;
	border-left: var(--solid);
}

@media screen and (min-width: 1024px) {
	.company-message__figure div::before {
		height: 1.7rem ;
		margin: 0 1.9rem 0 1.7rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-message__figure div::before {
		height: 1.4rem ;
		margin: 0 1.2rem 0 1rem ;
	}
}

.company-message__figure a {
	display: block;
}

/* ----------------------------------------
 company-message__motif
---------------------------------------- */
.company-message__motif-1 {
	position: absolute;
	z-index: 0;
	pointer-events: none;
}

@media screen and (min-width: 1024px) {
	.company-message__motif-1 {
		width: 36.9rem ;
		top: 0.2rem ;
		left: -21.4rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-message__motif-1 {
		width: 22.2rem ;
		top: 2.4rem ;
		left: -8.6rem ;
	}
}

.company-message__motif-2 {
	position: absolute;
	z-index: 0;
	pointer-events: none;
}

@media screen and (min-width: 1024px) {
	.company-message__motif-2 {
		width: 31.6rem ;
		right: -13rem ;
		bottom: 0.1rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-message__motif-2 {
		width: 14.7rem ;
		right: -1.8rem ;
		bottom: -4.5rem ;
	}
}

/* ------------------------------------------------------------
 company-flex
------------------------------------------------------------ */
@media screen and (min-width: 1024px) {
	.company-flex {
		margin-top: 18.1rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-flex {
		margin-top: 12.6rem ;
	}
}

.company-flex__inner {
	position: relative;
}

@media screen and (min-width: 1024px) {
	.company-flex__inner {
		display: flex;
	}
}

/* ----------------------------------------
 company-corporate
---------------------------------------- */
.company-corporate {
	position: relative;
	z-index: 10;
}

@media screen and (min-width: 1024px) {
	.company-corporate {
		width: 45.2%;
	}
}

.company-corporate__inner {
	display: flex;
	flex-direction: row-reverse;
}

@media screen and (min-width: 1024px) {
	.company-corporate__inner {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin-left: auto;
		margin-right: 27.58112%;
	}
}

@media screen and (max-width: 1023px) {
	.company-corporate__inner {
		max-width: 32rem ;
		width: 100%;
		margin-inline: auto;
		padding: 0 1rem ;
	}
}

@media screen and (min-width: 1024px) {
	.company-corporate__inner > *:not(header) {
		margin-top: 4rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-corporate__inner > *:not(header) {
		margin-top: 3rem ;
	}
}

.company-corporate__txt {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-family: var(--font-mincho);
	font-weight: 600;
}

@media screen and (min-width: 1024px) {
	.company-corporate__txt {
		margin-right: 5.5rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-corporate__txt {
		margin-right: 8rem ;
	}
}

.company-corporate__txt span {
	display: block;
	letter-spacing: 0.06em;
}

@media screen and (min-width: 1024px) {
	.company-corporate__txt span {
		font-size: var(--font-size23);
		--line-height: 2;
	}
}

@media screen and (max-width: 1023px) {
	.company-corporate__txt span {
		font-size: var(--font-size18);
		--line-height: 1.88889;
	}
}

@media screen and (min-width: 1024px) {
	.company-corporate__txt span + span {
		margin-right: 6rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-corporate__txt span + span {
		margin-right: 5.1rem ;
	}
}

/* ----------------------------------------
 company-creed
---------------------------------------- */
.company-creed {
	position: relative;
	z-index: 10;
}

@media screen and (min-width: 1024px) {
	.company-creed {
		width: 54.8%;
		padding-bottom: 3.6rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-creed {
		margin-top: 5.7rem ;
		padding-top: 5rem ;
	}
}

.company-creed__line {
	position: absolute;
}

@media screen and (min-width: 1024px) {
	.company-creed__line {
		--border-dasharray: 1.8 2.8;
		left: 0;
		bottom: 0;
		width: 0;
		height: calc( 100% - 1.0rem);
	}
}

@media screen and (max-width: 1023px) {
	.company-creed__line {
		--border-dasharray: 1.5 2.2;
		top: 0;
		left: 0;
		width: 100%;
		height: 0;
	}
}

.company-creed__inner {
	display: flex;
	flex-direction: row-reverse;
}

@media screen and (min-width: 1024px) {
	.company-creed__inner {
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin-left: 25.9587%;
		margin-right: auto;
	}
}

@media screen and (max-width: 1023px) {
	.company-creed__inner {
		max-width: 32rem ;
		width: 100%;
		margin-inline: auto;
		padding: 0 1rem ;
	}
}

@media screen and (min-width: 1024px) {
	.company-creed__inner > *:not(header) {
		margin-top: 4rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-creed__inner > *:not(header) {
		margin-top: 3rem ;
	}
}

.company-creed__catch {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1024px) {
	.company-creed__catch {
		gap: 2.4rem ;
		margin-right: 5.2rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-creed__catch {
		gap: 2rem ;
		margin-right: 2.2rem ;
	}
}

.company-creed__catch ruby {
	display: flex;
	align-items: center;
}

@media screen and (min-width: 1024px) {
	.company-creed__catch ruby {
		gap: 1.4rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-creed__catch ruby {
		gap: 0.8rem ;
	}
}

.company-creed__catch span {
	font-family: var(--font-mincho);
	font-weight: 600;
}

@media screen and (min-width: 1024px) {
	.company-creed__catch span {
		font-size: var(--font-size42);
	}
}

@media screen and (max-width: 1023px) {
	.company-creed__catch span {
		font-size: var(--font-size30);
	}
}

.company-creed__catch rt {
	letter-spacing: 0.08em;
}

@media screen and (min-width: 1024px) {
	.company-creed__catch rt {
		font-size: var(--font-size9);
	}
}

@media screen and (max-width: 1023px) {
	.company-creed__catch rt {
		font-size: var(--font-size8);
	}
}

.company-creed__txt {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

@media screen and (min-width: 1024px) {
	.company-creed__txt {
		margin-right: 6rem ;
		margin-left: -3.4rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-creed__txt {
		margin-right: 3.2rem ;
	}
}

/* ----------------------------------------
 company-flex__motif
---------------------------------------- */
.company-flex__motif {
	position: absolute;
	z-index: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

@media screen and (min-width: 1024px) {
	.company-flex__motif {
		width: 57.4rem ;
		bottom: -48rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-flex__motif {
		width: 27.7rem ;
		bottom: -26rem ;
	}
}

/* ------------------------------------------------------------
 company-container
------------------------------------------------------------ */
.company-container {
	background-color: var(--color-bg);
}

@media screen and (min-width: 1024px) {
	.company-container {
		margin-top: 16.8rem ;
		padding: 18.2rem 0 17.5rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-container {
		margin-top: 12.2rem ;
		padding: 8.7rem 0 9.5rem ;
	}
}

/* ------------------------------------------------------------
 company-profile
------------------------------------------------------------ */
@media screen and (min-width: 1024px) {
	.company-profile__header {
		margin-top: 1.3rem ;
	}
}

@media screen and (min-width: 1024px) {
	.company-profile__logo {
		width: 56rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-profile__logo {
		width: 29rem ;
		margin-inline: auto;
		margin-top: 6rem ;
	}
}

@media screen and (min-width: 1024px) {
	.company-profile__table {
		margin-top: 9rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-profile__table {
		margin-top: 5.5rem ;
	}
}

@media screen and (min-width: 1024px) {
	.company-profile__figure {
		margin-top: 7rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-profile__figure {
		margin-top: 3.8rem ;
	}
}

/* ------------------------------------------------------------
 company-history
------------------------------------------------------------ */
@media screen and (min-width: 1024px) {
	.company-history {
		margin-top: 16rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-history {
		margin-top: 11.7rem ;
	}
}

@media screen and (min-width: 1024px) {
	.company-history__table {
		margin-top: 0.8rem ;
	}
}

@media screen and (max-width: 1023px) {
	.company-history__table {
		margin-top: 6.1rem ;
	}
}
/*# sourceMappingURL=sourcemaps/page-company.css.map */
