@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap');
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, figcaption, figure, section, footer, header, main, hgroup, menu, nav, summary {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
}
@media all and (min-width: 897px) and (max-width: 1150px) {
	html {
		font-size: calc(1000vw / 1150);
	}
}
@media all and (max-width: 374px) {
	html {
		font-size: calc(1000vw / 375);
	}
}
body, table, input, textarea, select, option {
	font-family: "Noto Sans JP", sans-serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, main, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
chrome_annotation {
	border: none !important;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
address {
	font-style: normal;
}
a,
a:link {
	color: #fff;
	text-decoration: none;
	transition: 0.3s;
}
a:visited {
	color: #fff;
}
a:hover {
	color: #fff;
}
a:active {
	color: #fff;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	color: #fff;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #2568b2;
}
.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
}
#container {
	position: relative;
	text-align: left;
}
#container::before {
	position: absolute;
	z-index: -1;
	top: 150.5rem;
	left: -15.3rem;
	content: "";
	width: 26rem;
	height: 24.7rem;
	background: url(../img/common/bg02.png) no-repeat left top / 100%;
	pointer-events: none;
}
#container::after {
	position: absolute;
	z-index: -1;
	top: 166rem;
	right: 0;
	content: "";
	width: 26rem;
	height: 24.7rem;
	background: url(../img/common/bg02.png) no-repeat right -16.5rem top / 100%;
	pointer-events: none;
}
#main {
	margin-bottom: 19.7rem;
	position: relative;
	background: url(../img/common/bg02.png) no-repeat left -13.9rem top 5.7rem / 26rem,url(../img/common/bg02.png) no-repeat right -16.5rem top -12.2rem / 26rem;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
	#main .add {
		position: absolute;
		top: 55rem;
		left: -3.5rem;
		font-size: 1.4rem;
		font-weight: 600;
		letter-spacing: 0.1em;
		transform: rotate(90deg);
	}
	#main .add span {
		margin-left: 1rem;
		display: inline-block;
		font-style: italic;
	}
}
@media all and (min-width: 897px) and (max-width: 1200px) {
	#main .add {
		left: -4.8rem;
		font-size: 1.2rem;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: inherit;
		font-size: 1.4rem;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
	#container::before {
		width: 14.9rem;
		top: 140rem;
		left: -9rem;
	}
	#container::after {
		width: 14.2rem;
		top: 168rem;
		background-position: right -9rem top;
	}
	#main {
		margin-bottom: 7.8rem;
		background-size: 14.9rem auto,14.2rem auto !important;
		background-position: left -9rem top 4.8rem,right -8.7rem top -6.3rem !important;
	}
}
/*------------------------------------------------------------
	privacy policy
------------------------------------------------------------*/
#privacy .privacy_content h3 {
	font-size: clamp(18px, 4vw, 20px);
	font-weight: 600;
	margin-bottom: 10px;
}
#privacy .privacy_content p {
	line-height: 1.8;
	margin-bottom: 30px;
}

/*------------------------------------------------------------
	number
------------------------------------------------------------*/
#number .sub_ttl .sp_ttl {
	display: none;
}
#number .number_list ul {
	display: grid;
	grid-template:
	"list01 list01 list01 list02 list02 list02" auto
	"list03 list03 list03 list03 list04 list04" auto
	"list05 list05 list06 list06 list06 list06" auto
	"list07 list07 list07 list07 list08 list08" auto
	"list09 list09 list09 list09 list010 list010" auto
	"list011 list011 list012 list012 list012 list012" auto
	"list013 list013 list014 list014 list014 list014" auto
	"list015 list015 list015 list015 list015 list015" auto
	"list016 list016 list016 list016 list016 list016" auto
	"list017 list017 list017 list017 list017 list017" auto
	"list018 list018 list018 list018 list018 list018" auto
	"list019 list019 list019 list019 list019 list019" auto / 1fr 1fr 1fr 1fr 1fr 1fr;
	gap: 23px;
}
#number .number_list ul li:nth-child(1) {
	grid-area: list01;
}
#number .number_list ul li:nth-child(2) {
	grid-area: list02;
}
#number .number_list ul li:nth-child(3) {
	grid-area: list03;
}
#number .number_list ul li:nth-child(4) {
	grid-area: list04;
}
#number .number_list ul li:nth-child(5) {
	grid-area: list05;
}
#number .number_list ul li:nth-child(6) {
	grid-area: list06;
}
#number .number_list ul li:nth-child(7) {
	grid-area: list07;
}
#number .number_list ul li:nth-child(8) {
	grid-area: list08;
}
#number .number_list ul li:nth-child(9) {
	grid-area: list09;
}
#number .number_list ul li:nth-child(10) {
	grid-area: list010;
}
#number .number_list ul li:nth-child(11) {
	grid-area: list011;
}
#number .number_list ul li:nth-child(12) {
	grid-area: list012;
}
#number .number_list ul li:nth-child(13) {
	grid-area: list013;
}
#number .number_list ul li:nth-child(14) {
	grid-area: list014;
}
#number .number_list ul li:nth-child(15) {
	grid-area: list015;
}
#number .number_list ul li:nth-child(16) {
	grid-area: list016;
}
#number .number_list ul li:nth-child(17) {
	grid-area: list017;
}
#number .number_list ul li:nth-child(18) {
	grid-area: list018;
}
#number .number_list ul li:nth-child(19) {
	grid-area: list019;
}
#number .number_list ul li:nth-child(20) {
	grid-area: list020;
}
#number .number_list ul li {
	background-color: #fff;
	border-radius: 20px;
	color: #000;
	padding: 40px 10px;
}
#number .number_list .number_list-ttl {
	text-align: center;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 30px;
}
#number .number_list .number_list-ttl::before {
	content: "";
	background-color: #07274B;
	width: 60px;
	height: 3px;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-50%);
}
#number .number_list .number_list-ttl p {
	font-weight: 600;
	font-size: clamp(18px, 4vw, 20px);
}
#number .number_list .inner {
	text-align: center;
}
#number .number_list .inner > p {
	font-size: 13px;
	display: inline-block;
	text-align: left;
	margin-top: 15px;
}
#number .number_list .number_list-number h3 {
	font-size: clamp(16px, 4vw, 20px);
	font-weight: 600;
}
#number .number_list .number_list-number h3 span {
	font-size: clamp(75px, 17vw, 100px);
	line-height: 0.8;
	color: #2468b2;
	font-family: "Jost", sans-serif;
}
#number .number_list .number_list-number .s_font {
	font-size: clamp(16px, 4vw, 18px);
}
#number .number_list .number_list-number .s_font span {
	font-size: clamp(55px, 13vw, 80px);
	line-height: 1.0;
}
#number .number_list ul li .inner > img {
	margin-bottom: 30px;
}
#number .number_list ul li .circle_graph > img {
	margin-bottom: 0;
}
#number .number_list .list_grid {
	display: grid;
	width: fit-content;
	margin: 0 auto;
	gap: 30px;
	grid-template-columns: 1fr 1fr;
}
#number .number_list .circle_graph {
	position: relative;
}
#number .number_list .circle_01 .circle_graph {
	max-width: 609px;
	margin: 0 auto;
}
#number .number_list .circle_01 .number_list-number .item:nth-child(1) {
	position: absolute;
	left: 11%;
	top: 60%;
	transform: translate(-50%, -50%);
}
#number .number_list .circle_01 .number_list-number .item:nth-child(2) {
	position: absolute;
	right: 17%;
	top: 60%;
	transform: translate(50%, -50%);
}
#number .number_list .circle_01 .number_list-number h3 span {
	font-size: min(8vw, 100px);
}
#number .number_list .circle_01 .number_list-number .item:nth-child(2) h3 span {
	color: #52A0D9;
}
#number .number_list .circle_02 .circle_graph {
	max-width: 609px;
	margin: 0 auto;
}
#number .number_list .circle_02 .number_list-number .item:nth-child(1) {
	position: absolute;
	left: 11%;
	top: 53%;
	transform: translate(-50%, -50%);
}
#number .number_list .circle_02 .number_list-number .item:nth-child(2) {
	position: absolute;
	right: 17%;
	top: 55%;
	transform: translate(50%, -50%);
}
#number .number_list .circle_02 .number_list-number h3 span {
	font-size: min(8vw, 100px);
}
#number .number_list .circle_02 .number_list-number .item:nth-child(2) h3 span {
	color: #52A0D9;
}
#number .number_list .circle_03 .circle_graph {
	max-width: 604px;
	margin: 0 auto;
}
#number .number_list .circle_03 .number_list-number .item:nth-child(1) {
	position: absolute;
	left: 10%;
	top: 46%;
	transform: translate(-50%, -50%);
}
#number .number_list .circle_03 .number_list-number .item:nth-child(2) {
	position: absolute;
	left: 11%;
	top: 90%;
	transform: translate(-50%, -50%);
}
#number .number_list .circle_03 .number_list-number .item:nth-child(3) {
	position: absolute;
	right: 15%;
	top: 39%;
	transform: translate(50%, -50%);
}
#number .number_list .circle_03 .number_list-number .item:nth-child(4) {
	position: absolute;
	right: 15%;
	top: 91%;
	transform: translate(50%, -50%);
}
#number .number_list .circle_03 .number_list-number h3 span {
	font-size: min(7vw, 60px);
}
#number .number_list .circle_04 .circle_graph {
	max-width: 573px;
	margin: 0 auto;
}
#number .number_list .circle_04 .number_list-number .item:nth-child(1) {
	position: absolute;
	left: 10%;
	top: 22%;
	transform: translate(-50%, -50%);
}
#number .number_list .circle_04 .number_list-number .item:nth-child(2) {
	position: absolute;
	left: 10%;
	top: 57%;
	transform: translate(-50%, -50%);
}
#number .number_list .circle_04 .number_list-number .item:nth-child(3) {
	position: absolute;
	left: 10%;
	top: 91%;
	transform: translate(-50%, -50%);
}
#number .number_list .circle_04 .number_list-number .item:nth-child(4) {
	position: absolute;
	right: 15%;
	top: 40%;
	transform: translate(50%, -50%);
}
#number .number_list .circle_04 .number_list-number .item:nth-child(5) {
	position: absolute;
	right: 14%;
	top: 86%;
	transform: translate(50%, -50%);
}
#number .number_list .circle_04 .number_list-number h3 span {
	font-size: min(7vw, 60px);
}
@media screen and (max-width:896px) {
	#number .number_list .circle_01 .number_list-number h3 span {
		font-size: min(11vw, 60px);
	}
	#number .number_list .circle_02 .number_list-number h3 span {
		font-size: min(11vw, 60px);
	}
	#number .number_list .circle_03 .number_list-number h3 span {
		font-size: min(9vw, 60px);
	}
	#number .number_list .circle_04 .number_list-number h3 span {
		font-size: min(9vw, 60px);
	}
}
@media screen and (max-width:550px) {
	#number .sub_ttl .sp_ttl {
		display: flex;
	}
	#number .sub_ttl .pc_ttl {
		display: none;
	}
	#number .number_list .circle_01 .number_list-number .item:nth-child(1) {
		top: 62%;
	}
	#number .number_list .circle_01 .number_list-number .item:nth-child(2) {
		top: 63%;
	}
	#number .number_list .circle_02 .number_list-number .item:nth-child(1) {
		top: 59%;
	}
	#number .number_list .circle_02 .number_list-number .item:nth-child(2) {
		top: 60%;
	}
	#number .number_list .circle_03 .number_list-number .item:nth-child(1) {
		top: 49%;
	}
	#number .number_list .circle_03 .number_list-number .item:nth-child(2) {
		top: 92%;
	}
	#number .number_list .circle_03 .number_list-number .item:nth-child(3) {
		top: 42%;
	}
	#number .number_list .circle_03 .number_list-number .item:nth-child(4) {
		top: 92%;
	}
}
@media screen and (max-width:430px) {
	#number .number_list .circle_01 .number_list-number .item:nth-child(1) {
		top: 66%;
	}
	#number .number_list .circle_01 .number_list-number .item:nth-child(2) {
		top: 67%;
	}
	#number .number_list .circle_02 .number_list-number .item:nth-child(1) {
		top: 63%;
	}
	#number .number_list .circle_02 .number_list-number .item:nth-child(2) {
		top: 64%;
	}
	#number .number_list .circle_03 .number_list-number .item:nth-child(1) {
		top: 53%;
	}
	#number .number_list .circle_03 .number_list-number .item:nth-child(3) {
		top: 48%;
	}
}


/* 画像サイズ */
/* #number .number_list ul li:nth-child(1) .inner > img {
	max-width: 183px;
} */
#number .number_list ul li:nth-child(1) .inner > img {
	max-width: 144px;
}
#number .number_list ul li:nth-child(2) .inner > img {
	max-width: 149px;
}
#number .number_list ul li:nth-child(3) .inner > img {
	max-width: 634px;
	width: 95%;
}
#number .number_list ul li:nth-child(4) .inner > img {
	max-width: 147px;
}
#number .number_list ul li:nth-child(5) .inner > img {
	max-width: 206px;
}
#number .number_list ul li:nth-child(7) .inner > img {
	max-width: 642px;
	width: 95%;
}
#number .number_list ul li:nth-child(8) .inner > img {
	max-width: 263px;
}
#number .number_list ul li:nth-child(9) .inner > img {
	max-width: 604px;
	width: 95%;
}
#number .number_list ul li:nth-child(10) .inner > img {
	max-width: 139px;
}
#number .number_list ul li:nth-child(11) .inner > img {
	max-width: 165px;
}
#number .number_list ul li:nth-child(12) .inner > img {
	max-width: 580px;
	width: 95%;
	margin-top: -50px;
}
#number .number_list ul li:nth-child(13) .inner > img {
	max-width: 195px;
}
/* 棒グラフ */
#number .number_list ul li .line_graph {
	max-width: 80%;
	margin: 0 auto;
}
#number .number_list ul li .line_graph .line_graph-item {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
}
#number .number_list ul li .line_graph .line_graph-item p {
	font-weight: 600;
	min-width: 100px;
	margin-right: 35px;
	text-align: left;
	font-size: 18px;
}
#number .number_list ul li .line_graph .line_graph-item h3 {
	font-size: 15px;
	white-space: nowrap;
}
#number .number_list ul li .line_graph .line_graph-item h3 span {
	font-size: 45px;
	font-family: "Jost", sans-serif;
	color: #2468B2;
}
#number .number_list ul li .line_graph .line_graph-item .line {
	height: 25px;
	background-color: #2468B2;
}
#number .number_list ul li .line_graph .line_graph-item .line.on {
	animation-name: lineAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}
@keyframes lineAnime {
  0% {
    transform-origin: left;
    transform: scaleX(0);
  }
  100% {
		transform-origin: left;
    transform: scaleX(1);
  }
}
#number .number_list ul li .line_graph .line_graph-inner {
	display: flex;
	align-items: center;
	gap: 15px;
}
/* 職種比率 */
#number .number_list ul li:nth-child(6) .line_graph .line_graph-item p {
	min-width: 75px;
}
#number .number_list ul li:nth-child(6) .line_graph .line_graph-item:nth-child(1) .line {
	width: 16%;
}
#number .number_list ul li:nth-child(6) .line_graph .line_graph-item:nth-child(2) .line {
	width: 70%;
	background-color: #52A0D9;
}
#number .number_list ul li:nth-child(6) .line_graph .line_graph-item:nth-child(3) .line {
	width: 11%;
	background-color: #B2DFFF;
}
#number .number_list ul li:nth-child(6) .line_graph .line_graph-item:nth-child(4) .line {
	width: 4%;
	background-color: #DDDDDD;
}
/* お昼ご飯 */
#number .number_list ul li:nth-child(14) .line_graph .line_graph-item:nth-child(1) .line {
	width: 16%;
}
#number .number_list ul li:nth-child(14) .line_graph .line_graph-item:nth-child(2) .line {
	width: 70%;
}
#number .number_list ul li:nth-child(14) .line_graph .line_graph-item:nth-child(3) .line {
	width: 11%;
}
#number .number_list ul li:nth-child(14) .line_graph .line_graph-item:nth-child(4) .line {
	width: 4%;
}
/* 年齢層 */
#number .number_list ul li:nth-child(15) .line_graph .line_graph-item:nth-child(1) .line {
	width: 0%;
}
#number .number_list ul li:nth-child(15) .line_graph .line_graph-item:nth-child(2) .line {
	width: 54%;
}
#number .number_list ul li:nth-child(15) .line_graph .line_graph-item:nth-child(3) .line {
	width: 90%;
}
#number .number_list ul li:nth-child(15) .line_graph .line_graph-item:nth-child(4) .line {
	width: 80%;
}
#number .number_list ul li:nth-child(15) .line_graph .line_graph-item:nth-child(5) .line {
	width: 54%;
}
#number .number_list ul li:nth-child(15) .line_graph .line_graph-item:nth-child(6) .line {
	width: 20%;
}
/* 交通手段 */
#number .number_list ul li:nth-child(16) .line_graph .line_graph-item:nth-child(1) .line {
	width: 90%;
}
#number .number_list ul li:nth-child(16) .line_graph .line_graph-item:nth-child(2) .line {
	width: 25%;
}
#number .number_list ul li:nth-child(16) .line_graph .line_graph-item:nth-child(3) .line {
	width: 3%;
}
#number .number_list ul li:nth-child(16) .line_graph .line_graph-item:nth-child(4) .line {
	width: 5%;
}
/* 主な社員の趣味 */
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item p {
	min-width: 225px;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(1) .line {
	width: 75%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(2) .line {
	width: 32%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(3) .line {
	width: 37%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(4) .line {
	width: 4%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(5) .line {
	width: 61%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(6) .line {
	width: 28%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(7) .line {
	width: 90%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(8) .line {
	width: 2%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(9) .line {
	width: 8%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(10) .line {
	width: 32%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(11) .line {
	width: 51%;
}
#number .number_list ul li:nth-child(17) .line_graph .line_graph-item:nth-child(12) .line {
	width: 80%;
}
/* 入社を決めた理由 */
#number .number_list ul li:nth-child(18) .line_graph .line_graph-item p {
	min-width: 240px;
}
#number .number_list ul li:nth-child(18) .line_graph .line_graph-item:nth-child(1) .line {
	width: 60%;
}
#number .number_list ul li:nth-child(18) .line_graph .line_graph-item:nth-child(2) .line {
	width: 36%;
}
#number .number_list ul li:nth-child(18) .line_graph .line_graph-item:nth-child(3) .line {
	width: 90%;
}
#number .number_list ul li:nth-child(18) .line_graph .line_graph-item:nth-child(4) .line {
	width: 10%;
}
#number .number_list ul li:nth-child(18) .line_graph .line_graph-item:nth-child(5) .line {
	width: 50%;
}
#number .number_list ul li:nth-child(18) .line_graph .line_graph-item:nth-child(6) .line {
	width: 22%;
}
#number .number_list ul li:nth-child(18) .line_graph .line_graph-item:nth-child(7) .line {
	width: 5%;
}
/* Willの魅力は */
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item p {
	min-width: 250px;
}
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item:nth-child(1) .line {
	width: 22%;
}
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item:nth-child(2) .line {
	width: 90%;
}
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item:nth-child(3) .line {
	width: 22%;
}
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item:nth-child(4) .line {
	width: 50%;
}
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item:nth-child(5) .line {
	width: 14%;
}
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item:nth-child(6) .line {
	width: 78%;
}
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item:nth-child(7) .line {
	width: 10%;
}
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item:nth-child(8) .line {
	width: 22%;
}
#number .number_list ul li:nth-child(19) .line_graph .line_graph-item:nth-child(9) .line {
	width: 5%;
}
@media screen and (max-width:896px) {
	#number .number_list ul {
    grid-template: "list01" auto "list02" auto "list03" auto "list04" auto "list05" auto "list06" auto "list07" auto "list08" auto "list09" auto "list010" auto "list011" auto "list012" auto "list013" auto "list014" auto "list015" auto "list016" auto "list017" auto "list018" auto "list019" auto "list020" auto / 1fr;
	}
	#number .number_list ul li .line_graph .line_graph-item {
		grid-template-columns: 1fr;
	}
	#number .number_list ul li:nth-child(17) .line_graph .line_graph-item p {
		min-width: auto;
	}
	#number .number_list ul li:nth-child(18) .line_graph .line_graph-item p {
		min-width: auto;
	}
	#number .number_list ul li:nth-child(19) .line_graph .line_graph-item p {
    min-width: auto;
	}
	/* #number .number_list ul li:nth-child(0) .inner > img {
		width: 40%;
	} */
	#number .number_list ul li:nth-child(1) .inner > img {
		width: 40%;
	}
	#number .number_list ul li:nth-child(2) .inner > img {
		width: 40%;
	}
	#number .number_list ul li:nth-child(4) .inner > img {
		width: 40%;
	}
	#number .number_list ul li:nth-child(5) .inner > img {
		width: 40%;
	}
	#number .number_list ul li:nth-child(8) .inner > img {
		width: 50%;
	}
	#number .number_list ul li:nth-child(10) .inner > img {
		width: 40%;
	}
	#number .number_list ul li:nth-child(11) .inner > img {
		width: 40%;
	}
	#number .number_list ul li:nth-child(13) .inner > img {
		width: 50%;
	}
}
@media screen and (max-width:600px) {
	#number .number_list ul li .line_graph {
		max-width: 95%;
	}
}

/*------------------------------------------------------------
	requirements
------------------------------------------------------------*/
#requirements .comTableBox {
	margin-bottom: 4.5rem;
	position: relative;
}
/*------------------------------------------------------------
	voice
------------------------------------------------------------*/
#voice #pagePath {
	margin-bottom: 5.3rem;
}
@media all and (max-width: 896px) {
}
/*------------------------------------------------------------
	interview
------------------------------------------------------------*/
#interview #container::after,
#interview #container::before {
	display: none
}
#interview #container {
	background: url(../img/interview/bg01.png) no-repeat left -23rem top 152.5rem / 33.5rem,url(../img/interview/bg02.png) no-repeat right -16rem top 213rem / 27.1rem;
}
#interview #pagePath {
	margin-bottom: 3.3rem;
}
#interview .sec01 {
	padding: 7.2rem 0 6.7rem;
	overflow: hidden;
	background: #07274b url(../img/interview/interview01_img01.png) no-repeat right -12.5rem top -18.6rem / 46.1rem;
}
#interview .sec01 .imgBox {
	align-items: center;
}
#interview .sec01 .imgBox .photoBox {
	width: 46.1%;
	border-radius: 0 30rem 30rem 0;
	overflow: hidden;
}
#interview .sec01 .imgBox .textBox {
	margin-bottom: 2.4rem;
	width: 41.5%;
}
#interview .sec01 .imgBox .textBox h3 {
	margin-bottom: 0.3rem;
	font-size: 2rem;
}
#interview .sec01 .imgBox .textBox h3 span {
	margin-left: 0.5rem;
	display: inline-block;
	font-size: 4rem;
}
#interview .sec01 .imgBox .textBox .title {
	margin-bottom: 0.7rem;
	font-size: 2.7rem;
	font-weight: 600;
	letter-spacing: 0.03em;
	line-height: 1.3;
}
#interview .sec01 .imgBox .textBox .text {
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0.05em;
}
#interview .sec01 .imgBox .textBox .text .name {
	margin: 0 1.4rem;
	display: inline-block;
	font-size: 2.2rem;
}
#interview .sec01 .imgBox .textBox .text .thin {
	font-weight: 300;
}
#interview .sec02 {
	margin: 7.5rem 0;
}
#interview .sec02 .content > .imgBox {
	margin-bottom: 6.8rem;
	display: grid;
	grid-template: "txt img" 1fr / 1fr auto;
	gap: 6.5%;
}
#interview .sec02 .imgBox .textList {
	grid-area: txt;
}
#interview .sec02 .imgBox .textList li:not(:last-child) {
	margin-bottom: 5.3rem;
}
#interview .sec02 .imgBox .textList .title {
	margin-bottom: 0.3rem;
	font-size: 2.6rem;
	font-weight: 600;
	letter-spacing: 0.03em;
}
#interview .sec02 .imgBox .textList .title span {
	margin-top: 3.5rem;
	padding-left: 5.7rem;
	position: relative;
	display: block;
	font-size: 1.6rem;
	letter-spacing: 0.05em;
}
#interview .sec02 .imgBox .textList .title span::after {
	width: 4.7rem;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	content: "";
	background-color: #fff;
}
#interview .sec02 .imgBox .textList .text {
	margin-bottom: 1.3rem;
	font-size: 1.5rem;
	line-height: 2.2;
}
#interview .sec02 .imgBox .textList .text:last-of-type {
	margin-bottom: 0;
}
#interview .sec02 .imgBox .photoList {
	/* float: right; */
	/* margin: 0.8rem 0 0 6.5%; */
	max-width: 45.4rem;
	width: 100%;
	grid-area: img;
}
#interview .sec02 .imgBox .photoList li {
	border-radius: 2rem;
	overflow: hidden;
}
#interview .sec02 .imgBox .photoList li:not(:last-child) {
	margin-bottom: 3.4rem;
}
#interview .sec02 .imgBox .photoList img {
	width: 100%;
}
#interview .sec02 .comTableBox {
	margin-bottom: 11.2rem;
	padding: 8.1rem 8.7rem 9rem;
	border-radius: 2rem;
}
#interview .sec02 .comTableBox th {
	padding: 3.3rem 0 3rem;
	position: relative;
	width: 33.3%;
	font-size: 2rem;
	border-bottom: 1px solid #ddd;
}
#interview .sec02 .comTableBox tr:last-child td {
	border-bottom: 1px solid #ddd;
}
#interview .sec02 .comTableBox th .tag {
	position: absolute;
	top: 3.4rem;
	left: 0;
	z-index: 1;
	padding: 0.2rem;
	display: inline-block;
	width: 7.5rem;
	text-align: center;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	border-radius: 1.35rem;
	background-color: #07274b;
}
#interview .sec02 .comTableBox th .jp {
	padding-left: 10.5rem;
	display: inline-block;
}
#interview .sec02 .comTableBox td {
	padding: 3.8rem 0 3.3rem 5rem;
	color: #07274b;
	font-size: 1.6rem;
	line-height: 1.44;
}
#interview .sec02 .voiceList {
	margin-bottom: 3rem;
}
#interview .sec02 .voiceList {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 3rem;
}
#interview .sec02 .voiceList li {
	width: 100%;
	margin: 0;
}
#interview .sec02 .voiceList li a {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	overflow: hidden;
	border: 0;
}
#interview .sec02 .voiceList li a::after {
	width: 35rem;
}
#interview .sec02 .voiceList li .imgBox p {
	font-size: 2.0rem;
}
#interview .sec02 .voiceList li .imgBox .pho {
	width: 65.05%;
}

@media all and (max-width: 896px) {
	#interview #container {
		background-size: 14.9rem auto ,14.2rem auto;
		background-position: left -9rem top 152.5rem,right -9rem top 213rem;
	}
	#interview .sec01 {
		padding: 3rem 0;
		background: #07274b url(../img/interview/interview01_img01.png) no-repeat right -12.5rem top -18.6rem / 46.1rem;
		background-size: 30rem auto;
		background-position: right -8rem top -8rem;
	}
	#interview .sec01 .imgBox {
		display: block;
	}
	#interview .sec01 .imgBox .photoBox {
		margin-bottom: 2rem;
		width: auto;
		border-radius: 0 15rem 15rem 0;
	}
	#interview .sec01 .imgBox .photoBox img {
		width: 100%;
	}
	#interview .sec01 .imgBox .textBox {
		margin-bottom: 2.4rem;
		width: auto;
	}
	#interview .sec01 .imgBox .textBox h3 {
		font-size: 1.8rem;
	}
	#interview .sec01 .imgBox .textBox h3 span {
		font-size: 3rem;
	}
	#interview .sec01 .imgBox .textBox .title {
		font-size: 2.5rem;
	}
	#interview .sec01 .imgBox .textBox .text {
		font-size: 1.5rem;
		font-weight: 600;
		letter-spacing: 0.05em;
	}
	#interview .sec01 .imgBox .textBox .text .name {
		font-size: 2rem;
	}
	#interview .sec02 {
		margin: 4rem 0;
	}
	#interview .sec02 .content > .imgBox {
		margin-bottom: 4rem;
	}
	#interview .sec02 .content > .imgBox {
		margin-bottom: 6.8rem;
		grid-template: "txt" "img" 1fr / 1fr;
		gap: 0;
	}
	#interview .sec02 .imgBox .textList {
		margin-bottom: 3rem;
	}
	#interview .sec02 .imgBox .textList li:not(:last-child) {
		margin-bottom: 3rem;
	}
	#interview .sec02 .imgBox .textList .title {
		font-size: 2.2rem;
	}
	#interview .sec02 .imgBox .textList .title span {
		margin-top: 1.5rem;
	}
	#interview .sec02 .imgBox .photoList {
		margin: 0;
		float: none;
		width: auto;
		max-width: 100%;
	}
	#interview .sec02 .imgBox .photoList li {
		border-radius: 1rem;
	}
	#interview .sec02 .imgBox .photoList li:not(:last-child) {
		margin-bottom: 1.5rem;
	}
	#interview .sec02 .comTableBox {
		margin-bottom: 4rem;
	}
	#interview .sec02 .comTableBox th {
		padding-top: 1.5rem !important;
		border-bottom: 0;
	}
	#interview .sec02 .comTableBox th .tag {
		top: 1.5rem;
	}
	#interview .sec02 .comTableBox th .jp {
		padding-left: 10.5rem;
		display: inline-block;
	}
	#interview .sec02 .comTableBox td {
		padding: 3.8rem 0 3.3rem 5rem;
		color: #07274b;
		font-size: 1.6rem;
		line-height: 1.44;
	}
	#interview .sec02 .voiceList {
		grid-template-columns: 1fr 1fr;
		gap: 3rem;
	}
}
@media screen and (max-width:550px) {
	#interview .sec02 .voiceList {
		margin-bottom: 3rem;
	}
	#interview .sec02 .voiceList {
		grid-template-columns: 1fr;
		gap: 3rem;
	}
}
/*------------------------------------------------------------
	job
------------------------------------------------------------*/
#job #container::after,
#job #container::before {
	display: none
}
#job #container {
	background: url(../img/job/bg01.png) no-repeat left -15.3rem top 150rem / 26.1rem,url(../img/job/bg02.png) no-repeat right -22rem top 165.5rem / 32.7rem;
}
#job #pagePath {
	margin-bottom: 7.5rem;
}
#job .bgBox {
	margin-bottom: 6rem;
	padding: 6.1rem 5rem 11rem;
	background-color: #fff;
}
#job .bgBox:last-of-type {
	margin-bottom: 0;
}
#job .bgBox .imgBox {
	margin-bottom: 5.4rem;
	align-items: flex-start;
	flex-direction: row-reverse;
}
#job .bgBox .imgBox .photoBox {
	width: 47rem;
	border-radius: 2rem;
	overflow: hidden;
}
#job .bgBox .imgBox .textBox {
	margin-top: -0.7rem;
	width: calc(100% - 50rem);
}
#job .bgBox .imgBox .textBox .text {
	font-weight: 400;
	line-height: 1.75;
	color: #07274b;
	letter-spacing: 0.05em;
}
#job .bgBox > .headLine04 {
	margin-bottom: 3.4rem;
}
#job .bgBox .jobList {
	margin-top: -2rem;
	margin-bottom: 5rem;
}
#job .bgBox .jobList li {
	margin: 2rem 2% 0 0;
	width: 32%;
}
#job .bgBox .jobList li:nth-child(3n) {
	margin-right: 0;
}
#job .bgBox .jobList .phoBox, #job .bgBox .jobDetail .phoBox {
	margin-bottom: 1.4rem;
	border-radius: 2rem;
	overflow: hidden;
}
#job .bgBox .jobList .txtBox .ttl, #job .bgBox .jobDetail .txtBox .ttl {
	margin-bottom: 0.3rem;
	color: #2468b2;
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: 0.05em;
}
#job .bgBox .jobList .txtBox .txt, #job .bgBox .jobDetail .txtBox .txt {
	color: #07274b;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

#job .bgBox .jobDetail {
	gap: 5rem 7rem;
	margin-bottom: 8rem;
}
#job .bgBox .jobDetail:last-child {
	margin-bottom: 0;
}
#job .bgBox .jobDetail > li {
	width: calc(100% / 2 - 35px);
}
#job .bgBox .jobDetail .txtBox ul li {
	text-indent: -1rem;
	padding-left: 1rem;
}

@media all and (max-width: 896px) {
	#job #container {
		background-size: 14.9rem auto ,14.2rem auto;
		background-position: left -9rem top 152.5rem,right -9rem top 213rem;
	}
	#job #pagePath {
		margin-bottom: 2rem;
	}
	#job .bgBox {
		margin-bottom: 3rem;
		padding: 3rem 2rem;
	}
	#job .bgBox .imgBox {
		margin-bottom: 3rem;
		display: block;
	}
	#job .bgBox .imgBox .photoBox {
		width: auto;
		border-radius: 1rem;
	}
	#job .bgBox .imgBox .textBox {
		margin: 0 0 2rem;
		width: auto;
	}
	#job .bgBox > .headLine04 {
		margin-bottom: 2rem;
	}
	#job .bgBox .jobDetail > li {
		width: auto;
	}
	#job .bgBox .jobList {
		margin-top: 0;
		display: block;
	}
	#job .bgBox .jobList li {
		margin: 0 0 2rem;
		width: auto;
	}
	#job .bgBox .jobList li:last-child {
		margin-bottom: 0;
	}
	#job .bgBox .jobList .phoBox {
		border-radius: 1rem;
	}
	#job .bgBox .jobList .phoBox img {
		width: 100%;
	}
	#job .bgBox .jobList .txtBox .ttl {
		font-size: 1.6rem;
	}
}
/*------------------------------------------------------------
	about
------------------------------------------------------------*/
#about #container::after,
#about #container::before {
	display: none
}
#about #container {
	background: url(../img/about/bg01.png) no-repeat left -15.3rem top 150rem / 26.1rem,url(../img/about/bg02.png) no-repeat right -16.5rem top 165.5rem / 27.1rem;
}
#about #pagePath {
	margin-bottom: 2.2rem;
}
#about section .text {
	text-indent: 2rem;
	line-height: 1.75;
}
#about .sec01 {
	margin-bottom: 9.2rem;
}
#about .sec01 .centerTxt {
	margin-bottom: 8.1rem;
	text-align: center;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	line-height: 1.77;
}
#about .sec01 .imgBox {
	align-items: flex-start;
}
#about .sec01 .imgBox .photoBox {
	width: 54rem;
	border-radius: 2rem;
	overflow: hidden;
}
#about .sec01 .imgBox .textBox {
	margin-top: -0.8rem;
	width: calc(100% - 60.7rem);
}
#about .sec01 .imgBox .textBox .ttl {
	margin-bottom: 2.2rem;
	font-size: 2.6rem;
	font-weight: 600;
	letter-spacing: 0.03em;
}
#about .sec01 .imgBox .textBox .txt {
	font-size: 1.5rem;
	line-height: 2.2;
}
#about .sec02 {
	margin-bottom: 9.8rem;
}
#about .sec02 .bgBox {
	margin-bottom: 3.7rem;
	padding: 6.5rem 4.1rem 7.5rem;
	background-color: #fff;
}
#about .sec02 .bgBox h4 {
	margin-bottom: 5rem;
	text-align: center;
	color: #07274b;
	font-size: 3rem;
	font-weight: 600;
	letter-spacing: 0.05em;
}
#about .sec03 {
	margin-bottom: 9.5rem;
}
#about .sec03 .headLine05 {
	margin-bottom: 2rem;
}
#about .sec03 .text:last-of-type {
	margin-bottom: 4.8rem;
}
#about .sec03 .photoList {
	margin-top: -1rem;
}
#about .sec03 .photoList li {
	margin-top: 1rem;
	width: 49.1%;
	border-radius: 2rem;
	overflow: hidden;
}
#about .sec04 {
	margin-bottom: 11rem;
}
#about .sec04 .photoList {
	margin-top: -1rem;
}
#about .sec04 .photoList li {
	margin: 1rem 1.06% 0 0;
	width: 24.2%;
}
#about .sec04 .photoList li:nth-child(4n) {
	margin-right: 0;
}
#about .sec05 .headLine05 {
	margin-bottom: 2rem;
}
@media all and (max-width: 896px) {
	#about #container {
		background-size: 14.9rem auto ,14.2rem auto;
		background-position: left -9rem top 152.5rem,right -9rem top 213rem;
	}
	#about #pagePath {
		margin-bottom: 2rem;
	}
	#about section .text {
		text-indent: 2rem;
		line-height: 1.75;
	}
	#about .sec01 {
		margin-bottom: 4rem;
	}
	#about .sec01 .centerTxt {
		margin-bottom: 4rem;
		text-align: left;
		font-size: 1.6rem;
	}
	#about .sec01 .imgBox {
		display: block;
	}
	#about .sec01 .imgBox .photoBox {
		margin-bottom: 1rem;
		width: auto;
		border-radius: 1rem;
	}
	#about .sec01 .imgBox .textBox {
		margin-top: 0;
		width: auto;
	}
	#about .sec01 .imgBox .textBox .ttl {
		margin-bottom: 1rem;
		font-size: 2.2rem;
	}
	#about .sec02 {
		margin-bottom: 4rem;
	}
	#about .sec02 .bgBox {
		margin-bottom: 2rem;
		padding: 2rem 1rem;
	}
	#about .sec02 .bgBox h4 {
		margin-bottom: 3rem;
		font-size: 2.2rem;
	}
	#about .sec02 .tabImg {
		overflow-x: auto;
	}
	#about .sec02 .tabImg .sub {
		margin: 0 auto;
		width: 70rem;
	}
	#about .sec03 {
		margin-bottom: 4rem;
	}
	#about .sec03 .text:last-of-type {
		margin-bottom: 2rem;
	}
	#about .sec03 .photoList {
		margin-top: 0;
		display: block;
	}
	#about .sec03 .photoList li {
		margin: 0 0 1rem;
		width: auto;
		border-radius: 1rem;
	}
	#about .sec03 .photoList li:last-child {
		margin-bottom: 0;
	}
	#about .sec04 {
		margin-bottom: 4rem;
	}
	#about .sec04 .photoList {
		justify-content: space-between;
	}
	#about .sec04 .photoList li {
		margin: 1rem 2% 0 0 !important;
		width: 49%;
	}
	#about .sec04 .photoList li:nth-child(2n) {
		margin-right: 0 !important;
	}
}
/*------------------------------------------------------------
	faq
------------------------------------------------------------*/
#faq #container::after,
#faq #container::before {
	display: none
}
#faq #container {
	background: url(../img/faq/bg01.png) no-repeat left -15.3rem top 150rem / 26.1rem,url(../img/faq/bg02.png) no-repeat right -16.5rem top 165.5rem / 27.1rem;
}
#faq #pagePath {
	margin-bottom: 2.8rem;
}
#faq dl {
	margin-bottom: 3rem;
	padding: 3.7rem 4.7rem;
	color: #000;
	background-color: #fff;
	border-radius: 2.5rem;
}
#faq dl:last-of-type {
	margin-bottom: 0;
}
#faq dt {
	padding: 1.3rem 7rem 1.3rem 10.5rem;
	font-size: 2rem;
	font-weight: 600;
	position: relative;
	letter-spacing: 0.05em;
	line-height: 2.1;
	border-bottom: 1px solid #ddd;
}
#faq dt::after,
#faq dd::after {
	width: 4.5rem;
	height: 4.5rem;
	position: absolute;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
    left: 3.5rem;
    top: 1.3rem;
    font-size: 2.4rem;
	font-weight: 300;
	font-family: "Poppins", sans-serif;
	color: #fff;
	border-radius: 50%;
}
#faq dt::after {
    content: "Q";
	background-color: #000;
}
#faq dd {
	padding: 1.9rem 7rem 1.3rem 10.5rem;
	position: relative;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
#faq dd::after {
	top: 1rem;
	content: "A";
	background-color: #2468b2;
}
@media all and (max-width: 896px) {
	#faq #container {
		background-size: 14.9rem auto ,14.2rem auto;
		background-position: left -9rem top 152.5rem,right -9rem top 213rem;
	}
	#faq #pagePath {
		margin-bottom: 2rem;
	}
	#faq dl {
		padding: 2rem 1.5rem;
		border-radius:1rem;
	}
	#faq dt {
		padding: 1.3rem 1rem 1.3rem 4.5rem;
		font-size: 1.8rem;
		line-height: 1.5;
	}
	#faq dt::after,
	#faq dd::after {
		width: 3rem;
		height: 3rem;
		left: 0;
		top: 1.5rem;
		font-size: 1.8rem;
	}
	#faq dd {
		padding: 1rem 1rem 1rem 4.5rem;
	}
	#faq dd::after {
		top: 1.3rem;
	}
}
/*------------------------------------------------------------
	top
------------------------------------------------------------*/
/* mainVisual */
#top #container {
	overflow: hidden;
}
#top #container::after,
#top #container::before {
	display: none
}
#top #container {
	background: url(../img/index/bg01.png) no-repeat left -15.3rem top 89.5rem / 27.5rem,url(../img/index/bg02.png) no-repeat right -16.5rem top 98.5rem / 27.1rem;
}
#top #main {
	background-position: left -13.9rem top 34rem,right -17.6rem top 27rem;
}
#top .mainVisual {
	padding: 24.3rem 0 22.5rem;
}
#top .mainVisual .content {
	position: relative;
}
#top .mainVisual .lImg {
	width: 27.2rem;
	position: absolute;
	z-index: 2;
	top: 1.6rem;
	left: -15rem;
}

@media all and (min-width: 897px) and (max-width: 1350px) {
	#top .mainVisual .lImg {
		left: -2rem;
		width: 20rem;
	}
}
#top .mainVisual .lImg01 {
	width: 21.7rem;
	top: -19.7rem;
	left: 3.1rem;
}
#top .mainVisual .lImg02 {
	width: 26.5rem;
	top: 12rem;
	left: 1.5rem;
}
#top .mainVisual .lImg03 {
	width: 25rem;
	top: -27rem;
	left: 28.6rem;
}
#top .mainVisual .rImg {
	width: 26.2rem;
	position: absolute;
	z-index: 2;
	top: -3rem;
	right: -19.3rem;
}
@media all and (min-width: 897px) and (max-width: 1350px) {
	#top .mainVisual .rImg {
		width: 20rem;
		right: -2rem;
		top: 0;
	}
}
#top .mainVisual .rImg01 {
	width: 15.1rem;
	top: -25.2rem;
	right: 4.5rem;
}
#top .mainVisual .rImg02 {
	width: 26rem;
	top: 15.4rem;
	right: 1.1rem;
}
#top .mainVisual .rImg03 {
	width: 20.7rem;
	top: -18.5rem;
	right: 21.3rem;
}
#top .mainVisual .innerBox {
	margin: 0 auto;
	width: 47.6rem;
	position: relative;
	text-align: center;
}
/* #top .mainVisual .innerBox::after {
	width: 50.3rem;
	height: 50.3rem;
	position: absolute;
	z-index: -2;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-55%);
	content: "";
	border-radius: 50%;
	background-color: #52a0d9;
}
#top .mainVisual .innerBox::before {
	width: 40.1rem;
	height: 40.1rem;
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-55%);
	content: "";
	border-radius: 50%;
	background-color: #3771ac;
} */
#top .mainVisual .innerBox .imgText {
	margin-bottom: 1.5rem;
	position: relative;
	z-index: 3;
}
#top .mainVisual .innerBox .imgText svg path {
	opacity: 0;
}
#top .mainVisual .innerBox p {
	position: relative;
	z-index: 3;
	font-size: 3rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	opacity: 0;
}
#top .mainVisual .innerBox .main_bg {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	z-index: -1;
	opacity: 0;
}

@media all and (max-width: 896px) {
	#top #container {
		background-size: 17.5rem auto ,15rem auto;
		background-position: left -11rem top 57rem, right -10rem top 41.5rem;
		background-image: url(../img/index/bg01_sp.png),url(../img/index/bg02_sp.png);
	}
	#top .mainVisual {
		padding: 18rem 0 3.4rem;
	}
	#top .mainVisual .lImg {
		left: 50% !important;
	}
	#top .mainVisual .lImg01 {
		width: 8.6rem;
		top: 15rem;
		transform: translateX(-210%)!important;
	}
	#top .mainVisual .lImg02 {
		width: 13.85rem;
		top: 14rem;
		left: 50%;
		transform: translateX(-63%)!important;
	}
	#top .mainVisual .lImg03 {
		width: 16.7rem;
		top: -18.2rem;
		transform: translateX(-95%)!important;
	}
	#top .mainVisual .rImg {
		width: 12.3rem;
		top: 16rem;
		right: auto !important;
		left: 50% !important;
		transform: translateX(66%)!important;
	}
	#top .mainVisual .rImg01 {
		width: 7.88rem;
		top: -19rem;
		transform: translateX(10%)!important;
	}
	#top .mainVisual .rImg03 {
		width: 13.1rem;
		top: -13rem;
		transform: translateX(36%)!important;
	}
	#top .mainVisual .innerBox {
		margin-bottom: 15.7rem;
		width: 30rem;
	}
	#top .mainVisual .innerBox::after {
		width: 27.1rem;
		height: 27.1rem;
		transform: translate(-50%,-52%);
	}
	#top .mainVisual .innerBox::before {
		width: 21.7rem;
		height: 21.7rem;
		transform: translate(-50%,-52%);
	}
	#top .mainVisual .innerBox .imgText {
		margin-bottom: 1.3rem;
	}
	#top .mainVisual .innerBox p {
		font-size: 1.9rem;
	}
}
/* about */
#top .about {
	margin-bottom: 9.5rem;
}
#top .about .headLine01 {
	margin-bottom: 2rem;
}
#top .about .headLine01 .en{
	margin-bottom: 0.3rem;
	letter-spacing: 0;
}
#top .about .headLine01 .jp {
	font-size: 2.8rem;
	letter-spacing: 0.05em;
	line-height: 1.6;
}
#top .about .centerTxt {
	margin-bottom: 2.4rem;
	text-align: center;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	line-height: 1.77;
}
#top .about .comBtn02 {
	margin-bottom: 9.7rem;
}
#top .about .comBtn02 a {
	padding-right: 2.7rem;
}
#top .about .aboutList {
	margin-top: -6.9rem;
}
#top .about .aboutList li {
	margin-top: 6.9rem;
	width: 48.1%;
}
#top .about .aboutList .photoBox a:hover {
	opacity: 0.7;
}
#top .about .aboutList .photoBox {
	margin-bottom: 2.3rem;
	position: relative;
	border-radius: 3.2rem;
	overflow: hidden;
}
#top .about .aboutList .photoBox .pho img {
	width: 100%;
}
#top .about .aboutList .photoBox .btn {
	width: 28.9rem;
	position: absolute;
	z-index: 2;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	border-radius: 2rem 2rem 0 0;
	background-color: #07274b;
	min-height: 6.1rem;
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	display: flex;
	justify-content: center;
	text-align: center;
	align-items: center;
}
/* #top .about .aboutList .photoBox .btn a {
	min-height: 6.1rem;
	font-size: 2rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	display: flex;
	justify-content: center;
	text-align: center;
	align-items: center;
} */
#top .about .aboutList .photoBox .btn span {
	padding: 0 3.7rem;
	background: url(../img/common/icon04.png) no-repeat right center / 2.2rem;
}
/* #top .about .aboutList .photoBox .btn a:hover {
	opacity: 0.7;
} */
#top .about .aboutList .textBox .text {
	letter-spacing: 0.02em;
	line-height: 1.875;
}
@media all and (max-width: 896px) {
	#top .about {
		margin-bottom: 5rem;
	}
	#top .about .headLine01 {
		margin-bottom: 1.3rem;
	}
	#top .about .headLine01 .en{
		margin-bottom: 0.7rem;
		font-size: 5.4rem;
	}
	#top .about .headLine01 .jp {
		font-size: 2rem;
		letter-spacing: 0.02em;
		line-height: 1.4;
	}
	#top .about .centerTxt {
		margin: 0 1rem 4.2rem;
		font-size: 1.6rem;
		text-align: left;
		letter-spacing: 0.05em;
		line-height: 1.75;
	}
	#top .about .aboutList {
		margin-top: 0;
		display: block;
	}
	#top .about .aboutList li {
		margin: 0 0 3.1rem;
		width: auto;
	}
	#top .about .aboutList li:last-child {
		margin-bottom: 0;
	}
	#top .about .aboutList .photoBox {
		margin-bottom: 1.6rem;
	}
	#top .about .aboutList .photoBox .btn {
		width: 21rem;
		min-height: 3.8rem;
		font-size: 1.5rem;
		letter-spacing: 0.05em;
	}
	#top .about .aboutList .photoBox .btn span {
		padding: 0;
		width: 16.5rem;
		display: inline-block;
		background-size: 1.4rem auto;
	}
	#top .about .aboutList .textBox .text {
		font-size: 1.6rem;
		letter-spacing: 0.05em;
		line-height: 1.75;
	}
}
/* voice */
#top .voice {
	margin-bottom: 12.5rem;
}
#top .voice .headLine01 {
	margin-bottom: 2.3rem;
}
#top .voice .headLine01 .en {
	letter-spacing: 0;
}
#top .voice .headLine01 .jp {
	font-size: 2.2rem;
	letter-spacing: 0.05em;
}
#top .voice .voiceList {
	margin-bottom: 2.9rem;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 3rem;
	margin-top: 5rem;
}
#top .voiceList a {
	overflow: hidden;
	border: 0;
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: space-between;
}
#top .voiceList a::after {
	width: 35rem;
}
#top .voiceList .imgBox p {
	font-size: 2.0rem;
}
#top .voiceList .imgBox .pho {
	width: 65.05%;
}
@media all and (max-width: 896px) {
	#top .voice {
		margin-bottom: 6.2rem;
	}
	#top .voice .headLine01 {
		margin-bottom: 2.7rem;
	}
	#top .voice .headLine01 .en {
		margin-bottom: 0.5rem;
		font-size: 4rem;
		line-height: 1.1;
		letter-spacing: 0;
	}
	#top .voice .headLine01 .jp {
		font-size: 2rem;
	}
	#top .voice .voiceList {
		margin-bottom: 0;
	}
	#top .voice .voiceList {
		grid-template-columns: 1fr 1fr;
	}
}
@media screen and (max-width:550px) {
	#top .voice .voiceList {
		grid-template-columns: 1fr;
	}
}

/* company */
.company {
	margin-top: 12.5rem;
}
.company .content {
	max-width: 133rem;
}
.company h2 {
	margin-bottom: -1.8rem;
	text-align: center;
	font-size: 6.9rem;
	font-weight: 600;
	letter-spacing: 0.05em;
}
.company h2 span {
	color: #62BCFF;
}
.company .innerBox {
	padding: 9rem 2rem 8.3rem;
	border-radius: 3.4rem;
	background: #000 url(../img/index/company_photo01.png) no-repeat left top / cover;
}
.company .innerBox .title {
	margin-bottom: 3rem;
	text-align: center;
	font-size: 3rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.66;
}
.company .innerBox .text {
	margin-bottom: 3.9rem;
	text-align: center;
	font-weight: 600;
	font-size: 2rem;
	letter-spacing: 0.05em;
	line-height: 2.35;
}
@media all and (min-width: 897px) and (max-width: 1170px) {
	.company h2 {
		font-size: 6rem;
	}
}
@media all and (max-width: 896px) {
	.company {
		margin-top: 6.2rem;
	}
	.company .content {
		padding: 0;
		max-width: 100%;
	}
	.company h2 {
		margin-bottom: 0.2rem;
		font-size: 4.3rem;
		line-height: 0.95;
		letter-spacing: 0;
	}
	.company h2 span {
		display: block;
	}
	.company .innerBox {
		padding: 7.6rem 2.6rem 6.5rem;
		border-radius: 2.7rem;
		background-image: url(../img/index/company_photo01_sp.png);
	}
	.company .innerBox .title {
		margin-bottom: 2.3rem;
		font-size: 2.6rem;
		line-height: 1.54;
	}
	.company .innerBox .text {
		margin-bottom: 3.8rem;
		font-size: 1.6rem;
		text-align: left;
		line-height: 1.875;
	}
}

/*------------------------------------------------------------
	common
------------------------------------------------------------*/
@media all and (max-width: 896px) {
}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
@media all and (max-width: 896px) {
}

/*------------------------------------------------------------
	animetion
------------------------------------------------------------*/
#top .mainVisual .mainvisual_img, #top #gHeader, #top #main .add, #top .mainVisual .innerBox .imgText {
	opacity: 0;
}

#splash {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 1200;
	background: #2468B2;
	text-align:center;
}
#splash_logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#splash_logo img {
	width: 200px;
}
@keyframes fadeIn{
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

/* メインビジュアルアニメーション */
.maintxtOuter {
  opacity: 0;
}
.bgextend {
  animation-name: bgextendAnimeBase;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  position: relative;
  overflow: hidden;
  opacity: 0;
}
@keyframes bgextendAnimeBase {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bgappear {
  animation-name: bgextendAnimeSecond;
  animation-duration: 1s;
  animation-delay: 0.8s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes bgextendAnimeSecond {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.bgLRextend::before {
  animation-name: bgLRextendAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  content: "";
  position: absolute;
	top: 0;
	left: 0;
  width: 100%;
  height: 100%;
	z-index: 3;
  background-color: #2568B2;
}
@keyframes bgLRextendAnime {
  0% {
    transform-origin: left;
    transform: scaleX(0);
  }
  50% {
    transform-origin: left;
    transform: scaleX(1);
  }
  50.001% {
    transform-origin: right;
  }
  100% {
    transform-origin: right;
    transform: scaleX(0);
  }
}


/*------------------------------------------------------------
	entry
------------------------------------------------------------*/
#entry #container::after {
	content: none;
}
#entry .entry_table {
	margin-top: 30px;
}
#entry .entry_table table {
	width: 100%;
	border-spacing: 0 20px;
}
#entry .entry_table table th {
	width: 225px;
	font-weight: normal;
	padding: 15px 0;
	vertical-align: top;
}
#entry .entry_table table th .required {
	color: #e93814;
}
#entry .entry_table table td input, #entry .entry_table table td textarea {
	width: 100%;
	padding: 15px;
	box-sizing: border-box;
	background-color: #f0f0f0;
	border: 0;
}
#entry .entry_table table td .address {
	position: relative;
	width: fit-content;
}
#entry .entry_table table td .address::after {
	content: "";
	border-bottom: 1px solid #000;
	border-right: 1px solid #000;
	width: 7px;
	height: 7px;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translate(0, -50%) rotate(45deg);
}
#entry .entry_table table td select {
	padding: 15px 35px 15px 15px;
	box-sizing: border-box;
	background-color: #f0f0f0;
	border: 0;
	appearance: none;
}
#entry .entry_btn {
	display: flex;
	justify-content: center;
	gap: 15px;
	margin-top: 30px;
}
#entry .entry_btn .btn {
	position: relative;
}
#entry .entry_btn .btn span {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: #fff;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translate(0, -50%);
}
#entry .entry_btn .btn span::after {
	content: "";
	position: absolute;
	left: 45%;
	top: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	width: 6px;
	height: 6px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
}
#entry .entry_btn input {
	background-color: #000;
	border-radius: 50vh;
	width: 230px;
	color: #fff;
	padding: 15px 5px;
	border: 0;
	font-size: 16px;
	transition: 0.3s;
}
#entry .entry_btn input:hover {
	opacity: 0.7;
}

@media screen and (max-width:896px) {
	#entry .entry_table table th {
		width: 100px;
	}
	#entry .entry_table table td input, #entry .entry_table table td textarea {
		padding: 10px;
	}
	#entry .entry_btn {
		flex-direction: column;
		align-items: center;
	}
}

/*------------------------------------------------------------
	thanks
------------------------------------------------------------*/
#thanks .thanks_content h3 {
	font-size: 24px;
	line-height: 1.8;
	margin-bottom: 4rem;
}
#thanks .thanks_content p {
	background: #fff;
	color: #2568b2;
	font-weight: bold;
	padding: 3rem 5rem;
	line-height: 1.8;
}
