@charset "UTF-8";

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

	Layout - Second Page Common

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

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

	Parts

--------------------------- */
.container,
.gl-footer { background-color: rgba(247, 247, 247, 1); }
/* Container > Intro */
.seccont-intro {
	background-color: rgba(247, 247, 247, 1);
	margin: 0 auto;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	}
	.seccont-intro p {
		display: inline-block;
		font-family: 'Zen Antique Soft', serif;
		font-weight: 500;
		}
/* ------------------------ */
@media (min-width: 751px) {
/* Container > Intro */
.seccont-intro {
	max-width: 1000px;
	padding: 50px 50px 0;
	top: -50px;
	}
	.seccont-intro p {
		font-size: 20px;
		line-height: 1.75;
		}
}
/* ------------------------ */
@media (max-width: 750px) {
/* Container > Intro */
.seccont-intro {
	margin-left: 25px;
	margin-right: 25px;
	padding: 25px 25px 0;
	top: -30px;
	}
	.seccont-intro p {
		font-size: 16px;
		line-height: 1.75;
		text-align: left;
		}
}

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

	Intro

--------------------------- */
.intro {
	font-family: 'Zen Antique Soft', serif;
	font-weight: 500;
	box-sizing: border-box;
	}
	.int-inner {
		height: 100%;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		box-sizing: border-box;
		}
	.int-label {
		background-color: rgba(49, 88, 224, 1);
		color: rgba(255, 255, 255, 1);
		font-weight: 500;
		left: 0;
		position: absolute;
		top: 0;
		writing-mode: vertical-rl;
		word-break: keep-all;
		}
	.int-copy {
		color: rgba(255, 255, 255, 1);
		font-weight: 500;
		display: flex;
		flex-direction: column;
		}
		.int-copy .jp {
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			}
		.int-copy .jp span {
			background: linear-gradient(transparent 95%, rgba(255,255,255,0.5)5%);
			display: inline-block;
			line-height: 1.5;
			}
		.int-copy .jp span:last-child { margin-bottom: 0; }
	.int-fig {
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		}
	/* Scheme - Parent */
	.intro.parent {
		height: auto;
		padding-bottom: 0;
		}
	.intro.parent .int-inner { padding: 0; }
		.intro.parent .int-ttl {
	        display: flex;
	        flex-direction: column;
	        align-items: flex-start;
			}
		.intro.parent .int-ttl span {
			font-weight: 500;
			line-height: 1.25;
			}
		.intro.parent .int-ttl span.en {
			color: rgba(50, 90, 225, 1);
			font-family: 'Zen Antique Soft', serif;
			}
	/* Scheme - Child */
	.intro.child .int-inner {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
		}
	.int-ttl-sub {
		border-bottom: 1px solid rgba(110, 110, 110, 1);
        display: flex;
        align-items: baseline;
        justify-content: flex-start;
    	}
	.int-ttl-sub span.en { color: rgba(50, 90, 225, 1); }
	body.s_recruit .int-ttl-sub span.en { color: rgb(39 151 209); }
	.int-ttl-sub span.jp { font-family: initial; }
	.int-ttl-main {
		color: rgba(50, 90, 225, 1);
		font-family: initial;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		}
	.int-ttl-main span.en {
		color: rgba(50, 90, 225, 1);
		font-family: 'Zen Antique Soft', serif;
		font-weight: 500;
		letter-spacing: 0;
		}
	.int-ttl-main span.jp { color: initial; }
	/* Scheme - Grandchild */
	.intro.grandchild .int-inner { height: auto; }
	.intro.grandchild .int-ttl-main {
		border-left: 1px solid rgba(110, 110, 110, 1);
		margin-top: 0;
		}
	/* Scheme - Recruit */
	.s_recruit .intro.parent .int-ttl span { font-family: 'Zen Kaku Gothic Antique', sans-serif; }
	.s_recruit .intro.parent .int-ttl span.en {
		background: transparent linear-gradient(92deg, rgba(82, 201, 168, 1) 0%, rgba(34, 145, 214, 1) 100%) 0% 0% no-repeat padding-box;
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		}
/* ------------------------ */
@media (min-width: 751px) {
.intro {
	height: 100vh;
	padding: 130px 7.3%;
	}
	.int-inner { padding: 0 9.8%; }
	.int-label {
		font-size: 20px;
		letter-spacing: 5px;
		padding: 40px 0;
		}
		.int-copy .en { font-size: min(2vw, 20px); }
		.int-copy .jp {
			font-size: min(3vw, 40px);
			letter-spacing: 2px;
			margin-top: 30px;
			}
		.int-copy .jp span { margin-bottom: 20px; }
	.int-fig {
		left: 0;
		position: fixed;
		right: 0;
		top: 0;
		height: 100vh;
		z-index: -1;
		}
	/* Scheme - Parent */
	.intro.parent .int-inner { padding-top: 100px; }
		.intro.parent .int-ttl span.en { font-size: 60px; }
		.intro.parent .int-ttl span.jp { font-size: 35px; }
	/* Scheme - Child */
	.intro.child {
		height: auto;
		padding: 230px 7.3% 100px;
		}
	.intro.child .int-inner { padding: 0; }
	.int-ttl-sub { padding-bottom: 10px; }
	.int-ttl-sub span { font-size: min(2vw, 25px); }
	.int-ttl-sub span.en { margin-right: 15px; }
	.int-ttl-main {
		font-size: min(5vw, 55px);
		line-height: 1.35;
		letter-spacing: 5px;
		margin-top: 30px;
		}
	.int-ttl-main span.jp { font-size: 35px; }
	/* Scheme - Grandchild */
	.intro.grandchild {
		height: auto;
		padding-bottom: 80px;
		}
	.intro.grandchild .int-inner { padding: 80px 0 0; }
	.intro.grandchild .int-ttl-main {
		font-size: 25px;
		margin-left: 30px;
		padding-left: 30px;
		}
	/* Scheme - Recruit */
	.s_recruit .intro.parent .int-ttl span.en { font-size: 120px; }
	.s_recruit .intro.parent .int-ttl span.jp { font-size: 35px; }
}
/* ------------------------ */
@media (max-width: 750px) {
.intro {
	height: 100vh;
	padding: 100px 5%;
	}
	.int-inner { padding: 0 5%; }
	.int-label {
		font-size: 17px;
		letter-spacing: 5px;
		padding: 30px 0;
		}
		.int-copy .en { font-size: min(5vw, 25px); }
		.int-copy .jp {
			font-size: min(5vw, 20px);
			letter-spacing: 2px;
			margin-top: 30px;
			}
		.int-copy .jp span { margin-bottom: 20px; }
	.int-fig {
		left: 0;
		position: fixed;
		right: 0;
		top: 0;
		height: 100vh;
		z-index: -1;
		}
	/* Scheme - Parent */
	.intro.parent .int-inner { padding-top: 50px; }
		.intro.parent .int-ttl span.en { font-size: 40px; }
		.intro.parent .int-ttl span.jp { font-size: 25px; }
	/* Scheme - Child */
	.intro.child {
		height: auto;
		padding: 150px 5% 50px;
		}
	.intro.child .int-inner { padding: 0; }
	.int-ttl-sub { padding-bottom: 10px; }
	.int-ttl-sub span { font-size: min(4vw, 16px); }
	.int-ttl-sub span.en { margin-right: 15px; }
	.int-ttl-main {
		font-size: min(7vw, 30px);
		letter-spacing: 2.5px;
		margin-top: 20px;
		}
	/* Scheme - Grandchild */
	.intro.grandchild {
		height: auto;
		padding-bottom: 40px;
		}
	.intro.grandchild .int-inner { padding: 30px 0 0; }
	.intro.grandchild .int-ttl-main {
		font-size: 16px;
		margin-left: 20px;
		padding-left: 20px;
		}
	/* Scheme - Recruit */
	.s_recruit .intro.parent .int-ttl span.en { font-size: 50px; }
	.s_recruit .intro.parent .int-ttl span.jp { font-size: 25px; }
}

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

	Page Main Visual

--------------------------- */
.pagemv {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	box-sizing: border-box;
	}
/* ------------------------ */
@media (min-width: 751px) {
.pagemv {
	height: 600px;
	max-width: 1550px;
	border-radius: 0 8px 8px 0;
	}
}
/* ------------------------ */
@media (max-width: 750px) {
.pagemv { height: 300px; }
}

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

	Wrap

--------------------------- */
.wrap {
	margin: 0 auto;
	box-sizing: border-box;
	}
	.mainblock,
	.sidenav { box-sizing: border-box; }
	.mainblock {
		margin: 0 auto;
		width: 100%;
		}
/* ------------------------ */
@media (min-width: 751px) {
.wrap {
	padding: 0 100px;
	max-width: 1366px;
	display: flex;
	}
	.mainblock,
	.sidenav { padding: 100px 30px; }
	.mainblock { max-width: 1100px; }
}
/* ------------------------ */
@media (min-width: 751px) and (max-width: 1220px) {
.wrap {
	padding-left: 20px;
	padding-right: 80px;
	flex-wrap: wrap;
	}
	.mainblock { padding-bottom: 50px; }
	.sidenav { padding-top: 50px; }
}
/* ------------------------ */
@media (max-width: 750px) {
.wrap { padding-top: 50px; }
	.mainblock {
		margin-bottom: 50px;
		padding: 0 20px;
		}
	.sidenav {
		background-color: rgba(0, 0, 0, .05);
		padding: 30px;
		}
}

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

	Page Anchor

--------------------------- */
.pageanchor {
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	}
.pageanchor a {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	}
.pageanchor a:after {
	background-position: center;
	background-repeat: no-repeat;
	content: '';
	display: inline-block;
	position: relative;
	transform: rotate(90deg);
	}
/* Scheme - Color */
.pageanchor.navy {}
.pageanchor.navy a:after { background-image: url(/src/img/common/icon/arrow-right-navy.svg); }
/* Scheme - Layout */
.pageanchor.min a { border-bottom: 1px solid rgba(0, 0, 0, .5); }
/* ------------------------ */
@media (min-width: 751px) {
.pageanchor {}
.pageanchor a { font-size: 25px; }
.pageanchor a:after {
	background-size: 22px 20px;
	height: 20px;
	min-width: 22px;
	}
/* Scheme - Layout */
.pageanchor.min a {
	margin-right: 30px;
	padding: 5px 0;
	transition: all .3s;
	}
.pageanchor.min a:after { margin-left: 30px; }
.pageanchor.min a:hover { color: rgba(50, 90, 225, 1); }
}
/* ------------------------ */
@media (max-width: 750px) {
.pageanchor {}
.pageanchor a { font-size: 20px; }
.pageanchor a:after {
	background-size: 22px 20px;
	height: 20px;
	min-width: 22px;
	}
/* Scheme - Layout */
.pageanchor.min a {
	margin-right: 30px;
	padding: 5px 0;
	}
.pageanchor.min a:after { margin-left: 30px; }
}

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

	Outline

--------------------------- */
.sec-outline .ttl {
	font-weight: 500;
	line-height: 1.5;
	}
.sec-outline .ttl.ffm { font-family: 'Zen Antique Soft', serif; }
.sec-outline .txt p { text-align: justify; }
/* ------------------------ */
@media (min-width: 751px) {
.sec-outline .ttl { font-size: 35px; }
.sec-outline .txt { margin-top: 40px; }
.sec-outline .txt p { font-size: 20px; }
}
/* ------------------------ */
@media (max-width: 750px) {
.sec-outline .ttl { font-size: 25px; }
.sec-outline .txt { margin-top: 30px; }
.sec-outline .txt p { font-size: 16px; }
}

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

	Attention

--------------------------- */
.att ul li {
	line-height: 1.75;
	text-align: justify;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	}
.att ul li:last-child { margin-bottom: 0; }
.att ul li:before {
	content: '※';
	color: rgba(255, 0, 0, 1.0);
	}
.att ul li a {
	color: rgba(50, 90, 225, 1);
	text-decoration: underline;
	}
/* ------------------------ */
@media (min-width: 751px) {
.att { margin-top: 30px; }
.att ul li {
	font-size: 16px;
	margin-bottom: 5px;
	}
.att ul li:before { min-width: 22.5px; }
}
/* ------------------------ */
@media (max-width: 750px) {
.att { margin-top: 20px; }
.att ul li { font-size: 13px; }
.att ul li:before { min-width: 17.5px; }
}

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

	Table Slide

--------------------------- */
@media (max-width: 750px) {
/*
.table.slide:before {
	content: '◀ スクロールしてご覧ください ▶';
	display: block;
	font-size: 13px;
	margin-bottom: 10px;
	text-align: center;
	}
.table.slide .tbl-sld-wrap {
	min-width: 0;
	overflow-x: scroll;
	}
.table.slide .tbl-sld-inner {
	display: block;
	width: 100%;
	white-space: nowrap;
	}
.table.slide .tbl-sld-inner img { max-width: unset; }
*/
}

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

	Wrap

--------------------------- */
/* Base */
.sec-wrap {}
.sec-block {}
@media (min-width: 751px) {
.sec-wrap {}
.sec-block { margin-top: 100px; }
}
@media (max-width: 750px) {
.sec-wrap {}
.sec-block { margin-top: 50px; }
}
/* ------------------------ */
/* Title */
.sec-block .ttl {
	border-bottom: 1px solid;
	font-family: 'Zen Antique Soft', serif;
	font-weight: 500;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	}
.sec-block .ttl span {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	}
.sec-block .ttl span strong {
	font-weight: 500;
	line-height: 1;
	}
@media (min-width: 751px) {
.sec-block .ttl { padding-bottom: 10px; }
}
@media (max-width: 750px) {
.sec-block .ttl { padding-bottom: 10px; }
}
/* ------------------------ */
@media (min-width: 751px) {
}
@media (max-width: 750px) {
}
/* ------------------------ */

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

	Speech Bubble

--------------------------- */
.sec-speechbubble {
	margin: 0 auto;
	position: relative;
	z-index: 1;
	}
.sec-speechbubble .sb-item {
	display: flex;
	align-items: center;
	justify-content: center;
	}
.sec-speechbubble .sb-item:last-child { margin-bottom: 0; }
.sec-speechbubble .sb-item .sb-icon {
	background-color: rgba(255, 255, 255, 1);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 3px solid;
	border-radius: 100px;
	}
.sec-speechbubble .sb-item .sb-txt {
	background-color: rgba(255, 255, 255, 1);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 3px solid;
	line-height: 1.5;
	position: relative;
	border-radius: 8px;
	}
.sec-speechbubble .sb-item .sb-txt:before {
	background-color: rgba(255, 255, 255, 1);
	border: 3px solid;
	content: '';
	position: absolute;
	top: 50%;
	z-index: -1;
	transform: translateY(-50%) rotate(45deg);
	}
/* Scheme - Layout */
.sec-speechbubble .sb-item:nth-child(even) { flex-flow: row-reverse; }
/* Scheme - Illust / Color */
.sec-speechbubble .sb-item.bp .sb-txt,
.sec-speechbubble .sb-item.bp .sb-txt:before { border-color: rgba(50, 90, 225, 1); }
.sec-speechbubble .sb-item.bp .sb-icon { border-color: rgba(50, 90, 225, 1); }
.sec-speechbubble .sb-item.female .sb-icon { background-image: url(/src/img/common/illust/speechbubble-bp-female.svg); }
.sec-speechbubble .sb-item.client .sb-txt,
.sec-speechbubble .sb-item.client .sb-txt:before { border-color: rgba(225, 75, 5, 1); }
.sec-speechbubble .sb-item.client .sb-icon { border-color: rgba(225, 75, 5, 1); }
.sec-speechbubble .sb-item.client .sb-icon { background-image: url(/src/img/common/illust/speechbubble-bp-client.svg); }
/* ------------------------ */
@media (min-width: 751px) {
.sec-speechbubble { padding: 0 20px; }
.sec-speechbubble .sb-item { margin-bottom: 30px; }
.sec-speechbubble .sb-item .sb-icon {
	height: 100px;
	max-width: 100px;
	min-width: 100px;
	}
.sec-speechbubble .sb-item .sb-txt {
	font-size: 18px;
	padding: 20px;
	}
.sec-speechbubble .sb-item .sb-txt:before {
	height: 20px;
	max-width: 20px;
	min-width: 20px;
	}
/* Scheme - Layout */
.sec-speechbubble .sb-item:nth-child(odd) .sb-icon { margin-right: 30px; }
.sec-speechbubble .sb-item:nth-child(odd) .sb-txt:before { left: -14px; }
.sec-speechbubble .sb-item:nth-child(even) .sb-icon { margin-left: 30px; }
.sec-speechbubble .sb-item:nth-child(even) .sb-txt:before { right: -14px; }
}
/* ------------------------ */
@media (max-width: 750px) {
.sec-speechbubble { padding: 0 15px; }
.sec-speechbubble .sb-item { margin-bottom: 30px; }
.sec-speechbubble .sb-item .sb-icon {
	height: 50px;
	max-width: 50px;
	min-width: 50px;
	}
.sec-speechbubble .sb-item .sb-txt {
	font-size: 16px;
	padding: 15px 20px;
	}
.sec-speechbubble .sb-item .sb-txt:before {
	height: 15px;
	max-width: 15px;
	min-width: 15px;
	}
/* Scheme - Layout */
.sec-speechbubble .sb-item:nth-child(odd) .sb-icon { margin-right: 20px; }
.sec-speechbubble .sb-item:nth-child(odd) .sb-txt:before { left: -10px; }
.sec-speechbubble .sb-item:nth-child(even) .sb-icon { margin-left: 20px; }
.sec-speechbubble .sb-item:nth-child(even) .sb-txt:before { right: -10px; }
}

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

	*****

--------------------------- */
@media (min-width: 751px) {
}
@media (max-width: 750px) {
}
/* ------------------------ */
@media (min-width: 751px) {
}
@media (max-width: 750px) {
}
/* ------------------------ */
@media (min-width: 751px) {
}
@media (max-width: 750px) {
}
/* ------------------------ */
@media (min-width: 751px) {
}
@media (max-width: 750px) {
}

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

	*****

--------------------------- */
/* ------------------------ */
@media (min-width: 751px) {
}
/* ------------------------ */
@media (max-width: 750px) {
}