@charset "UTF-8";


/* color

	color: #066a5e;
	color: #33d08c;
	color: #41B281;
	color: #111918;

**********************/





@import url(https://fonts.googleapis.com/css?family=Roboto+Condensed:400,300,700);
/*
font-family: 'Roboto Condensed', sans-serif;
 */
@font-face {
	font-family: 'Linearicons';
	src: url('../fonts/Linearicons/Linearicons.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'aioi';
	src: url(../fonts/aioi/fonts/aioi.ttf) format('truetype');
	font-weight: normal;
	font-style: normal;
}

/*
 * "Mincho-Subset" is licensed under the IPA Font License Agreement v1.0
 * http://fontopo.com/?p=377
 * http://ipafont.ipa.go.jp/
 * http://ipafont.ipa.go.jp/ipa_font_license_v1.html
 */
/*@font-face {
	font-family: 'Mincho-Subset';
	src:url('../fonts/mincho-sub.eot?-x9a3en');
	src:url('../fonts/mincho-sub.eot?#iefix-x9a3en') format('embedded-opentype'),
		url('../fonts/mincho-sub.ttf?-x9a3en') format('truetype'),
		url('../fonts/mincho-sub.woff?-x9a3en') format('woff');
	font-weight: normal;
	font-style: normal;
}*/


:root {
	--c-primary   : #066a5e;
	--c-secondary : #41B281;
	--c-paleGreen : #ecf1ed;
	--ff-min      : "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	--ff-gothic   : "ヒラギノ角ゴ Pro W3","Noto Sans JP", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	--ff-en       : 'Roboto Condensed', sans-serif;
}

@media print {
body {
width: 1000px;
}
/* 印刷時に画面と変更するスタイルを定義 */
}



/* Reset
------------------------------------------------------------*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
article, aside, figure, footer, header, hgroup, nav, section {
	display: block;
	position: relative;
 /zoom: 1;
}
html {
	height: 100%;
}
body {
	line-height: 1;
	height: 100%;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* Fonts
------------------------------------------------------------*/
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	line-height: 1.9;
	font-size: 15px;
	height: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}
/* clearfix
------------------------------------------------------------*/
.clear, .clearfix:after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}
.clearfix {
/zoom: 1;
} /* IE */
/* common
------------------------------------------------------------*/
p {
	text-align: justify;
}
p, ul, ol, dl {
	letter-spacing: 0.1em;
}
h1, h2, h3, h4, h5 {
	letter-spacing: 0.1em;
}
.hidden {
	display: none;
}
table {
	width: 100%;
	margin: 0 0 20px;
}
table p {
	text-align: left;
}
caption {
	font-weight: bold;
	text-align: left;
}
hr {
	display: none;
}
img {
	border: none;
	vertical-align: bottom;
}
em {
	font-weight: bold;
	font-style: normal;
}
strong {
	font-weight: bold;
	color: #B83F52;
}
sup {
	vertical-align: top;
	line-height: 1.8;
	font-size: x-small;
}
.supAnnotationList {
	font-size: 0.7em;
	margin-top: 2em;
	&:first-child {
		margin-top: 0;
	}

	&.level-down {
		margin-left: 1em;
		opacity: 0.7;
	}

	.sup {
		/* display: inline-block; */
		/* margin-left: 2em; */

		margin-right: 0.5em;
	}
	li {
		text-indent: -2.5em !important;
		padding-left: 2.5em !important;
	}

	&:first-child {
		> li:first-child {
			margin-top: 0 !important;
		}
	}
}
.supAnnotationList-asterisk {
	font-size: 0.7em;
	margin-top: 2em;
	&:first-child {
		margin-top: 0;
	}

	&.level-down {
		margin-left: 1em;
		opacity: 0.7;
	}

	.sup {
		/* display: inline-block; */
		/* margin-left: 2em; */

		margin-right: 0.5em;
	}
	li {
		text-indent: -1.7em !important;
		padding-left: 1.7em !important;
	}
	&:first-child {
		> li:first-child {
			margin-top: 0 !important;
		}
	}
}
.list-largeDot {
	.dot {
		margin-right: 0.5em;
	}

	li {
		padding-left: 1.5em !important;
		text-indent: -1.5em !important;
		margin: 0.3em 0 !important;

		&:first-child {
			margin-top: 0 !important;
		}
	}
}



ins {
	color: #C00;
}
a {
	transition: color 0.2s 0s ease, background-color 0.2s 0s ease;
	-webkit-transition: color 0.2s 0s ease, background-color 0.2s 0s ease;
	-moz-transition: color 0.2s 0s ease, background-color 0.2s 0s ease;
	transition: 0.2s ease-out;
	-webkit-transition: 0.2s ease-out;
	-moz-transition: 0.2s ease-out;
}
a:link {
	text-decoration: none;
}
a:visited {
	text-decoration: none;
}
a:hover {
	color: ;
}

a.nolink {
	pointer-events: none;
}

.prohibition {
	display: inline-block;
}

br.sp {
	display: none;
}
/*------------------------------------ media */
@media screen and ( max-width: 768px ){
	br.pc {
		display: none;
	}
	br.sp {
		display: inline-block;
	}
}

@media screen and (max-width: 768px) {
	p, ul, ol, dl {
		// letter-spacing: 0;
	}
	img {
		max-width: 100%;
	}
}

.g-sub {
	font-size: 0.8em;
}
.ta-center {
	text-align: center;
}
.d-inlineBlock {
	display: inline-block;
	margin-bottom: 0.5em;
}



::selection {
	background: #066a5e;
	color: #fff;
}

a[target="_blank"]::after {
	content: "\e900";
	font-family: 'aioi';
	font-weight: normal;
	font-size: 0.6em;
	vertical-align: 0em;
	margin: 0 0 0 0.7em;
	opacity: 0.3;
}



body {
	padding-top: 230px;
}
body.openNav {
	overflow: hidden;
	> article {
		scrollbar-gutter: stable;
		overflow: auto;
	}
}
body.is-modal-open {
	overflow: hidden;
	pointer-events:none;
	> article {
		scrollbar-gutter: stable;
		overflow: auto;
	}
	dialog {
		pointer-events: auto;
	}
}

/*------------------------------------ media */
@media screen and ( max-width: 768px ){
	body {
		padding-top: 52vw;
	}
}
/*------------------------------------ media */
@media screen and ( max-width: 414px ){
	body {
		padding-top: 56vw;
	}
}

/* protect
--------------------------------------------------------------*/
.protect {
	user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	-webkit-user-select:none;
	-khtml-user-select:none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-webkit-touch-callout: none;
}
.protect {
	position: relative;
	display: block;
}
.protect::after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0;
}
@media print {
	.protect {
		display: none !important;
	}
}
/* breadcrumb
-------------------------------------*/
.breadcrumb {
	width: auto;
	min-width: 1054px;
	margin-bottom: 10px;
	text-align: center;
	letter-spacing: 0;
	font-size: 0;
	line-height: 1;
}
.breadcrumb li {
	display: inline-block;
	font-size: 12px;
	letter-spacing: 0.2em;
	color: #999;
	line-height: 1;
	border-right: 1px solid #eee;
}
.breadcrumb li:last-child {
	border: none;
	padding-left: 1em;
	padding-right: 1em;
}
.breadcrumb li a {
	display: inline-block;
	color: #000;
	padding: 0.5em 1em;
	padding-right: 0.8em;
}
.breadcrumb li a:hover {
	color: #066a5e;
}
@media screen and (max-width: 768px) {
	.breadcrumb {
		display: none;
	}
}


/* contents
-------------------------------------*/
.inner {
	width: 1054px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.inner {
		width: 100%;
		padding: 0 20px;
		box-sizing: border-box;
	}
}








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

   article

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

article > section {
	width: 1054px;
	margin: 120px auto 0;
}
article > section.fullWindow {
	width: 1200px;
}

@media screen and (max-width: 768px) {
	article > section.fullWindow {
		width: 100vw;
	}
}

article h1 {
	/*font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ 明朝", "ＭＳ Ｐ明朝", serif;*/
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 28px;
	font-weight: normal;
	color: #066a5e;
	margin-bottom: 20px;
	/*font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ 明朝", "ＭＳ Ｐ明朝", serif;*/
	line-height: 1.3;
}

article h1 .min {
	font-size: 13px;
	color: #000;
}

article > section > p {
	margin: 2em 0;
}

@media screen and (max-width: 768px) {
	article > section {
		width: 100%;
		margin: 60px auto 0;
		padding: 0 20px;
		box-sizing: border-box;
	}
	article h1 {
		font-size: 5.5vw;
		margin-bottom: 20px;
	}
	article h1 .min {
		font-size: 11px;
		color: #000;
	}
}

/* header
--------------------------------------------------------------*/
article > header {
	width: 100vw;
	min-width: 1054px;
	margin-bottom: 160px;
}
article > header h1 {
	text-align: center;
}
/*------------------------------------ media */
@media screen and ( max-width: 768px ){
	article > header {
		min-width: auto;
		margin-bottom: 20vw;
	}
}
/*------------------------------------ media */
@media screen and ( max-width: 414px ){
	article > header {
	}
}

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

   lead

--------------------------------------------------------------*/
article > .lead {
	width: 100%;
	max-width: 1054px;
	min-width: 1054px;
	margin: 0 auto;
	margin-bottom: -80px;
	font-size: 14px;
	font-weight: bold;
	color: #066A5E;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
/*------------------------------------ media */
@media screen and ( max-width: 768px ){
	article > .lead {
		padding: 0 20px;
		margin-bottom: 0;
		min-width: auto;
	}
}
/*------------------------------------ media */
@media screen and ( max-width: 414px ){
	article > .lead {
		margin-bottom: -50px;
	}
}


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

   linkBtnBlock

--------------------------------------------------------------*/
.linkBtnBlock {
	max-width: 1054px;
	margin: 100px auto;
}
.linkBtnBlock_internship ul {
	position: relative;
	overflow: hidden;
	display: flex;
	height: 115px;
	padding-left: 3px;
	padding-right: 3px;
	padding: 10px
}
.linkBtnBlock_internship li {
	-webkit-flex-basis: 100%;
	flex-basis: 100%;
	height: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 3px;
}
.linkBtnBlock_internship li a {
	background: #066A5E;
	display: block;
	text-align: center;
	line-height: 0.6;
	font-size: 30px;
	font-weight: normal;
	color: #FFF;
	padding: 34px;
	height: 100%;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.linkBtnBlock_internship li a.mypage {
	background: #41B281;
}
.linkBtnBlock a {
	background: #066a5e;
	display: block;
	text-align: center;
	line-height: 1;
	font-size: 40px;
	font-weight: normal;
	color: #FFF;
	padding: 1em;
}
.linkBtnBlock a:hover {
	background: #33D08C;
}

/*------------------------------------ media */
@media screen and ( max-width: 768px ){
	.linkBtnBlock_internship {
		min-width: auto;
	}
	.linkBtnBlock_internship li a {
		font-size: 2.2vw;
	}
	.linkBtnBlock_internship li a:not(.active)::after {
		display: none;
	}
}
/*------------------------------------ media */
@media screen and (max-width: 414px){
	.linkBtnBlock_internship {
		margin-bottom: 0;
	}
	.linkBtnBlock_internship ul {
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		height: auto;
		padding: 0;
	}
	.linkBtnBlock_internship li {
		/*height: 48px;*/
	}
	.linkBtnBlock_internship li a {
		font-size: 6vw;
		line-height: 0.8;
		padding: 20px 10px;
	}
}
/*------------------------------------------------------------

   linkBtnBlock_internship

--------------------------------------------------------------*/
.linkBtnBlock_internship {
	max-width: 1054px;
	margin: 100px auto;
}
.linkBtnBlock_internship a {
	background: #066A5E;
	display: block;
	text-align: center;
	line-height: 1;
	font-size: 40px;
	font-weight: normal;
	color: #FFF;
	padding: 1em;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.linkBtnBlock_internship a:hover {
	background: #000;
}
.linkBtnBlock_internship a.mypage:hover {
	background: #000;
}
/*------------------------------------ media */
@media screen and ( max-width: 414px ){
	.linkBtnBlock a {
		font-size: 6vw;
	}
	.linkBtnBlock_internship a {
		font-size: 6vw;
	}
	.linkBtnBlock_internship {
		margin: 50px auto;
	}
}
.linkBtnBlock a::before {
	font-family: 'Linearicons';
	content:'\e93b';
	font-size: 0.6em;
	vertical-align: 0.15em;
	margin-right: 0.6em;
}
.linkBtnBlock.next a::before {
	display: none;
}
.linkBtnBlock.next a::after {
	font-family: 'Linearicons';
	content:'\e93c';
	font-size: 0.6em;
	vertical-align: 0.15em;
	margin-left: 0.6em;
}

/* textLink
--------------------------------------------------------------*/
.textLink {
	font-weight: bold;
	color: #066a5e;
}
.textLink:hover {
	color: #33D08C;
}
.textLink::after {
	font-family: 'Linearicons';
	content:'\e93c';
	font-size: 0.6em;
	vertical-align: 0.15em;
	margin-left: 0.6em;
}
/*------------------------------------------------------------

   loading

--------------------------------------------------------------*/
#loading {
	top:0;
	left:50%;
	position: absolute;
	z-index: 1000;
}



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

   commonTable

--------------------------------------------------------------*/
.commonTable {
	border-top: #ddd;
	letter-spacing: 0.1em;
}
.commonTable tr {
	border: 1px solid #ddd;
}
.commonTable th,
.commonTable td {
	padding: 2em 2em;
    border: solid 1px #ddd;
}
.commonTable th {
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
	padding: 2em 2em;
	color: #066a5e;
}
.commonTable td a.link {
	color: #617CC2;
	font-weight: bold;
	font-size: 1em;
}

.commonTable.summary thead,
.commonTable.summary thead tr th {
	background-color: #066a5e;
	color: #fff;
	text-align: center;
}
.commonTable.summary thead th:first-child {
	width: 25%;
}
.commonTable.summary thead th:nth-child(2) {
	width: 38%;
}
.commonTable.summary thead th:last-child {
	width: 37%;
}
.commonTable.summary tbody th:first-child {
	width: 25%;
	white-space: break-spaces;
	text-align: left;
	background-color: #5b9891;
	color: #fff;
}
.commonTable.summary tbody td:last-child {
	width: 37%;
}
.commonTable.summary tbody td.intern_sp {
	color: #066a5e;
}
.commonTable.summary tbody td span.intern_sp_only {
	display: none;
}

/*------------------------------------ media */
@media screen and ( max-width: 414px ){
	.commonTable:not(.scheduleTable2) {
		line-height: 1.6;
	}
	/* .commonTable:not(.scrollTable) th,
	.commonTable:not(.scrollTable) td {
		display: block;
	} */
	.commonTable:not(.scheduleTable2):not(.no-responsive) th,
	.commonTable:not(.scheduleTable2):not(.no-responsive) td {
		display: block;
	}
	.commonTable:not(.scheduleTable2) th {
		text-align: center;
		padding: 1em 1em;
	}
	.commonTable:not(.scrollTable):not(.scheduleTable2) th {
		font-size: 1.2em;
	}
	.commonTable:not(.scheduleTable2) td {
		padding: 1em;
	}
	.commonTable:not(.scheduleTable2).summary thead {
		display: none;
	}
	.commonTable:not(.scheduleTable2).summary tbody th:first-child {
		width: auto;
		text-align: center;
		padding: 1em;
	}
	.commonTable:not(.scheduleTable2).summary tbody td:last-child {
		width: auto;
	}
	.commonTable:not(.scheduleTable2).summary tbody td.intern_sp {
		color: #066a5e;
		background-color: #eee;
	}
	.commonTable:not(.scheduleTable2).summary tbody td.intern_bold {
		font-weight: bold;
	}
	.commonTable:not(.scheduleTable2).summary tbody td span.intern_sp_only {
		display: block;
		color: #066a5e;
		margin-bottom: 10px;
	}
}
/*------------------------------------ media */
@media screen and ( max-width: 320px ){
	.commonTable:not(.scheduleTable2) td {
		padding: 0 0 1.3em 0em;
	}
}

/* ul
--------------------------------------------------------------*/
.commonTable ul {
	margin-bottom: 0.6em;
}
.commonTable ul li {
	text-indent: -1.1em;
	padding-left: 1.1em;
	margin: 0.6em 0;
}


/* ol
--------------------------------------------------------------*/
.commonTable ol li {
	text-indent: -2.1em;
	padding-left: 2em;
	margin: 0.6em 0;
}

/* dl
--------------------------------------------------------------*/
.commonTable dl {
	margin-bottom: 0.6em;
}
.commonTable dl dt {
	margin: 0.6em 0 0;
	font-weight: bold;
}
.commonTable dl dd {
	padding-left: 2.2em;
	font-size: 0.9em;
	color: #000;
}
.commonTable .sub {
	font-size: 0.8em;
}


/* annotation
--------------------------------------------------------------*/
.commonTable .annotation {
	font-size: 12px;
	/*color: #f00;*/
	/*display: inline-block;*/
	text-indent: -1.1em;
	padding-left: 1.1em;
	line-height: 1.8;
	margin-top: 0.3em;
}
.commonTable .detail {
	font-size: 12px;
	/*color: #f00;*/
	/*display: inline-block;*/
	padding-left: 1.1em;
	line-height: 1.8;
	margin-top: 0.3em;
}
.scheduleTable .annotation {
	color: #f00;
}
.commonTable p.annotation {
	display: block;
}
.commonTable br+.annotation {
	vertical-align: 4px;
}
.commonTable .annotation li {
	text-indent: -1.1em;
	padding-left: 1.1em;
	margin: 0.2em 0;
}
section > .annotation {
	font-size: 80%;
	color: #666;
	text-indent: -1.1em;
	padding-left: 1.1em;
}

.scheduleTable .detail {
	color: #000;
}
.commonTable p.detail {
	display: block;
}
.commonTable {
	th {
		.notes {
			font-weight: normal;
		}
	}
}

.commonTable {
	.holdingMethod {
		display: grid;
		grid-auto-columns: max-content;
		grid-auto-flow: column;
		gap : 1.5em;
		align-items: center;

		margin-bottom: 0;

		._item {
			display: grid;
			grid-auto-flow: column;
			gap: 0.5em;
			align-items: center;
		}

		@media screen and ( max-width: 768px ){
			grid-auto-flow: row;
			grid-auto-columns: min-content;

			._item {
				/* grid-auto-flow: row; */
				grid-template-columns: subgrid;
				grid-column: span 2;
			}
		}

		.no-wrap {
			white-space: nowrap;
		}

		dt {
			margin-top: 0;
			background: #666;
			color: #fff;
			padding: 0.5em 1em;
			font-weight: normal;
			font-size: 0.8em;
			line-height: 1.4;

		}
		dd {
			padding-left: 0;
			width: max-content;
		}
	}
}

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

   gotoPageTop

--------------------------------------------------------------*/
.gotoPageTop {
	width: 230px;
	height: 100px;
	background: #111918;
	position: fixed;
	bottom: 0;
	z-index: 100;
	cursor: pointer;
	display: none;
	left:50%;
	margin-left: -115px;
	padding: 0 20px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	color: #fff;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	opacity: 0.5;
	border-bottom: 4px solid #066a5e;
}
.gotoPageTop,
.gotoPageTop:before {
	-webkit-transition: 0.2s ease-out;
	   -moz-transition: 0.2s ease-out;
	    -ms-transition: 0.2s ease-out;
	     -o-transition: 0.2s ease-out;
	        transition: 0.2s ease-out;
}
.gotoPageTop:hover {
	background: #066A5E;
	opacity: 1;
}
.gotoPageTop:before {
	content:'\e939';
	font-family: 'Linearicons';
	display: block;
	text-align: center;
	font-size: 30px;
	margin-top: 20px;
	margin-bottom: 8px;
}
.gotoPageTop:hover:before {
	margin-top: 14px;
	margin-bottom: 18px;
}
/*------------------------------------ media */
@media screen and ( max-width: 768px ){
	.gotoPageTop {
		font-size: 16px;
	}
}
/*------------------------------------ media */
@media screen and ( max-width: 414px ){
	.gotoPageTop {
		font-size: 3vw;
		height: 70px;
	}
	.gotoPageTop:before {
		font-size: 24px;
		margin-top: 10px;
		margin-bottom: 4px;
	}
	.gotoPageTop:hover:before {
		margin-top: 6px;
		margin-bottom: 12px;
	}
}
p.chuou {
	text-align: center;
	margin-bottom: 20px;
}
p.chuouleft {
	padding-left: 200px;
	padding-right: 180px;
}
p.chuouleft.lead {
	width: 700px;
	margin: 0 auto;
}
p.chuouleftB {
	padding-left: 230px;
	padding-right: 200px;
	margin-top: 10px;
	margin-bottom: 30px;
}
p.chuouleft.head {
	margin-top: 1em;
}

p.chuouleft span {
	font-weight: bold;
	color: #066a5e;
	margin-bottom: 5px;
	font-size: 1.5rem;
	font-style: italic;
}

/*------------------------------------ media */
@media screen and ( max-width: 736px ){
	p.chuouleft {
		padding-left: 0;
		padding-right: 0;
	}
	p.chuouleft.lead {
		width: 90%;
	}
	p.chuouleftB {
		padding-left: 1em;
		padding-right: 1em;
	}
}





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

   globalHeader
--------------------------------------------------------------*/
#globalHeader {
	position: fixed;
	z-index: 1000;
	width: 100%;
	height: 76px;
	transition: 0.2s ease-out;
	top: 0;
	left: 0;
}
#globalHeader.hide {
	transform: translatey(-100%);
}
#globalHeader.onBG {
	background: rgba(255, 255, 255, 0.9);
}
#globalHeader .siteTitle {
	display: inline-flex;
	margin-top: 20px;
	margin-left: 20px;
	color: #111918;
	font-weight: normal;
}
#globalHeader .logo {
	width: 242px;
}
#globalHeader .siteTitle h1 {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 15px;
	font-weight: 400;
	margin: 6px 0 0 20px;
	color: rgba(17, 25, 24, 0.5);
}

@media screen and ( max-width: 1168px ){
	#globalHeader .siteTitle {
		display: inline-block;
		margin-top: 10px;
		margin-left: 10px;
	}
	#globalHeader .siteTitle h1 {
		margin: 0;
	}
}
@media screen and ( max-width: 900px ){
	#globalHeader .logo {
		width: 30vw;
	}
	#globalHeader .siteTitle {
		margin-top: 1.5vw;
		margin-left: 1.5vw;
	}
	#globalHeader .siteTitle h1 {
		font-size: 1.8vw;
	}
}
@media screen and ( max-width: 768px ){
	#globalHeader {
		background: #FFF;
		height: auto;
	}
	#globalHeader .siteTitle {
		position: absolute;
		margin-top: 2.2vw;
		margin-left: 3vw;
	}
	#globalHeader .logo {
		width: 60vw;
	}
	#globalHeader .siteTitle h1 {
		font-size: 2.8vw;
	}
}
/* entryLink-2
--------------------------------------------------------------*/

#globalHeader .entryLink-2 {
	position: absolute;
	z-index: 1;
	top: 100%;
	width: 100%;

	.entryLink-btn {
		position: absolute;
		display: block;
		bottom: 100%;
		right: 76px;
		display: flex;

		@media screen and ( max-width: 768px ){
			position: relative;
			right: 0;;
			width: 100%;
		}

		li {
			width: min(280px, 28vw);
			flex-basis: min(280px, 28vw);
			@media screen and ( max-width: 768px ){
				width: 100%;
				flex-basis: 100%;
			}
		}

		a,
		button {
			cursor: pointer;
			display: flex;
			justify-content: center;
			align-items: center;
			background: var(--c-primary);
			border: none;

			height: 76px;
			@media screen and ( max-width: 768px ){
				height: 18vw;
			}


			font-family: var(--ff-en);
			color: #fff;
			font-size: 20px;
			@media screen and ( max-width: 768px ){
				font-size: 5vw;
			}
			line-height: 0.9;
			letter-spacing: 0.05em;
			/* position: absolute; */

			.slash {
				opacity: 0.2;
				font-weight: normal;
				font-size: 1.6em; /* Uncommented the font-weight property */
				vertical-align: -0.15em;
				font-family: var(--ff-min);
				margin-inline: 0.2em
			}


			transition: 0.2s ease-out;


			&.internship {
				background: #000;
			}
			&.hover {
				background: var(--c-secondary);
			}

			&::after {
				display: none;
			}

		}
	}


	.toggleMenu {
		background: rgba(0,0,0, 0.8);


		padding: 80px 0;
		@media screen and ( max-width: 768px ){
			padding: 5vw 5vw;
		}

		.menuContainer {
			margin-bottom: min(80px, 5vw);
			&:last-child {
				margin-bottom: 0;
			}


			> h2 {
				color: #fff;
				text-align: center;
				margin-bottom: 0.5em;
				font-size: min(18px, 3vw);

				@media screen and ( max-width: 768px ){
					margin-bottom: 0.2em;
				}
			}
		}


		.linkContainer {
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
			gap: 20px;
			/* padding: 20px 0; */

			@media screen and ( max-width: 768px ){
				flex-direction: column;
				flex-wrap: nowrap;
				gap: 1vw;
			}
		}

		&.is-first {
			visibility: hidden;
			height: 0;
			overflow: hidden;
		}







		.item  {
			padding: 20px 20px 20px;
			background: #000;
			flex-basis: min(460px, 50%);
			@media screen and ( max-width: 768px ){
				flex-basis: none;
			}
		}

		h3 {
			color: rgba(255,255,255, 0.5);
			margin-top: -0.5em;
			margin-bottom: 1em;
			@media screen and ( max-width: 768px ){
				margin-top: -1em;
				margin-bottom: 0.5em;
			}

			font-size: 14px;
			line-height: 1;
			text-align: center;
			letter-spacing: 0.2em;

			@media screen and ( max-width: 768px ){
				font-size: 3vw;
			}

			.year {
				color: var(--c-secondary);
				font-size: 1.5em;
				font-family: var(--ff-en);
				font-weight: normal;
			}
		}
	}

	.enntryLink-list {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));


		._btn {
			display: flex;
			background: var(--c-primary);
			justify-content: center;
			align-items: center;

			color: #fff;
			font-family: var(--ff-en);
			font-size: 20px;
			@media screen and ( max-width: 768px ){
				font-size: 4vw;
			}
			line-height: 1;
			padding: 1.5em 0;

			--clipRange : 33px;
			--mrgn-range : -14px;

			&.entry {
				clip-path: polygon(0 0, 100% 0, calc(100% - var(--clipRange)) 100%, 0 100%);
				margin-right: var(--mrgn-range);
				padding-right: 1em;
			}
			&.mypage {
				clip-path: polygon(var(--clipRange) 0, 100% 0, 100% 100%, 0 100%);
				margin-left: var(--mrgn-range);
				padding-left: 1em;
			}

			&:hover {
				background: var(--c-secondary);
			}


			&::after {
				display: none;
			}
		}
	}
}

#globalHeader .menuBtn.none + .entryLink-2 {
	.entryLink-btn {
		right: 0;
	}
}

/* entryLink
--------------------------------------------------------------*/
#globalHeader .entryLink {
	position: absolute;
	z-index: 1;
	top: 0;
	right: 76px;
}
#globalHeader .entryLink.internship_navi {
	right: 0px;
}
#globalHeader .entryLink ul {
	display: flex;
}
#globalHeader .entryLink li a {
	height: 76px;
	width: 180px;
	display: flex;
	-webkit-justify-content: center;
	        justify-content: center;
	-webkit-align-items: center;
	        align-items: center;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 20px;
	line-height: 0.9;
	position: relative;
}
#globalHeader .entryLink li a > span {
	text-align: center;
}
#globalHeader .entryLink li a > span > .sub {
	display: block;
	font-size: 0.7em;
	opacity: 0.5;
	margin-bottom: 0.4em;
}
#globalHeader .entryLink li a > span > .end {
	display: block;
	font-size: 0.7em;
	opacity: 0.5;
	margin-top: 0.5em;
}
#globalHeader .entryLink li a::after {
	display: none;
}
#globalHeader .entryLink li a.internship {
	background: #111918;
	color: #fff;
	margin-right: 15px;
	font-size: 16px;
	line-height: 1.2;
}
#globalHeader .entryLink li a.entry {
	background: #066A5E;
	color: #fff;
}
#globalHeader .entryLink li a.entry.none {
	pointer-events: none;
}
#globalHeader .entryLink li a.mypage {
	background: #41B281;
	color: #111918;
}
#globalHeader .entryLink li a.mypage.none {
	pointer-events: none;
}
@media screen and ( min-width: 769px ){
	/*  hover  */
	#globalHeader .entryLink li a.internship:hover,
	#globalHeader .entryLink li a.entry:hover,
	#globalHeader .entryLink li a.mypage:hover {
		background: #000;
		color: #fff;
	}
}

@media screen and ( max-width: 900px ){
	#globalHeader .entryLink li a {
		width: 19vw;
	}
}
@media screen and ( max-width: 768px ){
	#globalHeader .entryLink {
		position: relative;
		right: auto;
	}
	#globalHeader .entryLink ul {
		width: 100%;
	}
	#globalHeader .entryLink ul li {
		-webkit-flex-basis: 100%;
		        flex-basis: 100%;
	}
	#globalHeader .entryLink li a {
		width: 100%;
		height: 18vw;
		font-size: 3.5vw;
	}
}

/* menuBtn
--------------------------------------------------------------*/
#globalHeader .menuBtn {
	position: absolute;
	z-index: 1000;
	top: 0;
	right: 0;
	background: #fff;
	display: block;
	cursor: pointer;
	transition: 0.2s ease-out;
}
#globalHeader .menuBtn {
	width: 76px;
	height: 76px;
}
@media screen and ( min-width: 769px ){
	#globalHeader .menuBtn.none {
		display: none;
	}
}
@media screen and ( max-width: 768px ){
	#globalHeader .menuBtn {
		position: relative;
		width: 17.0vw;
		height: 17.0vw;
		margin-left: auto;
	}
}
#globalHeader .menuBtn span {
	position: absolute;
	text-indent: -1000em;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#globalHeader .menuBtn span,
#globalHeader .menuBtn span::before,
#globalHeader .menuBtn span::after {
	display: block;
	width: 28px;
	height: 1px;
	background: #111918;
	-webkit-transform-origin: center;
	   -moz-transform-origin: center;
	    -ms-transform-origin: center;
	     -o-transform-origin: center;
	        transform-origin: center;
	transition: 0.2s ease-out;
}
#globalHeader .menuBtn span::before,
#globalHeader .menuBtn span::after {
	position: absolute;
	content: "";
	left: 50%;
	transform: translatex(-50%);
}
#globalHeader .menuBtn span::before {
	top: -10px;
}
#globalHeader .menuBtn span::after {
	bottom: -10px;
}
@media screen and ( max-width: 768px ){
	#globalHeader .menuBtn span,
	#globalHeader .menuBtn span::before,
	#globalHeader .menuBtn span::after {
		width: 6vw;
	}
	#globalHeader .menuBtn span::before {
		top: -2.2vw;
	}
	#globalHeader .menuBtn span::after {
		bottom: -2.2vw;
	}
}


@media screen and ( min-width: 769px ){
	/*  hover  */
	#globalHeader .menuBtn:hover {
		background: #000;
	}
	#globalHeader .menuBtn:hover span,
	#globalHeader .menuBtn:hover span::before,
	#globalHeader .menuBtn:hover span::after {
		background: #FFF;
	}
	#globalHeader .menuBtn:hover span::before {
		top: -6px;
	}
	#globalHeader .menuBtn:hover span::after {
		bottom: -6px;
	}
}
/* close
--------------------------------------------------------------*/
#globalHeader .menuBtn.close span {
	width: 0%;
}
#globalHeader .menuBtn.close span::before {
	top: 0;
	transform: translatex(-50%) rotate(45deg) scalex(1.4);
}
#globalHeader .menuBtn.close span::after {
	bottom: 0;
	transform: translatex(-50%) rotate(-45deg) scalex(1.4);
}

/* globalNav
--------------------------------------------------------------*/
#globalNav {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	min-height: 690px;
	background: rgba(17, 25, 24, .95);
	display: flex;
	-webkit-justify-content: center;
	        justify-content: center;
	-webkit-align-items: center;
	        align-items: center;

	/*  close  */
	transition: 0.3s ease-out;
	z-index: -1;
	opacity: 0;
	-ms-filter: blur(6px);
	filter: blur(6px);
	transform:scale(1.1);
	visibility: hidden;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/*  open  */
#globalNav.open {
	z-index: 100;
	-ms-filter: blur(0);
	filter: blur(0);
	opacity: 1;
	transform:scale(1);
	visibility:visible;
}


#globalNav .inner {
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}
#globalNav .item {
	margin: 2em 4em;
}
#globalNav .title {
	margin-bottom: 1.8em;
}
#globalNav .title .en {
	color: #41B281;
	color: #066A5E;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1;
}
#globalNav .title .jp {
	color: #066A5E;
	color: #41B281;
	font-size: 18px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: normal;
}
#globalNav ul {
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: normal;
	font-size: 13px;
	line-height: 1.6;
}
#globalNav ul a {
	color: #FFF;
}
#globalNav ul a:hover {
	color: #33D08C;
}
#globalNav ul li {
	margin-bottom: 0.8em;
}
#globalNav ul li .sub {
	font-size: 0.9em;
	opacity: 0.5;
}

@media screen and ( max-width: 768px ){
	#globalNav {
		display: block;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		padding: 17vw 8vw 20vw;
	}
	#globalNav .inner {
		display: block;
		padding: 0;
	}
	#globalNav .item {
		margin: 0;
	}
	#globalNav .title {
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		margin-bottom: 0;
		padding-top: 1em;
		padding-bottom: 0.5em;
		cursor: pointer;
	}
	#globalNav ul {
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		padding-top: 1.2em;
		padding-bottom: 1.2em;
		display: none;
	}
	#globalNav ul.recruit {
		margin-bottom: 50px;
	}
	#globalNav ul li:last-child {
		margin-bottom: 0;
	}
}


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

   globalFooter

--------------------------------------------------------------*/
#globalFooter {
	padding: 108px 60px 108px;
}
#globalFooter .siteTitle,
#globalFooter .copyright {
	font-family: 'Roboto Condensed', sans-serif;
	text-align: center;
	color: #111918;
	line-height: 1.4;
}
#globalFooter .siteTitle {
	font-size: 15px;
}
#globalFooter .copyright {
	font-size: 11px;
}
@media screen and ( max-width: 768px ){
	#globalFooter {
		padding: 20vw 5vw 20vw;
	}
	#globalFooter .siteTitle {
		font-size: 13px;
	}
	#globalFooter .copyright {
		font-size: 10px;
	}
}
p.interviews_text {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ 明朝", "ＭＳ Ｐ明朝", serif;
}

@media screen and ( max-width: 768px ){
	#keyword .content ul li .detail img.pc-only {
		display: none;
	}
}
@media screen and ( min-width: 768px ){
	#keyword .content ul li .detail img.sp-only {
		display: none;
	}
}


.t-annotation {
	font-size: 11px;
	margin: 1em 0;
	opacity: 0.5;

	&.by-indent {
		text-indent: -1.1em;
		padding-left: 1.1em;
	}
}

.linkBtn {
	display: block;
	background: #066a5e;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	padding: 1em 2em;
	text-align: center;
	text-decoration: none;
	transition: 0.2s ease-out;
	width: fit-content;
	@media screen and ( max-width: 768px ){
		width: auto;
	}


	&.algn-right {
		margin-left: auto;
	}

}

.btnWrap:has(.linkBtn) {
	max-width: 1074px;
	max-width: 1106px;
	margin-left: auto;
	margin-right: auto;
}

.block-center {
	width: fit-content;
	margin-inline: auto;
}