@charset "UTF-8";
/**
 * defining
 * 		SP切替サイズ750以下
 */

/**
 * var set
 */
html{
	--size-responsivePc:1240px;
	--size-hamburger:750px;
	--padding-bodyLR:10px;
	--padding-centerContents:200px;
	--flow-cerlce:10vw;
}
/**
 * 共通
 */
*:not(.icon){
	line-height:1.2;
}
*,*:after,*:before{
	box-sizing:border-box;
	margin:0;
	padding:0;
	transition:.3s;
}
body,
input[type=submit]{
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
header,
#mainPhoto,
main,
footer{
	padding-left:calc((100% - var(--size-responsivePc)) / 2);
	padding-right:calc((100% - var(--size-responsivePc)) / 2);
}
@media screen and (max-width:1260px){
	header,
	#mainPhoto,
	main,
	footer{
		padding-left:var(--padding-bodyLR);
		padding-right:var(--padding-bodyLR);
	}
}
@media screen and (max-width750px){
	header,
	#mainPhoto,
	main,
	footer{
		padding-left:0;
		padding-right:0;
	}
}
a{
	text-decoration:none;
}
section:not(#mainPhoto){
	/* min-height:100vh; */
}
.barYellow{
	background-position: -100% 10px;
	background-size: 200% 6.5vw;
	background-image: -webkit-linear-gradient(left, rgba(231,208,15,0) 50%, rgba(255, 239, 104,.9) 50%);
	background-image: -moz-linear-gradient(left, rgba(231,208,15,0) 50%, rgba(255, 239, 104,.9) 50%);
	background-image: -o-linear-gradient(left, rgba(231,208,15,0) 50%, rgba(255, 239, 104,.9) 50%);
	background-image: -ms-linear-gradient(left, rgba(231,208,15,0) 50%, rgba(255, 239, 104,.9) 50%);
	background-image: linear-gradient(left, rgba(231,208,15,0) 50%, rgba(255, 239, 104,.9) 50%);
	padding: 3px 1px;
	background-repeat: repeat-x;
	-webkit-transition: all 1s ease;	
	text-shadow:
		1px 1px 1px rgba(255, 239, 104,.9)
		,1px -1px 1px rgba(255, 239, 104,.9)
		,-1px -1px 1px rgba(255, 239, 104,.9)
		,-1px 1px 1px rgba(255, 239, 104,.9)
		,2px -2px 1px rgba(255, 239, 104,.9)
		,-2px -2px 1px rgba(255, 239, 104,.9)
		,-2px 2px 1px rgba(255, 239, 104,.9)
	;
}
.require {
	position:relative;
	width:40px;
	display:inline-block;
	vertical-align:middle;
}
.require:before {
	position:absolute;
	display:block;
	content:'必須';
	width:100%;
	height:15px;
	background-color: #d30102;
	color:#FFFFFF;
	text-align:center;
	font-size:12px;
	padding:1px;
	top:0;
	bottom:0;
	margin:auto;
	left:5px;
}
#toForm > div {
	width:90%;
	margin:0 auto;
	position:relative;
}
#toForm a {
	display:block;
	background-color:#ffc706;
	border-top:1px solid #fee99d;
	border-right:1px solid #e4d69d;
	border-bottom:1px solid #c69903;
	border-left:1px solid #fee381;
	border-radius:100px;
	text-align:center;
	padding:20px;
	font-size:5vw;
	font-weight:bold;
	color:#000;
	position:relative;
	z-index:1;
}
#toForm .imgWrap {
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
	background-image:url(../img/character.png);
	background-repeat:no-repeat;
	background-position:right bottom;
	z-index:2;
	pointer-events:none;
}
/**
 * header
 */
.logoWrap {
	display: inline-block;
	text-align: center;
}
header{
	position:sticky;
	top:0;
	background-color:#FFF;
	z-index: 3;
}
@media screen and (min-width:751px){
	header{
		display:flex;
		justify-content:space-between;
		align-items:center;
	}	
}
.btnHamburgerMenu{
	display:none;
}
.btnHamburgerMenu{
	border:0px solid #000;
	width:40px;
	height:40px;
	position:fixed;
	top:10px;
	right:10px;
	background-color:#FFF;
	cursor:pointer;
}
.btnHamburgerMenu div{
	position:relative;
	width: 100%;
	height: 100%;
}
.btnHamburgerMenu div:before,
.btnHamburgerMenu div:after{
	display:inline-block;
	content:'';
}
.btnHamburgerMenu div:before,
.btnHamburgerMenu div:after,
.btnHamburgerMenu span{
	position:absolute;
	height:2px;
	width:90%;
	background-color:#000;
	margin:auto;
	left:0;
	right:0;
}
.btnHamburgerMenu div:before{
	top:25%;
}
.btnHamburgerMenu span{
	top:50%;
}
.btnHamburgerMenu div:after{
	top:75%;
}
.btnHamburgerMenu:hover{
	background-color:#EEE;
}
@media screen and (min-width:751px){
	nav{
		width:calc(100% - 25vw);
	}
}
nav ul{
	display:flex;
	justify-content:right;
	list-style:none;
	padding-top:10px;
	padding-bottom:10px;
	flex-wrap:wrap;
	justify-content:left;
}
nav li {
	border-right:1px solid #000;
}
nav li:last-child {
	border-right-width:0;
}
nav a {
	display:block;
	padding:0px 10px;
	color:#000;
}
nav a.active {
	color:#FFF;
	background-color:#cb7422;
}
@media screen and (max-width:750px){
	header{
		/*position:fixed;*/
		z-index:3;
		top:0;
		left:0;
		pointer-events:none;
		background-color: #FFF;
		height:60px;
	}
	nav {
		height:100vh;
	}
	.btnHamburgerMenu{
		display:block;
		pointer-events:visible;
	}
	.slideHamburgerMenu .btnHamburgerMenu{
		right:calc(100% - 40px);
	}
	.slideHamburgerMenu .btnHamburgerMenu span{
		display:none;
	}
	.slideHamburgerMenu .btnHamburgerMenu div:before,
	.slideHamburgerMenu .btnHamburgerMenu div:after{
		top:0;
		bottom:0;
	}
	.slideHamburgerMenu .btnHamburgerMenu div:before{
		transform:rotate(45deg);
	}
	.slideHamburgerMenu .btnHamburgerMenu div:after{
		transform:rotate(-45deg);
	}
	.slideHamburgerMenu nav ul{
		right:0;
	}
	nav ul{
		flex-wrap:wrap;
		position:fixed;
		width:calc(100% - 40px);
		right:calc(-100% - 100px);
		background-color:#FFF;
		height:100vh;
		align-items: flex-start;
		top: 0;
		z-index: 5;
	}
	nav ul:after{
		display:block;
		content:'';
		height:100%;
	}
	nav li{
		width:100%;
		border-right:0px;
		border-bottom:1px solid #000;
	}
	nav a {
		padding:15px 10px;
		pointer-events:visible;
	}
}
/**
 *main photo
 */
#mainPhoto {
	background-image:url(../img/mainPhoto.jpg);
	height:681px;
	height: 60vw;
	background-size: cover;
	background-position: right center;
	position:relative;
}
/*
#mainPhoto .logoWrap{
	top: 3vw;
	position:absolute;
	bottom: 29vw;
	left:6vw;
	text-align:center;
}
*/
.catchCopy {
	position:absolute;
	top: 21vw;
}
@media screen and (min-width:751px){
	.catchCopy {
		display:flex;
		flex-wrap:wrap;
	}
}
.catchcopy *{
	line-height:1;
	font-weight:bold;
}
.catchCopy > *{
	display:flex;
	flex-wrap:wrap;
	margin-bottom: 10px;
}
.catchCopy .fourChara{
	display:flex;
	flex-wrap:wrap;
	width: 5vw;
	font-size: 2.5vw;
}
.catchCopy .fourChara > span{
	width:100%;
}
.catchCopy .investment > div:last-child,
.catchCopy .annualIncome > div:last-child{
	width:calc(100% - 8vw);
	font-size: 5vw;
	white-space: nowrap;
}
.catchCopy > div > div:last-child small{
	font-size: 3vw;
}
.catchCopy .annualIncome{
	background-color:rgba(255,255,255,.8);
}
.catchCopy .recruitsStudents {
	font-size: 4vw;
}
.catchCopy .recruitsStudents .barYellow{
	font-size: 5vw;
		width: calc(100% - 5vw);
}
.catchCopy .recruitsStudents > div:last-child small{
	font-size:2vw;
}
@media screen and (min-width:751px){
	.catchCopy .recruitsStudents > div{
		display:flex;
		align-items:center;
	}	
}

@media screen and (max-width:750px){
	#mainPhoto {
		height: 70vh;
	}
	.catchCopy .fourChara{
		font-size: 4vw;
		width: 8vw;
	}
	.catchCopy .investment > div:last-child,
	.catchCopy .annualIncome > div:last-child{
		font-size: 8vw;
		width: calc(100% - 8vw);
	}
	.catchCopy > div > div:last-child small{
		font-size: 4vw;
	}
	.catchCopy .recruitsStudents {
		font-size: 6vw;
	}
	.catchCopy .recruitsStudents {
		font-size: 6vw;
	}
	.catchCopy .recruitsStudents .barYellow{
		font-size: 8vw;
		width: calc(100% - 8vw);
	}
	.catchCopy .recruitsStudents > div:last-child small{
		font-size:3vw;
	}
}
@media screen and (max-width:500px){
	#mainPhoto {
		height: 50vh;
	}	
	.catchCopy .fourChara{
		font-size: 4.5vw;
		width: 9vw;
	}
	.catchCopy .investment > div:last-child,
	.catchCopy .annualIncome > div:last-child{
		font-size: 9vw;
		width: calc(100% - 10vw);
	}
	.catchCopy > div > div:last-child small{
		font-size: 5vw;
	}
	.catchCopy .recruitsStudents {
		font-size: 7vw;
	}
	.catchCopy .recruitsStudents {
		font-size: 7vw;
	}
	.catchCopy .recruitsStudents .barYellow{
		font-size: 9vw;
		width: calc(100% - 4vw);
	}
	.catchCopy .recruitsStudents > div:last-child small{
		font-size:3vw;
	}
}
@media screen and (max-width:350px){
	#mainPhoto {
		height: 40vh;
	}	
}
/**
 * logo
 */
h1{
	font-size: 3vw;
	font-weight:bold;
}
h1 small{
	font-size:2.5vw;
}
h1 span{
	font-size:2.8vw;
}
.logoWrap .en,
.logoWrap .ch{
	font-size:1vw;
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	padding: 0;
}
@media screen and (max-width:750px){
	h1{
		font-size: 25px;
		font-weight:bold;
	}
	h1 small{
		font-size:20px;
	}
	h1 span{
		font-size:23px;
	}
	.logoWrap .en,
	.logoWrap .ch{
		font-size:12px;
	}
	#mainPhoto .logoWrap{
		position:fixed;
		top:0;
		bottom: unset;
		left: 50%;
		transform: translateX(-50%);
		z-index: 4;
		padding: 5px 0;
		text-align:left;
		text-align: center;
	}
	#mainPhoto .logoWrap h1{
		font-size: 22px;
		line-height:0;
	}
	#mainPhoto .logoWrap h1 small{
		font-size:14px;
	}
	#mainPhoto .logoWrap h1 span{
		font-size:17px;
	}
	#mainPhoto .logoWrap .en,
	#mainPhoto .logoWrap .ch{
		font-size: 10px;
		line-height: 1;
		display:block;
	}
}

/**
 * main
 */
/* common */
main {
	background-image:url(../img/mainBg.gif);
}
main section {
	padding-top:50px;
	padding-bottom:50px;
}
h2{
	text-align:center;
	font-size:80px;
	margin-bottom:50px;
}
h3{
	font-size:45px;
}
.imageRight h3{
	text-align:left;
}
.imageLeft h3{
	text-align:right;
}
.contentsBody{
	position:relative;
}
.contentsBody h3{
	position:relative;
	top:0;
	width:80%;
	z-index:2;
}
.contentsBody h3 span{
	display:inline-block;
	line-height: 1.1;
	background: rgba(255,255,255.8);
	margin: .3vw .3vw .3vw 0;
}
.contentsBody img{
	position: absolute;
	top:0;
	width: auto;
	min-height: calc(100vh - 500px);
	z-index:1;
}
.contentsBody article{
	position:relative;
	display:block;
	text-align:left;
	width: 100%;
	z-index:2;
}
@media screen and (min-width:751px){
	.contentsBody img{
		width: 60%;
	}
	.contentsBody article{
		width: 40%;
	}	
}
@media screen and (max-width:750px){
	.contentsBody article{
		margin-top:10px;
	}	
}
.contentsBody.imageRight h3{
	left:0;
}
.contentsBody.imageRight img{
	right:-10px;
}
.contentsBody.imageRight article{
	text-align:left;
}
.contentsBody.imageLeft h3{
	right:calc(-20% - 10px);
}
.contentsBody.imageLeft img{
	left:-10px;
}
.contentsBody.imageLeft article{
	text-align:right;
	margin:0 0 0 auto;
}
@media screen and (max-width:750px){
	.contentsBody h3{
		position:absolute;
		top:10vw;
		font-size:6vw;
	}
	.contentsBody img{
		position:relative;
		width: 80%;
	}
	.contentsBody.imageLeft h3{
		right:0;
	}
	.contentsBody.imageRight img{
		right:calc(-20% - 10px);
	}
	.contentsBody.imageLeft img{
		right:-10px;
	}
	.contentsBody.imageLeft article{
		text-align:left;
	}
}
@media screen and (min-width:751px){
	.imageRight .textWrap{
		order:1;
	}
	.imageRight .imgWrap{
		order:2;
	}
	.imageLeft .textWrap{
		order:2;
	}
	.imageLeft .imgWrap{
		order:1;
	}
}
@media screen and (max-width:750px){
	h2{
		font-size:10vw;
	}
	h3{
		font-size:4vw;
	}
	.contentsBody{
		display:block;
		position:relative;
	}
	.contentsBody .textWrap,
	.contentsBody .imgWrap{
		position:absolute;
		width:calc(80% + var(--padding-bodyLR));
	}
	.imageRight .textWrap{
	}
	.imageRight .imgWrap{
		top:0;
		right:calc(var(--padding-bodyLR) * -1);
	}
	.imageLeft .textWrap{
	}
	.imageLeft .imgWrap{
		top:0;
		left:calc(var(--padding-bodyLR) * -1);
	}
}
.contentsBodyOpenClose h3{
	background-color:#321807;
	color:#FFF;
	text-align:center;
	padding:10px 0;
	margin-bottom:10px;
	position: relative;
}
.contentsBodyOpenClose h3:after,
.contentsBodyOpenClose h3:before{
	position:absolute;
	display:block;
	content:'';
	width:20px;
	height:4px;
	background-color:#FFF;
	margin:auto;
	top:0;
	bottom:0;
	right:10px;
}
.contentsBodyOpenClose h3.on:after{
	transform:rotate(90deg);
}
.contentsBodyOpenClose h3.on:before{
	transform:rotate(-180deg);
}
.contentsBodyOpenClose h3.off:after,
.contentsBodyOpenClose h3.off:before{
	transform:rotate(00deg);
}
.contentsBodyOpenClose article{
	margin-bottom:20px;
}
.contentsBody100{
	background-repeat:no-repeat;
	background-position:center top;
	background-size: 100% auto;
	padding-top: 10vw;
}
/* concept */
/*
#concept .imgWrap{
	background-image:url(../img/sectionConcept.jpg);
}
*/
/* career */
/*
#career .imgWrap{
	background-image:url(../img/sectionCareer.jpg);
}
*/
/* training */
#training{
	background-image:url(../img/sectionTraining.jpg);
	background-repeat:no-repeat;
	background-size:100% auto;
	background-position:center top;
	width:calc(100% + 20px);
	margin-left:-10px;
	padding-top:50vw;
}
#training h2{
	color:#FFF;
}
.trainingImageWrap {
	display:flex;
	flex-wrap:nowrap;
	justify-content:center;
}
.trainingImageWrap img{
	width:auto;
	max-width:calc((100% / 2) - 2vw);
}
/* course */
#course .contentsBody100{
	position:relative;
	width:calc(100% + 20px);
	margin-left:-10px;
	margin-bottom:3vw;
}
#course h3 span {
	display:inline-block;
	background-color:rgba(255,255,255,.9);
	font-size:7vw;
	margin-bottom:1vw;
}
.contentsBody100.nigiri{
	background-image:url(../img/course001.jpg);
}
.contentsBody100.shikomi{
	background-image:url(../img/course002.jpg);
}
.contentsBody100.basic{
	background-image:url(../img/course003.jpg);
}
.contentsBody100.total{
	background-image:url(../img/course004.jpg);
}
#course article{
	display:block;
	width:calc(100% - 40px);
	margin:0 auto;
	background-color:#FFF;
	border:2px solid #000;
	padding:30px;
}
#course h4{
	font-size:3vw;
	margin-bottom:1vw;
}
#course dl{
	display:flex;
	flex-wrap:wrap;
}
#course dt{
	width:80px;
}
#course dd{
	width:calc(100% - 80px);
}
#course dt,
#course dd{
	margin-bottom:1vw;
}
/*
#course .imgWrap{
	background-image:url(../img/sectionCourse.jpg);
}
*/
#course .imgWrap{
}
.courseList {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	width: calc(100% - (var(--padding-centerContents) * 2));
	margin:0 auto;
	list-style:none;
	background-color:#FFF;
}
.courseList > *{
	display:block;
	width:100%;
}
/* flow */
.contentsFlowBody > div{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	counter-reset: number 0;
	padding-top:var(--flow-cerlce);
	padding-bottom:10px;
}
.contentsFlowBody .flowSection {
	margin-right:5vw;
	border:2px solid #999;
	border-radius:20px;
	display:flex;
	flex-wrap:wrap;
	counter-increment: number 1;
}
.contentsFlowBody .no{
	width:100%;
	margin-top:calc(var(--flow-cerlce) / 2 * -1);
	position:relative;
}
.contentsFlowBody .no:before,
.contentsFlowBody .no:after{
	position:absolute;
	left:0;
	right:0;
	margin:auto;
	display:block;
	content:'';
}
.contentsFlowBody .no:before{
	content: counter(number);
	width: var(--flow-cerlce);
	height: var(--flow-cerlce);
	font-size:calc(var(--flow-cerlce) / 2);
	color: #000;
	z-index:1;
	text-align:center;
	line-height: var(--flow-cerlce);
}
.contentsFlowBody .no:after{
	width: var(--flow-cerlce);
	height: var(--flow-cerlce);
	background-color:#FFF;
	border:1px solid #000;
	border-radius:100%;
	z-index:0;
}
.contentsFlowBody .flowSection .imgWrap{
	width:100%;
	height:30vw;
	background-size:cover;
	background-position:center center;
	border-radius: 20px 20px 0 0;
}
.contentsFlowBody .flowSection:nth-child(1) .imgWrap{
	background-image:url(../img/flow1.jpg);
}
.contentsFlowBody .flowSection:nth-child(2) .imgWrap{
	background-image:url(../img/flow2.jpg);
}
.contentsFlowBody .flowSection:nth-child(3) .imgWrap{
	background-image:url(../img/flow3.jpg);
}
.contentsFlowBody .flowSection:nth-child(4) .imgWrap{
	background-image:url(../img/flow4.jpg);
}
.contentsFlowBody h3{
	padding:1vw 2vw;
	background-color:#FFF;
	width:100%;
}
.contentsFlowBody article{
	width:100%;
	padding:1vw 2vw;
	white-space:initial;
	background-color:#FFF;
	border-radius:0 0 20px 20px;
}
@media screen and (min-width:751px){
	.contentsFlowBody >div {
		justify-content:space-between;
	}
	.contentsFlowBody .flowSection{
		width: calc((100vw / 2) - 5vw);
		/* width: 100%; */
		margin-right: 0;
		margin-bottom:calc(var(--flow-cerlce));
	}
}
@media screen and (max-width:750px){
	.contentsFlowBody{
		overflow:hidden;
		width:100%;
	}
	.contentsFlowBody > div{
		flex-wrap: nowrap;
		overflow-y: hidden;
		overflow-x:scroll;
		justify-content: left;
		width:auto;
		white-space: nowrap;
	}
	.contentsFlowBody .flowSection{
		min-width: calc(100vw - 100px);
	}
	.contentsFlowBody > div::-webkit-scrollbar{
		height: 7px;
	}
	.contentsFlowBody > div::-webkit-scrollbar-track{
		background-color: #9d9c9c;
		border:2px solid #FFF;
	}
	.contentsFlowBody > div::-webkit-scrollbar-thumb{
		background-color: #b96f47;
	}
}

/* corp */
/*
#corp .imgWrap{
	background-image:url(../img/sectionCorp.jpg);
}
*/
#corp h3{
	background-color:#FFF;
	width: 50vw;
	padding: 2vw 3vw;
	right: 0;
	margin: 0 0 0 auto;
}
#corp dl {
	display:flex;
	flex-wrap:wrap;
	width: 100%;
	margin: 0 0 0 auto;
}
#corp dt {
	width:150px;
}
#corp dd {
	width:calc(100% - 150px);
}
#corp dt ,
#corp dd {
	background-color:#FFF;
	margin-bottom:1vw;
	padding:2vw 1vw;
	text-align: left;
}
@media screen and (max-width:750px){
	#corp dl {
		width:100%;
	}
	#corp dt ,
	#corp dd {
		background-color:transparent;
	}	
}

/* access */
#access iframe {
	width:100%;
	height:50vw;
}

/* form */
#form dl {
	display:flex;
	flex-wrap:wrap;
}
#form dl dt{
	width:200px;
	font-weight:bold;
}
#form dl dd{
	width:calc(100% - 200px);
}
#form dl dt,
#form dl dd{
	padding:1vw 2vw;
}
.nameWrap input,
.kanaWrap input{
	width:calc((100% / 2) - 10px);
	padding:5px 5px 5px 20px;
}
.couresWrap > div{
	margin-bottom:10px;
}
.couresWrap article{
	padding-left:15px;
}
.telWrap input,
.mailWrap input{
	width:calc(100% - 20px);
	padding:5px 5px 5px 20px;
}
.bikoWrap textarea{
	width:calc(100% - 20px);
	height:150px;
}
.submitWrap {
	text-align:center;
	width:80%;
	margin:0 auto;
}
.submitWrap input{
	padding: 5px 5px 5px 15px;
	letter-spacing:10px;
	display:block;
	margin:0 auto 10px auto;
	background: #331908;
	color: #FFF;
	border: 0px;
	width: 100%;
	font-size: 4vw;
}
.submitWrap p{
	width:100%;
	text-align:left;
}
@media screen and (max-width:750px){
	#form dl dt,
	#form dl dd{
		width:100%;
	}
	.nameWrap input,
	.kanaWrap input{
		width:calc((100% / 2) - 3px);
	}
	.telWrap input,
	.mailWrap input,
	.bikoWrap textarea{
		width:100%;
	}
}
/**
 * footer
 */
footer {
	background-color:rgba(233,233,233,.9);
	text-align:center;
	padding-top:5vw;
}
footer ul{
	list-style:none;
	display:flex;
	justify-content:center;
}




/**
 * 確認用
 */
section{
	/*border:1px solid #000;*/
}

@charset "UTF-8";
/**
 * defining
 * 		SP切替サイズ750以下
 */
