@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Maru+Gothic:wght@400;500;700&display=swap');
@font-face {
	font-family: 'HuiFontP';
	src: url('../fonts/HuiFontP29.ttf') format('truetype');
}

body {
	-webkit-text-size-adjust: 100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:32px;
	text-align:center;
	color:#3C3C3C;
	line-height:1.5;
}
@media screen and (max-width:768px){
	body {
		font-size:4.3vw;
	}
}

.maru{
	font-family: "Zen Maru Gothic", serif;
}

.hui{
	font-family: 'HuiFontP';
}

a {
	color:#3C3C3C;
	transition : opacity 0.4s;
	-webkit-transition : opacity 0.4s;
	opacity:1;
	outline:none;
}
a:hover {
	opacity: 0.8;
}

img{
	max-width:100%;
}

.only_smart,
.only_smart_i{
	display:none !important;
}
@media screen and (max-width:768px){
	.only_pc{
		display:none !important;
	}
	
	.only_smart{
		display:block !important;
	}
	.only_smart_i{
		display:inlie-block !important;
	}
}

#wrapper{
	max-width:750px;
	margin:auto;
	background-color:#fff;
	box-shadow:0 0 10px rgba(0,0,0,0.1);
}

.inner{
	max-width:690px;
	width:92%;
	margin:auto;
}


/* 色関係 */
.blue{
	color:#218DA2;
}
.bg_blue{
	color:#fff;
	background-color:#218DA2;
}
.bg_sky{
	background-color:#F1FDFF;
}
.yellow{
	color:#F3ED20;
}
.red{
	color:#E0165B;
}



/* 書式 */
.bold{
	font-weight:bold;
}



/* header */
header{
}

@media screen and (max-width:768px){
}


/* article */
article{
}
@media screen and (max-width:768px){
	article{
	}
}




/* .cta */
.cta{
}
.cta.first{
	margin-top:-15px;
	padding-top:0;
}
.cta .top.maru .large{
	font-size:40px;
}
.cta .inner{
	margin-top:0.5em;
	border-radius:0.7em;
	box-shadow:0 3px 6px rgba(0,0,0,0.2);
	overflow:hidden;
}
.cta .inner h2{
	padding:0.5em 0;
	font-size:47px;
	font-weight:500;
}
.cta .inner h2 .large{
	line-height:0;
	font-size:71px;
}
.cta .inner .bg_sky{
	padding:3% 3% 5%;
	border:8px solid #218DA2;
	border-top:none;
	border-radius:0 0 0.7em 0.7em;
}
.cta .inner .bg_sky .flex{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.cta .inner .bg_sky .flex li{
	width:32.5%;
}
.cta .inner .bg_sky .pr{
	font-size:40px;
	font-weight:500;
}
.cta .inner .bg_sky .pr .large{
	font-size:60px;
}

@media screen and (max-width:768px){
	.cta.first{
		margin-top:-1.5%;
	}
	.cta .top.maru .large{
		font-size:5.3vw;
	}
	.cta .inner h2{
		font-size:6.3vw;
	}
	.cta .inner h2 .large{
		font-size:9.5vw;
	}
	.cta .inner .bg_sky{
		border-width:1vw;
	}
	.cta .inner .bg_sky .pr{
		font-size:5.3vw;
	}
	.cta .inner .bg_sky .pr .large{
		font-size:8vw;
	}
}


/* .animation */
.animation {
  visibility: visible !important;
  animation-fill-mode: both !important;
  -webkit-animation-fill-mode: both !important;
  -webkit-animation-iteration-count: infinite !important;
  animation-iteration-count: infinite !important;
  -webkit-animation: bounceBtn 1.8s;
  animation: bounceBtn 1.8s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
}

@-webkit-keyframes bounceBtn {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  25% {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
  }
  40% {
    -webkit-transform: scale(0.94);
    transform: scale(0.94);
  }
  50% {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
  }
  60% {
    -webkit-transform: scale(0.97);
    transform: scale(0.97);
  }
  70% {
    -webkit-transform: scale(1.01);
    transform: scale(1.01);
    opacity: 1;
  }
  80% {
    -webkit-transform: scale(0.98);
    transform: scale(0.98);
  }
  90% {
    -webkit-transform: scale(1.005);
    transform: scale(1.005);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes bounceBtn {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  25% {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
  }
  40% {
    -webkit-transform: scale(0.94);
    transform: scale(0.94);
  }
  50% {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
  }
  60% {
    -webkit-transform: scale(0.97);
    transform: scale(0.97);
  }
  70% {
    -webkit-transform: scale(1.01);
    transform: scale(1.01);
    opacity: 1;
  }
  80% {
    -webkit-transform: scale(0.98);
    transform: scale(0.98);
  }
  90% {
    -webkit-transform: scale(1.005);
    transform: scale(1.005);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}


/* .cont */
.cont{
	padding:50px 0 70px;
}
@media screen and (max-width:768px){
	.cont{
		padding:7% 0 9%;
	}
}


/* #cont1 */
#cont1{
	padding-top:15px;
}
#cont1 .inner{
	padding:3% 3% 0;
	border:1px solid #218DA2;
	box-shadow:0 3px 6px rgba(0,0,0,0.2);
	position:relative;
}
#cont1 .inner:before{
	content:'';
	width:72px;
	height:60px;
	background-color:#F1FDFF;
	clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
	position:absolute;
	left:8%;
	bottom:calc(100% - 2px);
	z-index:1;
}
#cont1 .inner:after{
	content:'';
	width:72px;
	height:60px;
	background-color:#218DA2;
	clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
	position:absolute;
	left:8%;
	bottom:100%;
}
#cont1 .inner h2{
	font-size:50px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	text-align:left;
}
#cont1 .inner h2 img{
	width:20%;
	margin:0 0.5em 0.5em 0;
}
#cont1 .inner h2 span .large{
	line-height:1;
	font-size:60px;
}
#cont1 .inner h3{
	font-size:40px;
	font-weight:normal;
	text-align:left;
}
#cont1 .inner p{
	text-align:left;
}
#cont1 .inner > img{
	margin-top:0.5em;
}


@media screen and (max-width:768px){
	#cont1{
		padding-top:1.5%;
	}
	#cont1 .inner:before{
		width:9.6vw;
		height:8vw;
	}
	#cont1 .inner:after{
		width:9.6vw;
		height:8vw;
	}
	#cont1 .inner h2{
		font-size:6.7vw;
	}
	#cont1 .inner h2 span .large{
		font-size:8vw;
	}
	#cont1 .inner h3{
		font-size:5.3vw;
	}
}


/* #cont2 */
#cont2{
	padding-top:0;
}
#cont2:before{
	content:'CAREER CAFE';
	line-height:1;
	font-size:109px;
	font-weight:bold;
	font-family: "Zen Maru Gothic", serif;
	color:rgba(255,255,255,0.17);
}
#cont2 h2{
	margin-top:-1.3em;
}
#cont2 h2 .small{
	display:block;
}
#cont2 h2 .small .large{
	line-height:1;
	font-size:40px;
}
#cont2 h2 .waku{
	margin-top:0.3em;
	padding:0 0.7em;
	display:inline-block;
	font-size:60px;
	border:1px solid;
	position:relative;
}
#cont2 h2 .waku:after{
	content:'';
	display:block;
	width:100%;
	height:100%;
	border:1px solid;
	position:absolute;
	left:0;
	top:0;
	transform:translate(0.15em,0.15em);
}
#cont2 .inner{
	width:86%;
}
#cont2 .result li{
	margin-top:5%;
}
#cont2 .result li:nth-child(n+2){
	margin-top:9%;
}

@media screen and (max-width:768px){
	#cont2:before{
		font-size:14.5vw;
	}
	#cont2 h2 .small .large{
		font-size:5.3vw;
	}
	#cont2 h2 .waku{
		font-size:8vw;
	}
}


/* #cont3 */
#cont3{
}
#cont3 h2 .top{
	display:block;
	font-size:40px;
}
#cont3 h2 .middle{
	display:block;
	margin-top:0.3em;
	font-size:50px;
}
#cont3 h2 .large{
	line-height:1;
	font-size:80px;
}
#cont3 h2 .small{
	margin-top:0.5em;
	display:block;
}
#cont3 h3{
	margin-top:1em;
	font-size:40px;
	font-weight:normal;
}
#cont3 .job li{
	margin-top:5%;
	padding:4%;
	background-color:#fff;
	box-shadow:0 3px 6px rgba(0,0,0,0.2);
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
#cont3 .job li dl{
	width:51%;
	text-align:left;
}
#cont3 .job li dl dt{
	font-size:50px;
	font-weight:bold;
	border-bottom:1px solid;
	white-space:nowrap;
}
#cont3 .job li dl dt.small{
	font-size:47px;
}
#cont3 .job li dl dd{
	margin-top:0.8em;
	white-space:nowrap;
}
#cont3 .job li figure{
	width:45%;
}
#cont3 .bottom{
	margin-top:1.5em;
	font-weight:500;
}
#cont3 .pr{
	margin-top:9%;
}
#cont3 .pr dt{
	font-size:40px;
	font-weight:bold;
}
#cont3 .pr dd{
	margin-top:0.3em;
	padding:0 5%;
}

@media screen and (max-width:768px){
	#cont3 h2 .top{
		font-size:5.3vw;
	}
	#cont3 h2 .middle{
		font-size:6.7vw;
	}
	#cont3 h2 .large{
		font-size:10.7vw;
	}
	#cont3 h3{
		font-size:5.3vw;
	}
	#cont3 .job li dl dt{
		font-size:6.7vw;
	}
	#cont3 .job li dl dt.small{
		font-size:6.3vw;
	}
	#cont3 .pr dt{
		font-size:5.3vw;
	}
}


/* #cont4 */
#cont4{
}
#cont4 h2 img{
	width:4em;
	display:block;
	margin:0 auto 0.5em;
}
#cont4 h2 .large{
	margin-top:0.1em;
	display:block;
	font-size:60px;
}
#cont4 .slick{
	margin-top:3%;
	display:none;
}
#cont4 .slick.slick-initialized{
	display:block;
}
#cont4 .slick .item{
	padding:0 1em;
}

@media screen and (max-width:768px){
	#cont4 h2 .large{
		font-size:8vw;
	}
}


/* #cont5 */
#cont5{
	background-color:#DADADA;
}
#cont5 .check{
	margin-top:5%;
}
#cont5 .check li{
	padding:0.5em 0 0.5em 2.2em;
	text-align:left;
	background:url(../images/cont5_check.png)no-repeat left center;
	background-size:1.8em auto;
	border-bottom:2px dashed #fff;
	white-space:nowrap;
}
#cont5 .check li .blue{
	background:linear-gradient(to bottom, transparent 60%, #fff 60%);
}
#cont5 .bottom{
	margin-top:3%;
	font-size:40px;
	font-weight:bold;
}

@media screen and (max-width:768px){
	#cont5 .bottom{
		font-size:5.3vw;
	}
}


/* #cont6 */
#cont6{
	padding-top:0;
	background:
		url(../images/cont6_3.webp)no-repeat center bottom,
		url(../images/cont6_bg.webp)no-repeat center top;
	background-size:100% auto, cover;
}
#cont6 .top{
	display:block;
	width:11.5em;
	margin:auto;
	transform:translateY(-25%);
}
#cont6 h2{
	margin-top:-0.5em;
	line-height:2;
}
#cont6 h2 > span{
	padding:0 0.3em;
	display:inline-block;
	background-color:rgba(255,255,255,0.9);
}
#cont6 h2 .small{
	margin-bottom:0.5em;
	line-height:1.8;
	font-weight:normal;
}
#cont6 h2 .blue{
	margin-top:0.2em;
	padding:0 0.2em;
	line-height:1.3;
	font-size:60px;
}
#cont6 .inner{
	width:88%;
	margin-top:5%;
}
#cont6 .inner figcaption{
	width:92%;
	margin:-9% auto 0;
	padding:3% 5%;
	background-color:rgba(255,255,255,0.9);
	position:relative;
	border:4px solid #218DA2;
	border-radius:1em;
}
#cont6 .inner figcaption span{
	height:calc(10em - 3px);
	line-height:2;
	display:block;
	text-align:left;
	background:url(../images/cont6_line.png)left top;
	background-size:auto 2em;
}
#cont6 .bottom{
	margin-top:5%;
	font-size:40px;
	color:#fff;
}

@media screen and (max-width:768px){
	#cont6 h2 .blue{
		font-size:8vw;
	}
	#cont6 .inner figcaption{
		border:0.5vw solid #218DA2;
	}
	#cont6 .bottom{
		font-size:5.3vw;
	}
}


/* #cont7 */
#cont7 .secret > li{
	margin-top:5%;
}
#cont7 .secret > li .fig figcaption{
	margin-bottom:0.3em;
	font-weight:bold;
}
#cont7 .secret > li .fig figcaption .large{
	margin-left:0.1em;
	line-height:1;
	font-size:120px;
}
#cont7 .secret > li > section{
	padding:5% 0 5%;
	background-color:#fff;
	border-radius:0 0 1em 1em;
	color:#3C3C3C;
}
#cont7 .secret > li > section h3{
	font-size:60px;
}
#cont7 .secret > li > section > p{
	margin-top:1em;
	padding:0 5%;
	text-align:left;
}
#cont7 .secret > li > section .exam{
	margin-top:1em;
	font-size:24px;
	font-weight:normal;
}
#cont7 .secret > li > section .point{
	margin-top:0.5em;
	padding:4%;
	background:url(../images/cont7_bg.png);
	background-size:35px auto;
	border:1px solid #218DA2;
	box-shadow:0 3px 6px rgba(0,0,0,0.2);
	text-align:left;
}
#cont7 .secret > li > section .point h5{
	font-weight:normal;
}
#cont7 .secret > li > section .point ul{
	margin-top:1em;
}
#cont7 .secret > li > section .point p{
	margin-top:1em;
	font-size:30px;
	text-decoration:underline;
	white-space:nowrap;
}
#cont7 .secret > li > section .bottom{
	margin-top:1.5em;
}

@media screen and (max-width:768px){
	#cont7 .secret > li .fig figcaption .large{
		font-size:16vw;
	}
	#cont7 .secret > li > section h3{
		font-size:7.6vw;
	}
	#cont7 .secret > li > section .exam{
		font-size:3.2vw;
	}
	#cont7 .secret > li > section .point{
		background-size:20px auto;
	}
	#cont7 .secret > li > section .point p{
		font-size:4vw;
	}
}


/* #cont8 */
#cont8{
	margin-top:-4%;
	padding-top:0;
}
#cont8 .more{
	margin-top:12%;
	padding:0 5% 5%;
	border:2px solid #218DA2;
}
#cont8 .more h3{
	width:3.8em;
	line-height:3.8em;
	margin:auto;
	border-radius:50%;
	transform:translateY(-50%);
}
#cont8 .more p{
	margin-top:-1em;
	text-align:left;
}
#cont8 .more figure{
	margin-top:1em;
}


/* #cont9 */
#cont9{
	padding-top:0;
}
#cont9:before{
	content:'FLOW';
	line-height:1;
	font-size:84px;
	font-weight:bold;
	font-family: "Zen Maru Gothic", serif;
	color:#fff;
}
#cont9 h2{
	margin-top:-0.8em;
	font-size:50px;
}
#cont9 .inner{
	margin-top:3%;
}
#cont9 .inner li{
	padding:3% 0 8%;
	background:url(../images/cont9_arrow.png)no-repeat center bottom;
	background-size:100% auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
#cont9 .inner li:last-child{
	background-image:none;
}
#cont9 .inner li section{
	width:74%;
	text-align:left;
}
#cont9 .inner li section h3{
	display: -webkit-flex;
	display: flex;
}
#cont9 .inner li section h3 .num{
	width:2em;
	display:block;
	background:url(../images/cont9_tit.png)no-repeat center center;
	background-size:100% auto;
	text-align:center;
	color:#fff;
}
#cont9 .inner li section h3 .line{
	border-bottom:2px solid;
}
#cont9 .inner li section p{
	margin-top:0.5em;
	font-size:24px;
}
#cont9 .inner li figure{
	width:23%;
}

@media screen and (max-width:768px){
	#cont9:before{
		font-size:11.2vw;
	}
	#cont9 h2{
		font-size:6.7vw;
	}
	#cont9 .inner li section h3 .line{
		border-bottom:0.3vw solid;
	}
	#cont9 .inner li section p{
		font-size:3.1vw;
	}
}


/* #cont10 */
#cont10{
	padding:0 0 1%;
	background:url(../images/cont10_bg.webp)no-repeat center center;
	background-size:cover;
	position:relative;
}
#cont10:before{
	content:'';
	display:block;
	width:92%;
	height:94%;
	border:4px solid #fff;
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
}
#cont10 h2{
	position:relative;
}
#cont10 > div{
	line-height:2.17;
	font-size:24px;
	background:url(../images/cont10_line.png)repeat-y center center;
	background-size:100% 2.17em;
}
#cont10 > div p{
	max-width:640px;
	width:86%;
	text-align:left;
}
#cont10 > div p:nth-child(n+2){
	margin-top:2.17em;
}
#cont10 > img{
	margin-top:-1.5%;
	position:relative;
}

@media screen and (max-width:768px){
	#cont10:before{
		border:0.53vw solid #fff;
	}
	#cont10 > div{
		font-size:3.2vw;
	}
}


/* footer */
footer{
	padding:0 0 240px;
}
footer dl dt{
	font-size:24px;
}
footer dl dd a{
	font-size:16px;
}
footer .copy{
	margin-top:1em;
	font-size:24px;
}

@media screen and (max-width:768px){
	footer{
		padding:0 0 33%;
	}
	footer dl dt{
		font-size:4vw;
	}
	footer dl dd a{
		font-size:3.2vw;
	}
	footer .copy{
		font-size:3.4vw;
	}
}


/* top_top */
#topbtn{
	width:50px;
	line-height:50px;
	font-size:21px;
	border-radius:50%;
	color:#fff;
	background-color:rgba(0,0,0,0.5);
	position:fixed;
	z-index:102;
	right:20px;
	bottom:-150px;
	-webkit-transition: bottom 0.8s;
	-moz-transition: bottom 0.8s;
	-ms-transition: bottom 0.8s;
	transition: bottom 0.8s;
}
@media screen and (max-width:768px){
	#topbtn{
		width:40px;
		line-height:40px;
		font-size:18px;
		right:15px;
	}
}


/* #bottom_banner */
#bottom_banner{
	width:100%;
	padding:15px 0;
	background-color:rgba(33,141,162,0.7);
	position:fixed;
	bottom:0;
	left:0;
	z-index:99;
	-webkit-transition: bottom 0.8s;
	transition: bottom 0.8s;
}
#bottom_banner div{
	max-width:750px;
	margin:auto;
}
#bottom_banner div dt{
	font-size:30px;
	font-weight:500;
	color:#fff;
}
#bottom_banner div dd{
	padding:0 9%;
}

@media screen and (max-width:768px){
	#bottom_banner{
		padding:3% 0;
	}
	#bottom_banner div dt{
		font-size:3.6vw;
	}
}