@charset "shift_jis";

/*------------------------------
base.cssの上書き
------------------------------*/
.mainBox {
	padding: 0;
	/* background: #f2f2f2 !important; */
}


@media screen and (max-width:767px) {
	article.container>div {
		margin-bottom: 20px !important;
	}
}

article.container>section {
	margin-bottom: 60px;
}

ul.tIndent li {
	line-height: 1.4;
	padding-bottom: 13px;
}

ul.tIndent li:last-child {
	padding-bottom: 0;
}

ul.disc li,
ul.circle li {
	line-height: 1.4;
}

table.detail td {
	background-color: #fff;
}


/*------------------------------
ページ内リンク高さ調整
------------------------------*/
@media screen and (max-width: 768px) {
	h2::before {
		content: "";
		display: block;
		height: 80px;
		/* ヘッダーの高さ */
		margin-top: -80px;
		/* アンカー調整 */
	}
}

/*------------------------------
背景色+コンテンツサイズ
------------------------------*/
.h1_area {
	background-color: #fff;
	padding: 25px 0 16px;
}

.container {
	line-height: 2rem;
	margin-bottom: 0;
	padding: 2rem 0;
	width: 1200px;
	margin: auto;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 60px;
}

@media screen and (max-width:767px) {
	.container {
		line-height: 1.6;
		width: 94%;
		padding: 1rem;
		margin-bottom: 20px;
	}
}


/*------------------------------
キーイメージ
------------------------------*/

/*
.keyimgArea {
	width: 100%;
	background-image: repeating-linear-gradient(45deg, #2a5fbe, #2a5fbe 5px, #2f69c9 5px, #2f69c9 10px);
	
	position: relative;
	margin: auto;
}

@media screen and (max-width: 767px) {
	.keyimgArea {
		background-size: 100% auto;
		background-position: 20% top;
	}
}
*/



.keyimgArea {
	width: 100%;
	background: url("/gaishoku/images/keyimg_AI72250-202510-002.jpg") no-repeat center center / cover;
	position: relative;
	margin: auto;
}

@media screen and (max-width: 767px) {
	.keyimgArea {
		height: 390px;
		background-size: 100% auto;
		/* 横を大きくして */
		background-position: 20% top;
		/* 左に寄せる（数値で調整） */
	}
}



.keyimgArea::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgb(0 0 0 / 27%);
}


.mainBox .keyimgBox {
	width: 960px;
	height: 600px;
	margin: 0 auto;
	position: relative;
	margin-top: -1em;
	padding-top: 5rem;
	text-align: center;
}





@media screen and (max-width: 767px) {
	.mainBox .keyimgBox {
		width: 100%;
		padding: 1.5rem 1rem;
		height: 300px;
	}
}

.keyimg_text {
	font-weight: bold;
	margin-top: 0.5em !important;
	text-align: center;
	line-height: 1.3;
}

@media screen and (max-width: 767px) {
	.keyimg_text {
		font-size: 18px;
		line-height: 1.2;
	}
}

.nintei {
	position: relative;
	display: inline-block;
	font-size: 1.4rem;
	margin-bottom: 20px;
	padding: 10px 30px;
	border: 3px solid #ff0000;
	border-radius: 9999px;
	background-color: #ffffff;
	text-align: left;
	font-size: 16px;
	line-height: 1.5;
	color: #ff0000;
	font-weight: 400;
}

.nintei::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 20px 10px 0 10px;
	border-color: #ff0000 transparent transparent;
	translate: -50% 100%;
}

@media screen and (max-width: 767px) {
	.nintei {
		font-size: 12px;
		padding: 10px 20px;
		text-align: center;
		border-radius: 9999px;
		border: 2px solid #ff0000;
	}
}

.keyimg_ttl {
	font-size: 2.4rem;
	font-weight: bold;
	color: #fff;
}


.keyimg_subttl {
	font-size: 1.2rem;
	font-weight: bold;
	color: #fff;
	margin-top: 10px;
	display: block;
}

@media screen and (max-width: 767px) {
	.keyimg_ttl {
		font-size: 2.0rem;
		line-height: 1.2;
		display: inline-block;
	}

	.keyimg_subttl {
		font-size: 0.9rem;
		line-height: 1.4;
	}

}

.sub_ttl {
	font-size: 1.55rem;
	color: #ff7100;
}

@media screen and (max-width: 767px) {
	.sub_ttl {
		font-size: 1.2rem;
		padding-top: 1rem;
		display: inline-block;
	}
}

ul.keyimg_btn {
	position: absolute;
	display: flex;
	gap: 1rem;
	left: 50%;
	transform: translateX(-50%);
	right: auto;
	width: 100%;
	justify-content: center;
	bottom: 18%;
}

ul.keyimg_btn li {
	flex: 1;
	/* 各ボタン(li)を均等に分配 */
	display: flex;
	/* 中のaを伸ばすためにflexに */
}

ul.keyimg_btn li a {
	flex: 1;
	/* li内でaをいっぱいに広げる */
	display: block;
	/* 背景やクリック範囲を確保 */
	text-align: center;
	/* テキスト中央寄せ */
	padding: 1rem;
	border-radius: 8px;
}

@media screen and (max-width: 767px) {
	ul.keyimg_btn li {
		flex: none;
		/* 均等幅を解除 */
	}

	ul.keyimg_btn li a {
		flex: none;
		width: 100%;
	}

	ul.keyimg_btn li a.online,
	ul.keyimg_btn li a.request,
	ul.keyimg_btn li a.trial {
		padding: 5px;
		border-radius: 8px;
		font-size: 14px;
	}

	a.online,
	a.request,
	a.trial {
		padding: 20px 10px;
		border-radius: 8px;
		font-size: 14px;
		display: block;
		text-align: center;
	}

}


ul.keyimg_btn li a.online,
a.online,
ul.keyimg_btn li a.request,
a.request,
ul.keyimg_btn li a.trial,
a.trial {
	background-color: #26ae5f;
	color: #fff;
	padding: 15px 40px;
	border-radius: 10px;
	font-size: 1.2rem;
	font-weight: bold;
	transition: all .3s ease;
	/* box-shadow: 0px 5px 10px 0px rgb(3 20 42 / 44%); */
}

a.online,
ul.keyimg_btn li a.online {
	background: #f22;
	background-size: 200% 100%;
}

a.online:hover,
a.request:hover,
a.trial:hover,
ul.keyimg_btn li a.online:hover,
ul.keyimg_btn li a.request:hover,
ul.keyimg_btn li a.trial:hover {
	text-decoration: none;
	background: #7684ff;
	color: #fff;
}

a.request,
ul.keyimg_btn li a.request {
	background: #fff;
	color: #1259b5;
	background-size: 200% 100%;
}


@media screen and (max-width: 767px) {
	ul.keyimg_btn {
		left: 50%;
		transform: translateX(-50%);
		right: auto;
		width: 100%;
		justify-content: center;
		bottom: 8%;
	}

	ul.keyimg_btn li a.online,
	ul.keyimg_btn li a.request,
	ul.keyimg_btn li a.trial {
		padding: 5px 8px;
		border-radius: 4px;
		font-size: 14px;
	}

	a.online,
	a.request,
	a.trial {
		padding: 10px;
		border-radius: 8px;
		font-size: 14px;
		display: block;
		text-align: center;
	}

}

/*------------------
ボタンの上書き
------------------*/
.btnBlue {
	border-radius: 10px;
	background: #5a64bc;
}


/*------------------
見出しの上書き
------------------*/
@media screen and (max-width:767px) {
	h1 {
		font-size: 1.4rem;
		line-height: 1.2;
		padding: 10px 0;
	}
}

.container h2 {
	position: relative;
	font-size: 1.9rem;
	padding-left: 0px;
	font-weight: 800;
	color: #5a64bc;
	border-bottom: transparent;
	margin-bottom: 1em;
}

.container h2::after {
	content: '';
	display: block;
	background: #f96615;
	margin-left: 0px;
	height: 5px;
	width: 100px;
}


@media screen and (max-width:767px) {
	.container h2 {
		font-size: 1.4em;
	}

	.container h2:: after {
		/* スマホサイズ */
		content: '';
		display: block;
		position: absolute;
		bottom: -1px;
		width: 50%;
		height: 0;
		background: transparent;
	}
}


.container h3 {
	position: relative;
	margin-bottom: 0.8em;
	padding-left: 0px;
	color: #5a64bc;
	border-bottom: 3px solid #cccccc;
	font-size: 1.4rem;
	font-weight: 800;

}

@media screen and (max-width:767px) {
	.container h3 {
		font-size: 1.25rem;
	}
}

.container h3:after {
	position: absolute;
	bottom: -3px;
	background-color: #f96615;
	height: 3px;

}

.container h4 {
	font-size: 1.2rem;
	font-weight: 800;
	border-left: 10px solid;
	border-image: linear-gradient(135deg, #376eb8 0%, #4CAF50 100%) 1;
	color: #5a64bc;
}


/*---------------------------
こんな課題を思ってるあなたへ
---------------------------*/
.contentBOX {
	border: 1px solid #f2f2f2;
	padding: 2rem;
	border-radius: 10px;
	box-shadow: 0px 8px 10px 0px rgb(27 85 157 / 16%);
}

@media screen and (max-width:767px) {
	.contentBOX img {
		width: 80px;
		height: auto;
	}
}

.contentBOX ul li {
	padding-bottom: 20px;
}

.contentBOX ul li:last-child {
	padding-bottom: 0;
}

.contentBOX h3 {
	border: none;
	text-align: center;
	color: #ff9b00;
}

.contentBOX h3:after {
	background: transparent;
}

h3.troubled02 {
	color: #00b059;
}


/*---------------------------
注目される背景
---------------------------*/
.background_arrow {
	background-image: url("/japanesecareer/images/index/img_arrow.png");
	background-repeat: no-repeat;
	background-position: center;
}

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

	/*スマホサイズ*/
	.background_arrow {
		background: url("/japanesecareer/images/index/img_arrow.png") no-repeat center center / cover;
		background-size: 100% auto;
	}
}

/* ----------------------------------
カウント
----------------------------------*/
body {
	counter-reset: count;
	/* ページ全体で一度だけ初期化 */
}


/* ----------------------------------
背景
----------------------------------*/
.background_box {
	background: #eaf2fa;
	padding: 2em;
	border-radius: 0.5rem;
	border: solid 3px #5a64bc40;
}

.background_box h3 {
	color: #5a64bc;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 1.5rem;
	line-height: 1.3;
	border-bottom: none;
}

.background_box img.grid2 {
	max-width: 120px;
}

.background_box ul li {
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 10px;
	color: #1d569e;
}



/*------------------
文字装飾
------------------*/
.att {
	font-weight: 800;
	color: #105fc1;
}

span.orange,
p.orange {
	color: #ff7100;
	font-weight: bold;
}

.catch {
	line-height: 1.6;
	font-size: 1.3rem;
	color: #5a64bc;
	font-weight: 800;
}

.point {
	line-height: 1.6;
	font-size: 1.3rem;
	color: #ff7100;
	font-weight: 800;
}

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

	.point,
	.catch {
		font-size: 1.0rem;
	}

	.point {
		line-height: 1.4;
		font-size: 1.1rem;
		margin-bottom: 1rem;
		text-align: center;
	}
}




/*----------------------
コンバージョンリンク
----------------------*/

.cv_area {
	padding: 60px 0;
	margin-top: -1em !important;
	background: #ff9a00;
	width: 100%;
	background-image: repeating-linear-gradient(45deg, #2a5fbe, #2a5fbe 5px, #2f69c9 5px, #2f69c9 10px);
	background-image: repeating-linear-gradient(45deg, #ffac03, #ffac03 5px, #ffa104 5px, #ffa104 10px);
}

.cv_area .inner_box {
	width: 940px;
	display: block;
	margin: auto;
	color: #fff;
	text-align: center;
}


@media screen and (max-width:767px) {
	.cv_area {
		padding: 30px 0;
	}

	.cv_area .inner_box {
		width: 90%;
	}
}

ul.cv_btn {
	display: flex;
	justify-content: center;
}

@media screen and (max-width:767px) {
	ul.cv_btn {
		display: block;
		justify-content: center;
	}
}

ul.cv_btn li {
	flex: 1;
	max-width: 33.33%;
	margin: 0 10px;
	text-align: center;
}

@media screen and (max-width:767px) {
	ul.cv_btn li {
		max-width: 100%;
		padding: 10px 0;
	}
}

ul.cv_btn a {
	display: block;
	padding: 1em;
	border-radius: 8px;
	transition: all .3s;
}

.cv_area ul.cv_btn {
	width: 1000px;
	margin: 0 auto;
}

@media screen and (max-width:767px) {
	.cv_area ul.cv_btn {
		width: 90%;
	}
}

ul.cv_btn li a.online,
ul.cv_btn li a.request,
ul.cv_btn li a.trial {
	color: #fff;
	padding: 20px 10px;
	border-radius: 10px;
	font-size: 1.3rem;
	font-weight: bold;
	transition: .3s ease-in-out;
}


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

	ul.cv_btn li a.online,
	ul.cv_btn li a.request,
	ul.cv_btn li a.trial {
		padding: 15px 10px;
		border-radius: 10px;
		font-size: 1.2rem;
	}
}



ul.cv_btn li a.online {
	background: #f22;

}


ul.cv_btn li a.request {
	background: #fff;
	color: #085ebf;
}

ul.cv_btn li a.trial {
	background: #26ae5f;
	border: 1px solid #26ae5f;
}

ul.cv_btn li a.online:hover,
ul.cv_btn li a.request:hover,
ul.cv_btn li a.trial:hover {
	text-decoration: none;
	background: #7684ff;
	color: #fff;

}



/*----------------------
ページ内リンク
----------------------*/

.NavBox {
	padding: 1rem;
	border-radius: 10px;
	background: #f1f4fb;
	box-shadow: 0px 5px 10px 0px rgb(27 85 157 / 16%);
	border: 4px solid #bec9ea;
}

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

	/*スマホサイズ*/
	.NavBox {
		margin: 0 auto;
	}
}

.groupNav {
	/* padding: 0.7em; */
}

.groupNav:after {
	content: "";
	clear: both;
	display: block;
}

.groupNav li {
	float: left;
	text-indent: 0;
	width: auto;
	padding: 8px;
}

@media screen and (max-width:767px) {
	.groupNav {
		padding: 0;
	}

	.groupNav li {
		padding: 3px;
		margin-right: 5p;
	}
}


.groupNav li:last-child {
	padding-bottom: 0;
}

ul.groupNav a {
	color: #2369c1;
	font-weight: 600;
	line-height: 1.4;
}

.tLink-a {
	position: relative;
	display: block;
	padding-left: 20px;
	background-image: none;
}

.tLink-a:before {
	content: '';
	width: 14px;
	height: 14px;
	background: #3567c2;
	border-radius: 2px;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -7px;
}

.tLink-a:after {
	content: '';
	width: 5px;
	height: 5px;
	border: 0px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 3px;
	margin-top: -3px;
}

/*---------------------------
におすすめ
---------------------------*/
.discBox {
	background: #ffeed4;
	padding: 2rem;
	border-radius: 10px;
	box-shadow: 0px 8px 10px 0px rgb(27 85 157 / 16%);
}


ul.discBox li {
	margin-bottom: 10px;
}


ul.discBox li:last-child {
	margin-bottom: 0;
}

.alert02 {
	background: #e3efff !important;
}


ul.discBOX {

	padding: 2rem;
	border-radius: 10px;
}

ul.disc li {
	position: relative;
}

ul.disc li::marker {
	color: #9eb8d8;
	font-size: 1.5rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);

}


ul.discBOX li {
	margin-bottom: 10px;
}

ul.discBOX li:last-child {
	margin-bottom: 0px;
}

.alert02 {
	background: #e3efff !important;
}


ul.discBOX {

	padding: 2rem;
	border-radius: 10px;
}

ul.disc li {
	position: relative;
}

ul.disc li::marker {
	color: #ffca2c;
	font-size: 1.5rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}


ul.discBOX li {
	margin-bottom: 10px;
}

ul.discBOX li:last-child {
	margin-bottom: 0px;
}


/*あなたへ*/
dl.example {
	margin-bottom: 40px;
	background: #fff;
	padding: 1rem;
	border-radius: 10px;
	box-shadow: 0px 5px 10px 0px rgb(27 85 157 / 16%);
}

dl.example dd img {
	margin: auto;
	width: 60px;
	height: auto;
}

dl.example dt {
	color: #5a64bc;
	font-size: 1.2rem;
	line-height: 1.4;
	text-align: center;
	font-weight: bold;
	padding-bottom: 1rem;
}

dl.example dd {
	text-align: left;
}


/*テーブルの幅指定*/

.cr_table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	line-height: 1.4;
	text-align: center;
}

table.detail.cr_table th {
	text-align: center;
	vertical-align: middle;
}

.cr_table ul {
	text-align: left;
}

.cr_table th:nth-child(1) {
	width: 130px;
}

.cr_table th:nth-child(2) {
	width: 260px;
}

.cr_table th:nth-child(3) {
	width: 200px;
}

.cr_table th:nth-child(4) {
	width: 260px;
}

.cr_table th:nth-child(5) {
	width: 140px;
}

.cr_table th:nth-child(6) {
	width: 100px;
}

/*----------
保有資格
----------*/
dl.shikaku dt {
	background-color: #5a64bc;
	color: #fff;
	padding: 0px 10px;
	border-radius: 999px;
	margin-right: 10px;
	display: inline-block;
	margin-bottom: 1rem;
}

@media screen and (max-width:768px) {
	dl.shikaku dt {
		display: block;
	}
}

dl.shikaku {
	background-color: #dfe9f7;
	color: #5a64bc;
	padding: 1rem;
	border-radius: 10px;
	margin-bottom: 1rem;
	box-shadow: 0px 8px 10px 0px rgb(27 85 157 / 16%);
}



dl.profile dt {
	background-color: #4aab57;
	color: #fff;
	padding: 0px 10px;
	border-radius: 999px;
	margin-right: 10px;
	display: inline-block;
	margin-bottom: 1rem;
}

dl.profile {
	background-color: #e0f1e3;
	padding: 1rem;
	border-radius: 10px;
	margin-bottom: 1rem;
	box-shadow: 0px 8px 10px 0px rgb(27 85 157 / 16%);
}

img.round {
	border-radius: 10px;
	box-shadow: 0px 8px 10px 0px rgb(27 85 157 / 16%);
}

.aboutArea {
	background-color: #f2f2f2;
	padding: 2rem;
	border-left: 13px solid #ff9700;
	border-radius: 10px;
	box-shadow: 0px 8px 10px 0px rgb(27 85 157 / 16%);
}

/*---------------------------
魅力、受講者の声
---------------------------*/
dl.charm,
dl.aboutBOX,
.voiceBOX {
	background-color: #f2f2f2;
	border: 1px solid #fff;
	padding: 2rem;
	border-radius: 10px;
	margin-bottom: 1rem;
	box-shadow: 0px 8px 10px 0px rgb(27 85 157 / 16%);
}

dl.charm dt,
dl.aboutBOX dt,
.voiceBOX dl dt.voive_ttl {
	font-weight: 800;
	color: #5a64bc;
	line-height: 1.4;
	padding-bottom: 1rem;
	margin-top: 1rem;
}

dl.charm dt,
dl.aboutBOX dt {
	font-size: 18px;
}

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

	dl.aboutBOX,
	.voiceBOX,
	dl.charm {
		padding: 1rem
	}

	dl.aboutBOX dt {
		font-size: 17px;
		text-align: center
	}

	dl.aboutBOX dd img.icimg{
		width: 60px;
		height: auto;
	}
}

/*---------------------------
受講者の声
---------------------------*/
h3.voice_company,
h3.voice_worker {
	display: flex;
	align-items: center;
	gap: 10px;
}

h3.voice_company img,
h3.voice_worker img {
	width: 40px;
	height: auto;
}

h4.company {
	background-color: #ffac03;
	padding: 5px 20px;
	border-radius: 999px;
	color: #fff;
	border: none;
	text-align: center;
	display: inline-block;
	line-height: 1.6;
	margin-bottom: 10px;
}

h4.country {
	display: flex;
	gap: 1rem;
	border: none;
	align-items: center;
	color: #333;
}


@media screen and (max-width:767px) {
	img.OnlineStudySP {
		width: 40%;
		height: auto;
		margin: auto;
	}
}

.decoBOX {
	background-color: #e4e6f4;
	padding: 2rem;
	border-radius: 1rem;
}



dl.test dt {
	background-color: :#333;
	color: #fff;
}