@charset "utf-8";
:root{
	--main-color:#25B483;
	--sub-color:#EB6EA5;
	--icon-bootstrap:'bootstrap-icons';
}
body{
	font-family: 'M PLUS 1p', sans-serif;
	font-weight: 400;
	letter-spacing: 0.05em;
	width:100%;
	font-size:1.1vw;
	font-size:17px;
	line-height:1.8;
	color:#333;
	text-align:center;
	min-width:1100px;
	-webkit-text-size-adjust:100%;
  background-color:#FFFFFF;
	overflow-wrap:break-word !important;
	word-wrap:break-word !important;
	box-sizing:border-box;
	}

.size120{font-size:1.2em; line-height:170%;}
.size90{font-size:0.9em; line-height:170%;}

.mt0{margin-top:0px !important;}
.mt10{margin-top:10px !important;}
.mt20{margin-top:20px !important;}
.mt40{margin-top:40px !important;}
.mb20{margin-bottom:20px !important;}
.mb40{margin-bottom:40px !important;}
.pt0{padding-top:0px !important;}

.w480{width: 480px; margin: 0 auto;}

a{
	color:#3476ae;
	text-decoration:none;
}
a:hover{
	text-decoration:underline;
}

.left,
.alignleft{
	float:left;
	margin:0 20px 20px 0;
}
.right,
.alignright{
	float:right;
	margin:0 0 20px 20px;
}
.aligncenter{
	margin:0 auto 20px auto !important;
	text-align:center !important;
	display:inlne-block;
}

.flex{display:flex;}
.flex-between{justify-content:space-between;}
.flex-center{justify-content:center !important;}
.flex-wrap{flex-wrap:wrap;}
.flex-reverse{flex-direction:row-reverse;}

.hissu{color:#FF0000 !important;}
.pc-block{display:block !important;}
.pc-none{display:none !important;}

/* initialize */
*{margin:0; padding:0; font-style:normal;}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{
	display: block;
}

img{border:none; display:block;}

.left{float:left; display:inline;}
.left img{margin-right:20px;}

.right{float:right; display:inline;}

.align-left{text-align:left;}
.align-right{text-align:right;}
.align-center{text-align:center;}

.clear{clear:both; display:block;}

li{list-style:none;}

.clearfix:after{
	content:".";
	display:block;
	clear:both;
	height:0;
	visibility:hidden;
	}

.clearfix{display:inline-block;}

/* Hides from IE-mac ﾂ･*/
* html .clearfix{height:1%;}
.clearfix{display:block;}
/* End hides from IE-mac ﾂ･*/

/* header */
header{
	position: relative;
	width: 100%; height: 500px;
	overflow: hidden;
	background-color: #009F40;
	background-image: url(../../img/scholarship/header_back.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
#header-inner{
	position: relative;
	width: 1100px;
	margin: 0 auto;
	padding-top: 45px;
}
#header-inner h1{
	position: relative;
	width: calc( 563px * 1);
	height: calc( 387px * 1);
	margin: 0 auto;
	z-index: 10;
}
#header-inner::before{
	position: absolute;
	content: "";
	top:50px; left: -10px;
	width: calc( 318px * 1);
	height: calc( 367px * 1);
	background-image: url(../../img/scholarship/title_01.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
}
#header-inner::after{
	position: absolute;
	content: "";
	top:55px; right: -15px;
	width: calc( 470px * 1);
	height: calc( 403px * 1);
	background-image: url(../../img/scholarship/title_02.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
}

/* header2023 */
header#new{
	position: relative;
	width: 100%; height: auto;
 	background-color: #FFF;
 	background-image: none;
	padding-bottom: 80px;
}
header#new::after{
	position: absolute;
	content: "";
	bottom: 0; left: 0;
	width: 100%; height: 80px;
	background-color: #25B483;
}
.header-inner{
	position: relative;
	width: 1100px;
	margin: 0 auto;
	padding-top: 60px;
}
.header-inner .emblem{
	position: absolute;
	top:20px; left: 0;
	width: 120px; height: auto;
}
header#new .header-inner h1{
	position: absolute;
	bottom: -78px;
	left: 0; right: 0;
	margin: auto;
	z-index: 10;
}
header#new .header-inner h1 img{
	height: 90px; width: auto;
	margin: 0 auto;
}
.header-inner .copy-recruit{
	width: 260px; height: auto;
}
.header-inner figure{
	position: relative;
	width: 500px;
	margin-top: 40px;
}
.header-inner figure figcaption{
	position: absolute;
	top:0; right: 30px;
	background-color: #25B483;
	color:#FFF;
	padding: 10px 20px;
	border-radius: 9999px;
}
.header-inner figure figcaption::after{
	position: absolute;
	content: "";
	bottom:-10px; left: 50px;
	border: 12px solid transparent;
  border-top: 14px solid #25B483;
	transform: rotate(140deg);
}
.header-inner .copy-support{
	width: 180px; height: auto;
}

#wrapper{
	position: relative;
	width: 1000px;
	margin: 0 auto;
	padding-top: 80px;
}
section.explanation{
	text-align: center;
	margin-bottom: 80px;
}
section.explanation .explanation-text{
	margin-bottom: 80px;
}
section.explanation p span.highlighter{
	color: #db0064;
	color: #EB6EA5;
	font-size: 1.5em;
	font-weight: 700;
	background: linear-gradient(transparent 60%, #ffff66 60%);
}
section.explanation .button a{
	width: 480px;
	margin: 0 auto;
}
.company-page section.explanation .button a,
#student-button a{
	border-color: #EB6EA5;
	color: #EB6EA5;
	line-height: 2;
}
.company-page section.explanation .button a::before,
#student-button a::before{
	border-color: #EB6EA5;
	top:30px;
}
.company-page section.explanation .button a:hover,
#student-button a:hover{
	background-color: #EB6EA5;
	color: #FFF;
}
.company-page section.explanation .button a:hover::before,
#student-button a:hover::before{
	border-top: 2px solid #FFF;
  	border-right: 2px solid #FFF;
}

/*
ul.explanation-box-menu{
  display:flex;
  justify-content:space-between;
}
ul.explanation-box-menu li{
  width:540px;
  font-size:1.3em; line-height:68px; font-weight:700;
	color: #02A041;
  text-align:center;
  cursor:pointer;
  position:relative;
	border-radius: 20px 20px 0 0;
}
ul.explanation-box-menu li.menu01{
  background:#E7E7E7;
  transition:0.3s;
	color: #02A041;
}
ul.explanation-box-menu li.menu01.active{
  background:#02A041;
  transition:0.3s;
	color:#FFF;
}
ul.explanation-box-menu li.menu02{
  background:#E7E7E7;
  transition:0.3s;
}
ul.explanation-box-menu li.menu02.active{
  background:#02A041;
  transition:0.3s;
	color:#FFF;
}
.explanation-box .tab-contents{
  border:4px solid #02A041;
  padding:50px 70px;
  text-align:left;
  display:none;
}
.explanation-box .tab-contents.active{
  display:block;
}
.explanation-box .tab-contents.menu01{
  border-color:#02A041;
}
.explanation-box .tab-contents.menu02{
  border-color:#02A041;
}
.explanation-box .product-list-box{
}*/

section{
	position: relative;
	margin-bottom: 150px;
	text-align: left;
}
section h2{
	position: relative;
	color: var(--main-color);
	font-size: 1.8em;
	text-align: center;
	margin-bottom: 40px;
}
section h2::before{
	position: absolute;
	top:calc(50% - 1px); left: 0;
	content: "";
	width: 100%; height: 2px;
	background:var(--main-color);
}
section h2 span{
	position: relative;
  padding: 0 20px;
	background: #FFF;
}
ul.merit-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.merit-list li{
	width: 480px;
	background-color: #E5F1CD;
	border-radius: 20px;
	padding: 25px 35px;
	box-sizing: border-box;
}
ul.merit-list li:first-child,
ul.merit-list li:nth-child(2){
	margin-bottom: 40px;
}

ul.merit-list li h3{
	color: var(--main-color);
	font-size: 1.1em;
	text-align: center;
	margin-bottom: 20px;
}
ul.merit-list li figure{
	position: relative;
	background-color: #FFF;
	width: 150px; height: 150px;
	border-radius: 50%;
	margin: 0 auto 20px;
}
ul.merit-list li figure img{
	position: absolute;
	top:15px; left: 15px;
	width: 120px; height: 120px;
}
ul.merit-list li:nth-child(2) figure img{
	top:20px; left: 20px;
	width: 100px; height: 100px;
}
ul.merit-list li:nth-child(3) figure img{
	top: 0; left: 30px;
}
ul.merit-list li p{
	text-align: left;
}
table.condition-table{
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9em;
	margin-top: 40px;
}
table.condition-table caption{
	text-align: left;
	margin-bottom: 10px;
	color: var(--main-color);
	font-size: 1.1em;
	font-weight: 700;
}
table.condition-table th,
table.condition-table td{
	text-align: left;
	border: 1px solid #CCC;
	padding: 15px 20px;
}
table.condition-table th{
	color: #666;
	width: 150px;
	vertical-align: top;
}
ul.disc-list{
}
ul.disc-list li{
	position: relative;
	margin-bottom: 10px;
	padding-left: 20px;
}
ul.disc-list li:last-child{
	margin-bottom: 0;
}
ul.disc-list li::before{
	position: absolute;
	content: "・";
	top:0; left: 0;
}
ul.faq-list{
	margin: 0 auto;
}
ul.faq-list li{
  padding:0px 15px 25px;
  border-bottom:1px dashed #CCC;
  margin-top:25px;
}
ul.faq-list li .question{
  font-size:1.05em; line-height:1.8;
  position:relative;
  padding:0 50px 0 32px;
  cursor:pointer;
}
ul.faq-list li .question::before{
  content:"Q";
  width:24px; height:24px;
  border-radius:100%;
  background:var(--main-color);
  font-size:0.9em; line-height:24px;
  text-align:center;
  color:#FFF;
  position:absolute;
  top:6%; left:0;
}
ul.faq-list li .question span{
  width:16px; height:16px;
  position:absolute;
  top:18%; right:0;
}
ul.faq-list li .question span:before{
  content:"";
  width:100%;
  border-top:2px solid var(--main-color);
  position:absolute;
  top:50%; left:0;
  margin-top:-1px;
}
ul.faq-list li .question span:after{
  content:"";
  height:100%;
  border-left:2px solid var(--main-color);
  position:absolute;
  top:0; left:50%;
  margin-left:-1px;
  transition:0.2s;
}
ul.faq-list li .question.open span:after{
  content:"";
  height:100%;
  border-left:2px solid var(--main-color);
  position:absolute;
  top:0; left:50%;
  margin-left:-1px;
  transform:rotate(-90deg);
  transition:0.2s;
}
ul.faq-list li .answer{
  display:none;
  padding:0 50px 0 32px;
  margin:15px 0 30px;
}
ul.faq-list.faq-result li .answer{
  display:block;
}
ul.faq-list li .answer p{
  margin-bottom:0;
}
ul.button-list{
	margin: 40px auto 0;
	display: flex;
	justify-content:center;
}
ul.button-list li{
	width: 460px;
	color: var(--main-color);
	text-align: center;
	margin: 0 10px;
}
ul.button-list li span{
	display: block;
	font-size: 0.9em;
	margin: 5px 0;
}
.button a{
	position: relative;
	display: block;
	border: 2px solid var(--main-color);
	border-radius: 40px;
	line-height: 3em;
	font-weight: 700;
	color: var(--main-color);
	transition:0.3s;
}
.button a::before{
	position: absolute;
	content: "";
  top: 20px; right: 30px;
  width: 6px; height: 6px;
  border-top: 2px solid var(--main-color);
  border-right: 2px solid var(--main-color);
  transform: rotate(45deg);
}
.button a:hover{
	background-color: var(--main-color);
	color: #FFF;
	transition:0.3s;
	text-decoration: none;
}
.button a:hover::before{
	border-top: 2px solid #FFF;
  border-right: 2px solid #FFF;
}
.button#thick a{
	line-height: 1.6em !important;
}


footer{
	padding: 60px 0 20px;
}
.contact{
	font-weight: 700;
	margin-bottom: 10px;
}
#shinshu-heart{
	width: 100px; height: auto;
	margin: 30px auto;
}
#copyright{
	font-size: 0.9em;
}


.student-page header{
	background-color: #00AAE8;
	background-image: url(../../img/scholarship/student_header_back.png);
	background-repeat: repeat;
	background-size: auto;
	overflow: hidden;
}
.student-page #header-inner::before{
	position: absolute;
	content: "";
	top:80px; left: -50px;
	width: calc( 900px * 0.6);
	height: calc( 1131px * 0.6);
	background-image: url(../../img/scholarship/title_03.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
}
.student-page #header-inner::after{
	content: none;
}
.student-page #header-inner h1{
	margin: 0 0 0 440px;
}

/* student-header2023 */
.student-page header#new02{
	height: auto;
	background-color: #FFF;
	background-image: url(../../img/scholarship/2023/back.png) !important;
	background-repeat: repeat-x;
	background-size: 32px 79px;
	background-position: bottom center;
	padding-bottom: 79px;
}
.student-page header#new02 .header-inner{
	text-align: left;
	padding-bottom:10px;
}
.student-page header#new02 .header-inner .flex{
	align-items: center;
	margin-top: -20px;
}
.student-page header#new02 .header-inner h1{
	width: 800px; height: auto;
}
.header-inner .header-arukuma{
	width: 220px; height: auto;
}
.header-inner .ruler-copy{
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}
.header-inner .ruler-copy img{
	width: 700px; height: auto;
}
.header-inner .ruler-copy p{
	font-size: 1.85em; line-height: 1.5;
	font-weight: 700;
	transform: rotate(-6deg);
	margin-left: 40px;
}
.header-inner .ruler-copy p span{
	padding: 0 2px;
	background: linear-gradient(transparent 50%, #FFF000 50%);
}



.student-page section h2{
	color: var(--sub-color);
}
.student-page section h2::before{
	background: var(--sub-color);
}
.scholarship-company-message {
	margin-bottom: 30px;
}
.scholarship-company-message p{
	margin-bottom: 40px;
}
.scholarship-company-box ul {
	font-size: 0;
	margin-bottom: 50px;
}

.scholarship-company-box ul li {
	position: relative;
	font-size: 15px;
 	display: inline-block;
	width: 300px;
	margin: 0 46px 50px 0;
	background: #FFF;
	vertical-align: top;
	border: 1px solid #CCC;
	box-shadow: 1px 1px 4px 2px #CCC;
	box-sizing: border-box;
}

.scholarship-company-box ul li:nth-child(3n) {
	margin: 0;
}

.scholarship-company-box ul li a {
	display: block;
	color: #555;
	text-decoration: none;
	font-size: 14px;
}

.scholarship-company-box ul li .company-image {
	height: 150px;
	overflow: hidden;
}

.scholarship-company-box ul li .company-text {
	position: relative;
	padding: 10px 15px;
	background: #FFF;
}

.scholarship-company-box ul li a:hover {
	opacity: 0.8;
}

.scholarship-company-box ul li .company-area {
	position: absolute;
	top: -24px;
	left: -10px;
	background: #ED5876;
	color: #FFF;
	line-height: 24px;
	font-size: 13px;
	padding: 0 15px;
}

.scholarship-company-box ul li .company-area:before {
	content: '';
	position: absolute;
	top: 100%;
	border-style: solid;
	border-color: transparent;
	left: 0;
	border-width: 0 10px 10px 0;
	border-right-color: #D1274B;
}

.scholarship-company-box ul li a .company-title {
	font-size: 18px;
	margin-bottom: 5px;
	font-weight: bold;
}
ul.scholarship-banner-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 40px;
}
ul.scholarship-banner-list li{
	width: 480px;
	margin-bottom: 40px;
}
ul.scholarship-banner-list li a span{
	display: block;
	color: #111;
	font-size: 0.9em;
	margin-top: 5px;
	text-decoration: none;
}
ul.scholarship-banner-list li a:hover{
	text-decoration: underline #111;
}
.scholarship-company-box h3{
	background:#EE5776;
	font-size:15px;
	line-height:32px;
	color:#FFF;
	padding:0 1.5em;
	margin:0 0 10px 0;
	display:inline-block;
	position:relative;
}
.scholarship-company-box h3:before,
.scholarship-company-box h3:after{
	content:"";
	display:block;
	position:absolute;
	top:0;
	border-top:16px solid #EE5776;
	border-bottom:16px solid #EE5776;
}
.scholarship-company-box h3:before{
	left:-8px;
	border-left:8px solid transparent;
}
.scholarship-company-box h3:after{
	right:-8px;
	border-right:8px solid transparent;
}

.movie-box{
  width:600px; height:auto;
  aspect-ratio:16/9;
  margin:5px auto;
}
.movie-box iframe{
  width:100%; height:100%;
}

/* scholarship2024 */
body#scholarship2024 header#new{
	background-image: url(../../img/scholarship/2024/billboard02.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
body#scholarship2024 header#new.company{
	background-image: url(../../img/scholarship/2024/billboard01.jpg);
}
body#scholarship2024 header#new::after{
	display: none;
}
body#scholarship2024 header#new .header-inner{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	height: 500px;
	padding: 0;
}
body#scholarship2024 header#new .header-inner .copy{
	color: #FFF;
	font-size: 2em;
	writing-mode: vertical-rl;
	font-family: "Zen Old Mincho", serif;
  	font-weight: 700;
}
.institution-detail{
	background-color: #333;
	color: #FFF;
	font-size: 1.5em;
	text-align: center;
	line-height: 1;
	padding: 0.75em 0;
	margin-bottom: 2em;
}
.institution-use-box{
	border: 2px solid var(--main-color);
	border-radius: 1rem;
	padding: 2.5em 3em;
}
.institution-use-title{
	text-align: center;
	margin: 0 auto 2em;
}
.institution-use-title span{
	position: relative;
	font-size: 1.5em;
	line-height: 80px;
	padding-left: 60px;
}
.institution-use-title span::after{
	position: absolute;
	content: "";
	top: -15px; left: 0;
	width: calc( 214px * 0.25 );
	height: calc( 267px * 0.25 );
	background-image: url(../../img/scholarship/2024/image01.png);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: cover;
}
figure.graph-transition{
	width: 380px; height: auto;
	margin-left: 40px;
}
figure.graph-transition figcaption{
	font-size: 0.65em;
	margin-top: 0.5em;
}
p.suggest{
	margin-top: 1em;
	background-color: #E5F1CD;
	padding: 1em;
}
.institution-use-point{
	font-size: 1.2em;
	line-height: 1.5;
	font-weight: 700;
	padding-left: 10px;
	border-left: 3px solid var(--main-color);
	margin: 2.5em 0 1em;
}
ul.advantage-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.advantage-list li{
	width: 260px;
}
ul.advantage-list li p{
	font-size: 0.95em;
	line-height: 1.7;
}
ul.advantage-list li .advantage-list-title{
	font-weight: 700;
	border-bottom: 1px solid #111;
	margin-bottom: 0.5em;
}
ul.advantage-list li figure{
}
ul.advantage-list li figure img{
	height: 190px; width: auto;
	margin: 0 auto 1em;
}
ul.advantage-list li .pattern-title{
	border-top: 1px solid #111;
	border-bottom: 1px solid #111;
	text-align: center;
	line-height: 1;
	padding: 0.5em 0;
	font-size: 0.95em;
	margin-bottom: 0.5em;
}
h3.overview-title{
	text-align: left;
	margin-bottom: 10px;
	color: var(--main-color);
	font-size: 1.1em;
	font-weight: 700;
}
ul.overview-list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 1em;
}
ul.overview-list li{
	width: 320px;
	border: 2px solid #ECE9E0;
	border-radius: 1rem;
	padding: 1.5em 2em;
	box-sizing: border-box;
	font-size: 0.95em;
}
ul.overview-list li figure{
	margin-bottom: 1em;
}
.mark-image{
	width: 480px;
	margin-right: 40px;
}
table.overview-table{
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9em;
	margin-bottom: 2em;
}
table.overview-table th,
table.overview-table td{
	text-align: left;
	border: 1px solid #CCC;
	padding: 15px 20px;
}
table.overview-table th{
	color: #666;
	width: 150px;
	vertical-align: top;
}
table.overview-table td .limit-box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1em 4em 0;
}
table.overview-table td figure figcaption{
	text-align: center;
}
table.overview-table td .limit-box figure img{
	height: 80px; width: auto;
	margin: 10px auto 0;
}
table.overview-table td ul li{
	margin-top: 1em;
}
table.overview-table td ul li figure{
	width: 600px;
	margin-top: 0.5em;
}
ul.supplement-list{
	margin-left: 1em;
}
ul.supplement-list li{
	font-size: 0.9em;
	list-style: disc outside;
}
ul.flow-list{
	position: relative;
	display: flex;
	justify-content: space-between;
	font-size: 0.9em;
	margin: 1em 0;
}
ul.flow-list::before{
	position: absolute;
	content: "";
	top: 22px; left: 0;
	width: 95%; height: 2px;
	background-color: var(--sub-color);
	z-index: 0;
}
ul.flow-list li span{
	position: relative;
	display: block;
	background-color: #E7E4D9;
	border-radius: 1rem;
	padding: 10px 15px;
	text-align: center;
	z-index: 2;
}

ul.flow-list li:not(:first-child) span::before{
	font-family: var(--icon-bootstrap);
	content: "\F231";
	font-size: 20px;
	line-height: 1;
	color: var(--sub-color) ;
	position: absolute;
	top: 50%; left: -15px;
	transform: translateY(-50%);
  }

.student-copy{
	position: absolute;
	top: 20px; left: -0.5em;
	color: #FFF;
	font-size: 3.5em;
	line-height: 1.6;
	font-family: "Zen Old Mincho", serif;
  	font-weight: 700;
}
.company-copy{
	position: absolute;
	bottom: 0; left: -0.5em;
	color: #FFF;
	font-size: 3.5em;
	line-height: 1.6;
	font-family: "Zen Old Mincho", serif;
  	font-weight: 700;
	text-align: left;
}
.message-area{
	width: 1000px;
	padding: 4em 0 2em;
	margin: 0 auto;
	text-align: left;
}
.message-text{
	position: relative;
	font-size: 1.65rem;
	font-weight: 700;
	padding-left: 180px;
	margin-bottom: 2em;
}
.message-text span{
	display: block;
	font-size: 1.2rem;
}
.message-text::before{
	position: absolute;
	content: "";
	top: -1em; left: 0;
	width: calc( 415px * 0.4 ); height: calc( 321px * 0.4 );
	background-image: url(../../img/scholarship/2024/image10.png);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: contain;
}
.message-area figure{
	width: 120px;
	margin-left: 20px;
}