@charset "utf-8";

/*
	/corporation/internship/css/style.css
	-----------------------------------
	v1.0
	Last Updated: 2025-06-25
	Copyright: CBC TELEVISION CO.,LTD. All rights Reserved.
	-----------------------------------
	[Updated]
	v1.0		2025-06-25
	-----------------------------------

リセットCSS
基本設定
bg-wrap
ヘッダー
フッター
メイン
コンテンツ
├topics-box
├trip-box
├list-box
├

youtube設定
locipo設定
googlemap
マージンの設定
カラー設定
注釈リスト
動き data-delighter


*/

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

		リセットCSS

*********************************************************** */
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
*,::before,::after{box-sizing:border-box;border-style:solid;border-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0}main{display:block}p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}ul,ol{margin:0;padding:0;list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-box;height:0;overflow:visible;border-top-width:1px;margin:0;clear:both;color:inherit}pre{font-family:monospace,monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}svg,img,embed,object,iframe{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:transparent;padding:0;margin:0;border-radius:0;text-align:inherit;text-transform:inherit}button,[type="button"],[type="reset"],[type="submit"]{cursor:pointer}button:disabled,[type="button"]:disabled,[type="reset"]:disabled,[type="submit"]:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}option{padding:0}fieldset{margin:0;padding:0;min-width:0}legend{padding:0}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type="number"]{-moz-appearance:textfield}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-color:inherit;border-collapse:collapse}caption{text-align:left}td,th{vertical-align:top;padding:0}th{text-align:left;font-weight:700}


/*Gナビの虫眼鏡のレイアウト崩れ対応用*/
svg{vertical-align:baseline}

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

		基本設定

*********************************************************** */
html {
	/*font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;*/
	/*-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;*/
	font-size: 62.5%;
}
body {
	/*font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;*/
	/*font-family: 'Noto Sans JP', sans-serif;
	/*-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;*/
}
@media only screen and (max-width: 640px) {
}
@media print, screen and (min-width: 641px) {
	body {
		min-width: 1280px;
	}
}

.header,
.main,
.footer {
	/*font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;*/
	font-family: iroha-25icho-stdn, sans-serif;
	font-weight: 400;
	font-style: normal;
}


.noto-sans-jp-500 {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}
.futura-pt-500 {
font-family: futura-pt, sans-serif;
font-weight: 500;
font-style: normal;
}

.futura-pt-700 {
font-family: futura-pt, sans-serif;
font-weight: 700;
font-style: normal;
}

.iroha-25icho-stdn {
font-family: iroha-25icho-stdn, sans-serif;
font-weight: 400;
font-style: normal;
}






/*フォントの滲みの修正＠EdgeとFirefox*/
/*
.internship p,
.internship figcaption,
.internship li {
	transform: rotate(0.05deg);
}
.internship .pageup {
	transform: none;
}
*/



/*デフォルトリンクカラー*/
a, a:link {
	color: #0000DE;
}
a:visited {
	color: #941D55;
}
a:active,
a:hover {
	color: #CC0000;
}
a:focus {
	color: #CC0000;
}

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

/* FireFox リンク選択時の点線を消す */
a:link,
a:visited,
a:active,
a:hover {
	overflow: hidden;
	outline: none;
}


/*画像の横幅*/
img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	/*image-rendering: -webkit-optimize-contrast;*/
}
.img-max {
	width: 100%;
	height: auto;
	vertical-align: middle;
	/*image-rendering: -webkit-optimize-contrast;*/

}
@media only screen and (max-width: 640px) {
	.img-max-sp {
		width: 100%;
		height: auto;
		vertical-align: middle;
		/*image-rendering: -webkit-optimize-contrast;*/
	}
}

@media print, screen and (min-width: 641px) {
	.img-max-pc {
		width: 100%;
		height: auto;
		vertical-align: middle;
		/*image-rendering: -webkit-optimize-contrast;*/
	}
}

figure {
	padding: 0;
	margin: 0;
}

sup {
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
	position: relative;
	top: -0.5em
}


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

	非表示設定

----------------------------------------------------- */
@media only screen and (max-width: 640px) {
	.hide-sp {
		display: none !important;
	}
	#global-nav:nth-of-type(1) {
		display: none;
	}
}

@media print, screen and (min-width: 641px) {
	.hide-pc {
		display: none !important;
	}
}
.hide-text {
	font-size: 0;
	line-height: 0;
	text-indent: -9999px;
	list-style-type: none;
	height: 0;
	overflow: hidden;
}





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

	CBC用ヘッダーの非表示
*********************************************************** */

.hicbc-global-nav {
	display: none;
}




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

	bg-wrap

*********************************************************** */
.internship .bg-wrap {
}
@media only screen and (max-width: 640px) {
	.internship .bg-wrap {
	}
}
@media print, screen and (min-width: 641px) {
	.internship .bg-wrap {
	}
}




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

	ヘッダー

*********************************************************** */
@media only screen and (max-width: 640px) {
	.internship .header {
		background: #04CCFD;
		width: 100%;
		height: 50px;
		overflow: hidden;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
	}
	.internship .header-top {
		width: 100%;
		height: 50px;
		position: relative;
	}
	.internship .header-menu-logo {
		width: 70px;
		position: absolute;
		top: 17px;
		right: 61px;
		opacity: 1;
		visibility: visible;
		transition: opacity 0.4s ease, visibility 0.4s ease;
	}
}
@media print, screen and (min-width: 641px) {
	.internship .header {
		background: #04CCFD;
		width: 100%;
		height: 100px;
		overflow: hidden;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
	}
	.internship .header-top {
		width: 100%;
		min-width: 1280px;
		height: 100px;
		margin: auto;
		position: relative;

	}
	.internship .header-menu-logo {
		width: 148px;
		height: 38px;
		position: absolute;
		top: 35px;
		right: 116px;
		opacity: 1;
		visibility: visible;
		transition: opacity 0.4s ease, visibility 0.4s ease;
	}
}
.internship .header-menu-logo.active {
	opacity: 0;
	visibility: hidden;
}














/*三本線ボタン*/
@media only screen and (max-width: 640px) {
	.internship .header-menu-btn {
		width: 29px;
		height: 24px;
		margin: 0;
		position: absolute;
		top: 13px;
		right: 13px;
		overflow: hidden;
	}
	.internship .menu-trigger,
	.internship .menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.internship .menu-trigger {
		position: relative;
		width: 29px;
		height: 24px;
		cursor: pointer;
	}
	.internship .menu-trigger span {
		position: absolute;
		left: 0;
		width: 29px;
		height: 4px;
		background: #fff;
	}
	.internship .menu-trigger span:nth-of-type(1) {
		top: 0;
	}
	.internship .menu-trigger span:nth-of-type(2) {
		top: 10px;
	}
	.internship .menu-trigger span:nth-of-type(3) {
		top: 20px;
	}
	.internship .menu-trigger.active span:nth-of-type(1) {
		transform: translateY(10px) rotate(-45deg);
	}
	.internship .menu-trigger.active span:nth-of-type(2) {
		opacity: 0;
	}
	.internship .menu-trigger.active span:nth-of-type(3) {
		transform: translateY(-10px) rotate(45deg);
	}
}
@media print, screen and (min-width: 641px) {
	.internship .header-menu-btn {
		width: 59px;
		height: 49px;
		margin: 0;
		position: absolute;
		top: 26px;
		right: 26px;
		overflow: hidden;
	}
	.internship .menu-trigger,
	.internship .menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.internship .menu-trigger {
		position: relative;
		width: 59px;
		height: 49px;
		cursor: pointer;
	}
	.internship .menu-trigger span {
		position: absolute;
		left: 0;
		width: 59px;
		height: 7px;
		background: #fff;
	}
	.internship .menu-trigger span:nth-of-type(1) {
		top: 0;
	}
	.internship .menu-trigger span:nth-of-type(2) {
		top: 21px;
	}
	.internship .menu-trigger span:nth-of-type(3) {
		top: 42px;
	}
	.internship .menu-trigger.active span:nth-of-type(1) {
		transform: translateY(21px) rotate(-45deg);
	}
	.internship .menu-trigger.active span:nth-of-type(2) {
		opacity: 0;
	}
	.internship .menu-trigger.active span:nth-of-type(3) {
		transform: translateY(-21px) rotate(45deg);
	}
}



/*メニュー*/
@media only screen and (max-width: 640px) {
	.internship .header-nav {
		background: #04CCFD;
		width: 100vw;
		height: calc(100vh - 50px);
		position: fixed;
		top: 50px;
		right: -100vw;
		transition: all .4s;
	}
	.internship .header-nav.active {
		right: 0;
	}
	.internship .header-nav ul {
		padding: 60px 0 0;
	}
	.internship .header-nav ul li {
		font-size: calc(26 / 640 * 100vw );
		line-height: 1.5;
		width: calc(496 / 640 * 100vw );
		margin: 0 auto calc(66 / 640 * 100vw );
		border-bottom:  2px solid #fff;
	}
	.internship .header-nav ul li a {
		color: #282828;
	}
	.internship .header-nav ul li span {
		font-family: futura-pt, sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size: calc(42.62 / 640 * 100vw );
		line-height: 1.5;
	}
}
@media print, screen and (min-width: 641px) {
	.internship .header-nav {
		background: #04CCFD;
		width: 640px;
		height: 663px;
		position: fixed;
		top: 100px;
		right: -640px;
		transition: all .4s;
	}
	.internship .header-nav.active {
		right: 0;
	}

	.internship .header-nav ul li {
		font-size: 2.6rem;
		line-height: 1.5;
		width: 496px;
		margin: 0 auto 70px;
		border-bottom:  3px solid #fff;
	}
	.internship .header-nav ul li a {
		color: #282828;
	}
	.internship .header-nav ul li span {
		font-family: futura-pt, sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size: 4.262rem;
		line-height: 1.5;
	}
}


/*
.internship .header h1 {
	font-size: 0;
	line-height: 0;
	text-indent: -9999px;
	list-style-type: none;
	height: 0;
	overflow: hidden;
}
*/


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

	フッター

*********************************************************** */
/*フッター枠*/
.internship .footer {
}

@media only screen and (max-width: 640px) {
	.internship .footer {
	}
	.footer-top {
		background: url(../images/footer-top.png) no-repeat 12px 0;
		background-size: 187px;
		height: 108px;/*110px;*/
	}
	.footer-bottom {
		background: #04CCFD;
		width: 100%;
		height: 52px;
	}
}
@media print, screen and (min-width: 641px) {
	.internship .footer {
		min-width: 1280px;
	}
	.footer-top {
		background: url(../images/footer-top.png) no-repeat 50px 0;
		height: 219px;
	}
	.footer-bottom {
		background: #04CCFD;
		width: 100%;
		height: 118px;
	}
}


/*ページアップ*/

.internship .pageup {
	margin: 0;
}
.internship .pageup a {
	display: block;
	background: url('../images/pageup.png') no-repeat 0 0 ;
	-moz-background-size:100% auto;
	background-size:100% auto;
	font-size: 0px;
	line-height: 0px;
	text-indent: -9999px;
	text-decoration: none;
	position: fixed;
}
@media only screen and (max-width: 640px) {
	.internship .pageup a {
		width: calc(62 / 640 * 100vw);
		height: calc(62 / 640 * 100vw);
		right: 12px;
		bottom: 10px;
	}
}
@media print, screen and (min-width: 641px) {
	.internship .pageup a {
		width: 63px;
		height: 63px;
		right: 20px;
		bottom: 30px;
		transition: 0.3s ease-in-out;
	}
	.internship .pageup a:hover {
		opacity: 0.7;
	}
}


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

	メイン

*********************************************************** */
.internship .main {

}
@media only screen and (max-width: 640px) {
	.internship .main {
	}
}
@media print, screen and (min-width: 641px) {
	.internship .main {
	}
}









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

	コンテンツ

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


.internship .content {
}
/*content*/
@media only screen and (max-width: 640px) {
	.internship .content {
		max-width: 100vw;
		overflow: hidden;
	}
}
@media print, screen and (min-width: 641px) {
	.internship .content {
	}
}





/*box01*/
@media only screen and (max-width: 640px) {
	.internship .box01 {
		background:
			url('../images/bg_sp.png') no-repeat center calc(653 / 640 * 100vw),
			linear-gradient(
				180deg,
				rgba(4, 204, 253, 1) 0%,
				rgba(4, 204, 253, 1) 50%,
				rgba(255, 117, 204, 1) 50%,
				rgba(255, 117, 204, 1) 100%
			);
		background-size: 100%, auto;
		width: 100%;
		height: calc(2011 / 640 * 100vw);
		margin: 0 0 0;
		position: relative;
	}


	.internship .box01 .dissolve-box {
		width: calc(567 / 640 * 100vw);
		height:  calc(514 / 640 * 100vw);
		overflow: hidden;
		position: absolute;
		top: calc(95 / 640 * 100vw);
		right: 0;
	}
	.internship .box01 .dissolve-box-inner {
		width: calc(771 / 640 * 100vw);
		height:  calc(514 / 640 * 100vw);
		/*position: absolute;
		top: 0;
		right: 116px;*/
	}
	.internship .box01 .dissolve-box img {
		height:  calc(514 / 640 * 100vw);
	}
	.internship .box01 .dissolve-rotate-box {
		display: none;
	}

	.internship .box01 .box01-inner {
	}
	.internship .box01 .logo {
		width: calc(507 / 640 * 100vw);
		height: calc(618 / 640 * 100vw);
		position: absolute;
		top: calc(24 / 640 * 100vw);
		left: calc(104 / 640 * 100vw);
	}
	.internship .box01 h1 {
		font-size: calc(29 / 640 * 100vw);
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.2em;
		position: absolute;
		top: calc(734 / 640 * 100vw);
		left: 50%;
		transform: translateX(-50%);
	}
	.internship .box01 h1 span {
		font-family: futura-pt, sans-serif;
		font-weight: 500;
		font-style: normal;
		font-size: calc(29 / 640 * 100vw);
	}
	.internship .box01 .box01-text1 {
		font-size: calc(52 / 640 * 100vw);
		line-height: 1;
		letter-spacing: 0.2em;
	}
	.internship .box01 .box01-text1-1 {
		position: absolute;
		top: calc(845 / 640 * 100vw);
		left: calc(110 / 640 * 100vw);
	}
	.internship .box01 .box01-text1-2 {
		font-size: calc(42.62 / 640 * 100vw);
		position: absolute;
		top: calc(959 / 640 * 100vw);
		left: calc(273 / 640 * 100vw);
	}
	.internship .box01 .box01-text1-3 {
		position: absolute;
		top: calc(1058 / 640 * 100vw);
		left: calc(310 / 640 * 100vw);
	}
	.internship .box01 .box01-text2 {
		font-size: calc(26.46 / 640 * 100vw);
		line-height: 1.75;
		letter-spacing: 0.2em;
		text-align: center;
		width: 100vw;
		position: absolute;
		top: calc(1253 / 640 * 100vw);
		left: 0;
	}
	.internship .box01 .hand-illustration01 {
		width: calc(541 / 640 * 100vw);
		height: calc(256 / 640 * 100vw);
		position: absolute;
		top: calc(1767 / 640 * 100vw);
		right: calc(57 / 640 * 100vw);
	}
}
@media print, screen and (min-width: 641px) {
	.internship .box01 {
		background:
			url('../images/bg.png') no-repeat center -90px,
			linear-gradient(
				90deg,
				rgba(4, 204, 253, 1) 0%,
				rgba(4, 204, 253, 1) 50%,
				rgba(255, 117, 204, 1) 50%,
				rgba(255, 117, 204, 1) 100%
			);
		background-size: auto, cover; /* 画像は実寸、グラデーションは全体に */
		width: 100%;
		height: 2045px;
		margin: 100px 0 0;
		position: relative;
	}
	.internship .box01 .dissolve-box {
		width: 1280px;
		position: absolute;
		top: 96px;
		left: calc(50% - 640px);
	}
	.internship .box01 .dissolve-box-inner {
		width: 771px;
		height: 514px;
		position: absolute;
		top: 0;
		right: 116px;
	}
	.internship .box01 .dissolve-rotate-box {
		width: 100%;
		height: 514px;
		position: absolute;
		top: 610px;
		left: 0;
	}
	.internship .box01 .dissolve-rotate-image {
		width: 100%;
		height: 514px;
	}
	.internship .box01 .dissolve-rotate01 {
		background: url(../images/dissolve-rotate01.png) no-repeat center center;
	}
	.internship .box01 .dissolve-rotate02 {
		background: url(../images/dissolve-rotate02.png) no-repeat center center;
	}
	.internship .box01 .dissolve-rotate03 {
		background: url(../images/dissolve-rotate03.png) no-repeat center center;
	}
	.internship .box01 .dissolve-rotate04 {
		background: url(../images/dissolve-rotate04.png) no-repeat center center;
	}
	.internship .box01 .dissolve-rotate05 {
		background: url(../images/dissolve-rotate05.png) no-repeat center center;
	}

	.internship .box01 .box01-inner {
		width: 1280px;
		margin: auto;
		position: relative;
	}

	.internship .box01 .logo {
		position: absolute;
		top: 24px;
		left: 426px;
	}


	.internship .box01 h1 {
		font-size: 2.944rem;
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.2em;
		position: absolute;
		top: 758px;
		left: 50%;
		transform: translateX(-50%);
	}
	.internship .box01 h1 span {
		font-family: futura-pt, sans-serif;
		font-weight: 500;
		font-style: normal;
		font-size: 2.944rem;
	}

	.internship .box01 .box01-text1 {
		font-size: 5.2rem;
		line-height: 1;
  letter-spacing: 0.2em;
	}
	.internship .box01 .box01-text1-1 {
		position: absolute;
		top: 880px;
		left: 429px;
	}
	.internship .box01 .box01-text1-2 {
		font-size: 4.262rem;
		position: absolute;
		top: 990px;
		left: 593px;
	}
	.internship .box01 .box01-text1-3 {
		position: absolute;
		top: 1097px;
		left: 629px;
	}

	.internship .box01 .box01-text2 {
		font-size: 2.646rem;
		line-height: 1.75;
		letter-spacing: 0.2em;
		text-align: center;
		position: absolute;
		top: 1268px;
		left: 50%;
		transform: translateX(-50%);
	}

	.internship .box01 .hand-illustration01 {
		width: 541px;
		height: 256px;
		position: absolute;
		top: 1802px;
		right: 100px;
	}


}




/*box02*/
@media only screen and (max-width: 640px) {
	.internship .box02 {
	}
	.internship .box02-inner {
		width: calc(550 / 640 * 100vw);
		margin: auto;
		padding: calc(81 / 640 * 100vw) 0 calc(90 / 640 * 100vw);
		position: relative;
	}
	.internship .box02 .experience-box {
		background:
			url(../images/experience-box-bg2.png) no-repeat 0 0,
			url(../images/experience-box-bg.png) repeat 0 0;
		background-size: calc(240 / 640 * 100vw) auto, 10px auto;
		color: #0066E3;
		width: calc(550 / 640 * 100vw);
		margin: calc(31 / 640 * 100vw) auto 0;
		border: 3px solid #0066E3;
		box-sizing: border-box;
	}
	.internship .box02 .experience-box-inner {
		width: calc(450 / 640 * 100vw);
		margin: auto;
		padding: calc(62 / 640 * 100vw) 0 calc(45 / 640 * 100vw);
	}
	.internship .box02 .experience-box h3 {
		background: #FBF805;
		font-size: calc(42 / 640 * 100vw);
		font-weight: 400;
		letter-spacing: 0.2em;
		width: calc(363 / 640 * 100vw);
		height: calc(54 / 640 * 100vw);
		margin: auto;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.internship .box02 .experience-box dl {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		margin: calc(70 / 640 * 100vw) 0 0;
	}
	.internship .box02 .experience-box dl dt {
		font-size: calc(30 / 640 * 100vw);
		letter-spacing: 0.2em;
		font-weight: 400;
		line-height: 1.5;
		width: calc(100 / 640 * 100vw);
	}
	.internship .box02 .experience-box dl dd {
		font-size: calc(20 / 640 * 100vw);
		line-height: 1.75;
		letter-spacing: 0.2em;
		width: calc(350 / 640 * 100vw);
		padding: 0 0 0 calc(30 / 640 * 100vw);
		border-left: 1px solid #0066E3;
		box-sizing: border-box;
	}
	.internship .box02 .experience-box h4 {
		display: inline-block;
		font-size: calc(30 / 640 * 100vw);
		font-weight: 400;
		line-height: 1.5;
		letter-spacing: 0.2em;
		margin: calc(30 / 640 * 100vw) 0 0;
		border-bottom: 1px solid #0066E3;
		box-sizing: border-box;
	}
	.internship .box02 .experience-box p.experience-box-text1 {
		font-size: calc(21.81 / 640 * 100vw);
		line-height: 1.5;
		letter-spacing: 0.2em;
		margin: calc(20 / 640 * 100vw) 0 0;
	}
	.internship .box02 .experience-box ul {
		margin: calc(14 / 640 * 100vw) 0 0;
	}
	.internship .box02 .experience-box ul li {
		font-size: calc(20 / 640 * 100vw);
		line-height: 1.75;
		letter-spacing: 0.075em;
		margin: 0;
		padding: 0 0 0 1em;
		position: relative;
	}
	.internship .box02 .experience-box ul li::before {
		content: '・';
		position: absolute;
		top: 0;
		left: 0;

	}
	.internship .box02 .experience-box p.experience-box-text2 {
		font-size: calc(20 / 640 * 100vw);
		line-height: 1.75;
		letter-spacing: 0.2em;
		margin: calc(10 / 640 * 100vw) 0 0;
	}
	.internship .box02 .box02-2 {
		display: flex;
		justify-content: center;
	}
	.internship .box02 .box02-2 p {
		display: inline-block;
		color: #0066E3;
		font-size: calc(20 / 640 * 100vw);
		line-height: 1.75;
		letter-spacing: 0.2em;
		margin: calc(60 / 640 * 100vw) 0 0;
	}
	.internship .box02 .hand-illustration02 {
		width: calc(230 / 640 * 100vw);
		height: calc(159 / 640 * 100vw);
		position: absolute;
		top: calc(183 / 640 * 100vw);
		right: calc(7 / 640 * 100vw);
		overflow: hidden;
	}
	.internship .box02 .hand-illustration03 {
		width: calc(189 / 640 * 100vw);
		height: calc(151 / 640 * 100vw);
		position: absolute;
		top: calc(538 / 640 * 100vw);
		right: calc(-24 / 640 * 100vw);
	}
}
@media print, screen and (min-width: 641px) {
	.internship .box02 {
	}
	.internship .box02-inner {
		width: 1280px;
		margin: auto;
		padding: 85px 0 120px;
		position: relative;
	}
	.internship .box02 .experience-box {
		background:
			url(../images/experience-box-bg2.png) no-repeat 0 0,
			url(../images/experience-box-bg.png) repeat 0 0;
		color: #0066E3;
		width: 553px;
		margin: 57px auto 0;
		border: 7px solid #0066E3;
		box-sizing: border-box;
	}
	.internship .box02 .experience-box-inner {
		width: 450px;
		margin: auto;
		padding: 62px 0 45px;
	}
	.internship .box02 .experience-box h3 {
		background: #FBF805;
		font-size: 4.2rem;
		font-weight: 400;
		letter-spacing: 0.2em;
		width: 363px;
		height: 54px;
		margin: auto;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.internship .box02 .experience-box dl {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		margin: 70px 0 0;
	}
	.internship .box02 .experience-box dl dt {
		font-size: 3.0rem;
		letter-spacing: 0.2em;
		font-weight: 400;
		line-height: 1.5;
		width: 100px;
	}
	.internship .box02 .experience-box dl dd {
		font-size: 2.0rem;
		line-height: 1.75;
		letter-spacing: 0.2em;
		width: 350px;
		padding: 0 0 0 30px;
		border-left: 3px solid #0066E3;
		box-sizing: border-box;
	}
	.internship .box02 .experience-box h4 {
		display: inline-block;
		font-size: 3.0rem;
		font-weight: 400;
		line-height: 1.5;
		letter-spacing: 0.2em;
		margin: 30px 0 0;
		border-bottom: 3px solid #0066E3;
		box-sizing: border-box;
	}
	.internship .box02 .experience-box p.experience-box-text1 {
		font-size: 2.181rem;
		line-height: 1.5;
		letter-spacing: 0.2em;
		margin: 20px 0 0;
	}
	.internship .box02 .experience-box ul {
		margin: 14px 0 0;
	}
	.internship .box02 .experience-box ul li {
		font-size: 2.0rem;
		line-height: 1.75;
		letter-spacing: 0.075em;
		margin: 0;
	}
	.internship .box02 .experience-box ul li::before {
		content: '・';
	}
	.internship .box02 .experience-box p.experience-box-text2 {
		font-size: 2.0rem;
		line-height: 1.75;
		letter-spacing: 0.2em;
		margin: 10px 0 0;
	}
	.internship .box02 .box02-2 {
		display: flex;
		justify-content: center;
	}
	.internship .box02 .box02-2 p {
		display: inline-block;
		color: #0066E3;
		font-size: 2.0rem;
		line-height: 1.75;
		letter-spacing: 0.2em;
		margin: 60px 0 0;
		border-bottom: 3px solid #0066E3;
	}

	.internship .box02 .hand-illustration02 {
		width: 230px;
		height: 188px;
		position: absolute;
		top: 183px;
		left: 254px;
	}
	.internship .box02 .hand-illustration03 {
		width: 189px;
		height: 151px;
		position: absolute;
		top: 567px;
		right: 340px;
	}
}




/*box03*/
.internship .box03 {
	background: #FEFD50;
}
@media only screen and (max-width: 640px) {
	.internship .box03-inner {
		padding: calc(75 / 640 * 100vw) 0 calc(114 / 640 * 100vw);
		position: relative;
	}
	.internship .box03 .schedule-list {
		width: calc(516 / 640 * 100vw);
		margin: auto;
		padding: calc(90 / 640 * 100vw) 0 0;
	}
	.internship .box03 .schedule-list dl {
		background: url(../images/schedule-list-bottom.png) no-repeat center bottom calc(20 / 640 * 100vw);
		background-size: calc(32 / 640 * 100vw) auto;
		display: flex;
		align-items: center;
		margin: auto;
		padding: 0 0 calc(64 / 640 * 100vw);
	}
	.internship .box03 .schedule-list dl dt {
		color: #0066E3;
		font-size: calc(20 / 640 * 100vw);
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.2em;
		width: calc(216 / 640 * 100vw);
		padding: 0 0 0 calc(64 / 640 * 100vw);
		box-sizing: border-box;
		position: relative;
	}
	.internship .box03 .schedule-list dl dt::after {
		content: '';
		background: #0066E3;
		width: calc(32 / 640 * 100vw);
		height: 1px;
		position: absolute;
		top: calc(7 / 640 * 100vw);
		right: calc(15 / 640 * 100vw);
	}
	.internship .box03 .schedule-list dl dt.schedule-dt-3::after {
		width: calc(60 / 640 * 100vw);
	}
	.internship .box03 .schedule-list dl dd {
		color: #0066E3;
		font-size: calc(30 / 640 * 100vw);
		line-height: 1;
		letter-spacing: 0.2em;
		width: calc(300 / 640 * 100vw);
	}
	.internship .box03 .schedule-box-white {
		background: #fff;
		width: calc(516 / 640 * 100vw);
		margin: auto;
		padding:  calc(30 / 640 * 100vw) 0;
	}
	.internship .box03 .schedule-box-white p {
		color: #0066E3;
		font-size: calc(31 / 640 * 100vw);
		line-height: 1.75;
		text-align: center;
	}
	.internship .box03 .schedule-box-white p span:nth-of-type(1) {
		font-size: calc(34 / 640 * 100vw);
	}
	.internship .box03 .schedule-box-white p span:nth-of-type(2) {
		font-size: calc(29 / 640 * 100vw);
		letter-spacing: 0.025em;
	}
	.internship .box03 .hand-illustration04 {
		width: calc(337 / 640 * 100vw);
		position: absolute;
		top: calc(153 / 640 * 100vw);
		left: calc(-88 / 640 * 100vw);
	}



}
@media print, screen and (min-width: 641px) {
	.internship .box03-inner {
		width: 1280px;
		margin: auto;
		padding: 90px 0 70px;
		position: relative;
	}
	.internship .box03 .schedule-list {
		width: 516px;
		margin: auto;
		padding: 90px 0 0;
	}
	.internship .box03 .schedule-list dl {
		background: url(../images/schedule-list-bottom.png) no-repeat center bottom 20px;
		background-size: 33px auto;
		display: flex;
		align-items: center;
		margin: auto;
		padding: 0 0 64px;
	}
	.internship .box03 .schedule-list dl dt {
		color: #0066E3;
		font-size: 2.0rem;
		font-weight: 400;
		line-height: 1.75;
		letter-spacing: 0.2em;
		width: 216px;
		padding: 0 0 0 65px;
		box-sizing: border-box;
		position: relative;
	}
	.internship .box03 .schedule-list dl dt::after {
		content: '';
		background: #0066E3;
		width: 40px;
		height: 2px;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 10px;
	}
	.internship .box03 .schedule-list dl dt.schedule-dt-3::after {
		width: 67px;
	}
	.internship .box03 .schedule-list dl dd {
		color: #0066E3;
		font-size: 3.0rem;
		line-height: 1.75;
		letter-spacing: 0.2em;
		width: 300px;
	}
	.internship .box03 .schedule-box-white {
		background: #fff;
		width: 516px;
		margin: auto;
		padding: 20px 0;
	}
	.internship .box03 .schedule-box-white p {
		color: #0066E3;
		font-size: 3.1rem;
		line-height: 1.75;
		text-align: center;
	}
	.internship .box03 .schedule-box-white p span:nth-of-type(1) {
		font-size: 3.4rem;
	}
	.internship .box03 .schedule-box-white p span:nth-of-type(2) {
		font-size: 2.9rem;
		letter-spacing: 0.025em;
	}
	.internship .box03 .hand-illustration04 {
		position: absolute;
		top: 170px;
		left: 147px;
	}

}



/*box04*/
@media only screen and (max-width: 640px) {
	.internship .box04 {
	}
	.internship .box04 .box04-top {
	}
	.internship .box04 .box04-inner {
		padding: calc(115 / 640 * 100vw) 0 calc(70 / 640 * 100vw);
		position: relative;
	}
	.internship .box04 .box04-text {
		color: #0066E3;
		font-size: calc(24 / 640 * 100vw);
		letter-spacing: 0.01em;
		line-height: 1.75;
		text-align: center;
		margin: calc(30 / 640 * 100vw) 0 0;
	}
	.internship .box04 ul li {
		width: calc(366 / 640 * 100vw);
		margin: calc(30 / 640 * 100vw) auto 0;
	}
	.internship .box04 .hand-illustration05 {
		width: calc(218 / 640 * 100vw);
		position: absolute;
		top: calc(160 / 640 * 100vw);
		right: calc(11 / 640 * 100vw);
	}


}
@media print, screen and (min-width: 641px) {
	.internship .box04 {
	}
	.internship .box04 .box04-top {
		background:
			url('../images/box04-top_pc.png') no-repeat center top,
			linear-gradient(
				90deg,
				rgba(4, 204, 253, 1) 0%,
				rgba(4, 204, 253, 1) 50%,
				rgba(255, 255, 255, 1) 50%,
				rgba(255, 255, 255, 1) 100%
			);
		height: 25px;
	}
	.internship .box04 .box04-inner {
		width: 1280px;
		margin: auto;
		padding: 205px 0 10px;
		position: relative;
	}
	.internship .box04 .box04-text {
		color: #0066E3;
		font-size: 2.4rem;
		letter-spacing: 0.01em;
		line-height: 1.75;
		text-align: center;
		margin: 30px 0 0;
	}
	.internship .box04 ul li {
		text-align: center;
		margin: 30px 0 0;
	}
	.internship .box04 ul li a:hover {
		opacity: 0.7;
	}
	.internship .box04 .hand-illustration05 {
		position: absolute;
		top: 238px;
		right: 156px;
	}
}





/*共通パーツ*/
@media only screen and (max-width: 640px) {
	.internship .title {
		background: url(../images/title-bg.png) no-repeat center top;
		background-size: auto 100%;
		height: calc(213 / 640 * 100vw);
		/*padding: calc(59 / 640 * 100vw) 0 0;*/
		position: relative;
	}
	.internship .title p {
		color: #0066E3;
		font-family: futura-pt, sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size: calc(42.62 / 640 * 100vw);
		line-height: 1.2;
		letter-spacing: 0.2em;
		text-align: center;
		margin: 0;
		position: relative;
		top: calc(-20 / 640 * 100vw);
	}
	.internship .title h2 {
		color: #0066E3;
		font-size: calc(30 / 640 * 100vw);
		font-weight: 400;
		line-height: 1.2;
		letter-spacing: 0.1em;
		text-align: center;
		margin: 0;
		position: relative;
		top: calc(-20 / 640 * 100vw);
	}
}
@media print, screen and (min-width: 641px) {
	.internship .title {
		background: url(../images/title-bg.png) no-repeat center top;
		height: 212px;
		padding: 59px 0 0;
	}
	.internship .title p {
		color: #0066E3;
		font-family: futura-pt, sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size: 4.262rem;
		line-height: 1.2;
		letter-spacing: 0.2em;
		text-align: center;
		margin: 0;
	}
	.internship .title h2 {
		color: #0066E3;
		font-size: 3.0rem;
		font-weight: 400;
		line-height: 1.2;
		letter-spacing: 0.1em;
		text-align: center;
		margin: 0;
	}
}









/*xxx*/
@media only screen and (max-width: 640px) {
	.internship .xxx {
	}
}
@media print, screen and (min-width: 641px) {
	.internship .xxx {
	}
}

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

		youtube設定

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

.internship .youtube-box .youtube {
	position:relative;
	width:100%;
	padding-top:56.25%;
}
.internship .youtube-box .youtube iframe{
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
}


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

		locipo設定

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

/*
.internship .locipo-box .locipo {
	position:relative;
	width:100%;
	padding-top:56.25%;
}
.internship .locipo-box .locipo iframe{
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
}
*/


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

		googlemap

*********************************************************** */
/*
.ggmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
*/



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

		マージンの設定

*********************************************************** */
/*
.internship .last {
	margin-bottom: 40px;
}
	*/

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

		カラー設定

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




/*
.internship .cl-blue {
	color: #4ebbff;
}




.internship .cl-red {
	color: #e50012;
}


.internship .cl-yellow-green {
	color: #1aff2d;
}
.internship .cl-yellow {
	color: #fffc01;
}
.internship .cl-magenta {
	color: #ff06f9;
}
.internship .cl-cyan {
	color: #00e1ff;
}
.internship .cl-pink {
	color: #dc557e;
}
.internship .cl-green {
	color: #03a08c;
}
.internship .cl-orange {
	color: #f68b00;
}
.internship .cl-light-blue {
	color: #008bda;
}
.internship .cl-purple {
	color: #865cdc;
}
*/




/*マーカー*/
.maker-pink {
	background:linear-gradient(#FFE0F0 0%, #FFE0F0 100%);
}

/*
.maker-black {
	background:linear-gradient(#000 0%, #000 100%);
}
.maker-black2 {
	display: inline-block;
	background:linear-gradient(#000 0%, #000 100%);
	margin: 4px 0;
	padding: 0 10px;
}

@media print, screen and (min-width: 641px) {
	.maker-black2-l {
		padding-right: 0;
	}
	.maker-black2-r {
		padding-left: 0;
	}
}

/*
.maker-orange {
	background:linear-gradient(transparent 70%, #ffbb00 70%);
}
.maker-red {
	background:linear-gradient(transparent 70%, #fc8c8c 70%);
}
.maker-yellow {
	background:linear-gradient(transparent 70%, #ffff00 70%);
}

.maker-dark-red {
	background:linear-gradient(#e83401 0%, #e83401 100%);
}
*/


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

		注釈リスト

*********************************************************** */
/*
/*注釈リスト*/
/*
.list-annotation {
	position: relative;
	margin: 0 0 1em;
	padding: 0;
}

.list-annotation li {
	list-style: none;
	list-style-position: outside;
	margin: 0;
	padding-left: 1.25em;
	transform: rotate(0.05deg);
}
.list-annotation li span {
	position: absolute;
	left: 0;
	margin: 0
}
@media only screen and (max-width: 640px) {
	.list-annotation li {
		font-size: 4.266666666666667vw;
		line-height: 1.5;
	}
}
@media print, screen and (min-width: 641px) {
	.list-annotation li {
		font-size: 1.6rem;
		line-height: 1.5;
	}
}
*/


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

		動き data-delighter

*********************************************************** */
/*下から上へ*/
.dl-up.delighter {
	transform: translatey(100px);
	opacity: 0;
	transition: all .75s ease-out;
}
.dl-up.delighter.started {
	transform: none;
	opacity: 1;
}



/*右から左へ*/
/*
.dl-left.delighter {
	transform: translate(30px);
	opacity: 0;
	transition: all .75s ease-out;
}
.dl-left.delighter.started {
	transform: none;
	opacity: 1;
}
*/



/*オーバーラップ*/
/*
.dl-or.delighter {
	opacity: 0;
	transition: all .75s ease-in;
}
.dl-or.delighter.started {
	transform: none;
	opacity: 1;
}
	*/

/*リスト*/
/*
.dl-list50.delighter li {
	opacity: 0;
	transform: translatey(50px);
	transition: all .7s ease-out;
}
.dl-list50.delighter.started li {
	opacity: 1;
	transform: none;
}
.dl-list50.delighter.started li:nth-child(1) {
	transition: all .7s ease-out .1s;
}
.dl-list50.delighter.started li:nth-child(2) {
	transition: all .7s ease-out .2s;
}
.dl-list50.delighter.started li:nth-child(3) {
	transition: all .7s ease-out .3s;
}
.dl-list50.delighter.started li:nth-child(4) {
	transition: all .7s ease-out .4s;
}
.dl-list50.delighter.started li:nth-child(5) {
	transition: all .7s ease-out .5s;
}
.dl-list50.delighter.started li:nth-child(6) {
	transition: all .7s ease-out .6s;
}
.dl-list50.delighter.started li:nth-child(7) {
	transition: all .7s ease-out .7s;
}
.dl-list50.delighter.started li:nth-child(8) {
	transition: all .7s ease-out .8s;
}
.dl-list50.delighter.started li:nth-child(9) {
	transition: all .7s ease-out .9s;
}
.dl-list50.delighter.started li:nth-child(10) {
	transition: all .7s ease-out 1.0s;
}
*/



/* ------------------------------
　　ページ内リンクの位置調整
------------------------------ */


.p-link::before {
	content: "";
	display: block;
	visibility: hidden;
	position: relative;
	z-index: -1;
}


/*xxx*/
@media only screen and (max-width: 640px) {
	.p-link::before {
		height: 50px; // 調整したい高さ（固定ヘッダーの高さ）
		margin-top: -50px; // heightと同じ分のネガティブマージン
	}
}
@media print, screen and (min-width: 641px) {
	.p-link::before {
		height: 100px;
		margin-top: -100px;
	}
}


/*p-linkがリンクボタンに被って押せなくなったときの対応*/
.p-link-cover {
	position: relative;
	z-index: 1;
}
