
/* ============================================================
PC（画面の横幅が762px以上）
==============================================================*/

@media (min-width: 762px) {
	
	
	/* =========================================================================
 	common tilte
	===========================================================================*/
	
	.line_box{
		position:relative;
		text-align: center;
		padding: 0 0 26px;
	}
	
	.line_box .ttl_eng{
		font-family: 'Ubuntu', sans-serif;
		font-weight: 200;
		font-size: 5.2rem;
		background: linear-gradient( to right,  #7dbfeb 25%, #46a5e4 75% );
		-webkit-background-clip: text;
		color: transparent;
		line-height:120%;
	}
	
	.line_box:before{
		content: "";
		display: block;
		width: 0;
		height: 1px;
		background: #57a9e0;
		position: absolute;
		bottom:0;
		left: 50%;
		transform:translate(-50%,0);
		transition: all 0.5s cubic-bezier(0, 0, 0.1, 1.22) 0s;
	}
	
	.line_box_act:before{
		width: 36px;
	}
	
	
	/* =========================================================================
 	second main tilte
	===========================================================================*/
	
	#main_ttl_wrap{
		width: 100%;
		height:260px;
		overflow: hidden;
		position: relative;
	}
	
	#main_ttl_wrap .main_ttl_img{
		width: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform:translate(-50%, -50%) scale(1);
		
	}
	
	#main_ttl_wrap .main_ttl_img_act{
		transition: all 40s cubic-bezier(0,0,0,0) 0s;
		transform:translate(-50%, -50%) scale(1.4);
	}
	
	#main_ttl_wrap #main_ttl_box {
		position: absolute;
		top: 50%;
		left: 50%;
		transform:translate(-50%, -50%);
	}

	
	#main_ttl_wrap .m_line_box{
		position:relative;
		text-align: center;
	}
	
	#main_ttl_wrap .m_line_box:before{
		content: "";
		display: block;
		width: 0;
		height: 1px;
		background: #fff;
		position: absolute;
		bottom: 38%;
		left: 50%;
		transform:translate(-50%, -50%);
		transition: all 1s cubic-bezier(0, 0, 0.1, 1.22) 0s;
	}
	
	#main_ttl_wrap .m_line_box_act:before{
		width: 100%;
	}
	
	#main_ttl_wrap h1{
		font-family: 'Noto Serif JP', serif;
		font-weight: 400;
		font-size: 2.8rem;
		display: inline-block;
		padding: 0 20px 20px;
		line-height: 100%;
		color: #fff;
	}
	
	#main_ttl_wrap span{
		font-family: 'Ubuntu', sans-serif;
		font-weight: 400;
		font-size: 1.4rem;
		display: block;
		padding: 10px 10px 0;
		line-height: 100%;
		color: #fff;
	}
	
	#main_body_wrap{
		width: 100%;
		background: #f0faff;
		padding: 60px 0;
	}
	
	#main_body_wrap p{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.6rem;
		line-height: 200%;
		text-align: center;
	}
	
	#main_body_wrap2{
		width: 100%;
		padding: 50px 0;
	}
	
	#main_body_wrap2 p{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		letter-spacing: 1px;
		line-height: 200%;
		text-align: center;
	}
	
	/* =========================================================================
 	third main tilte
	===========================================================================*/
	
	#main_ttl_box2{
		width: 910px;
		margin: -100px auto 0;
		padding: 40px 0 0;
		background: #fff;
		position: relative;
	}
	
	#main_ttl_box2 h1{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 3.4rem;
		display: inline-block;
		padding: 10px 20px 0;
		line-height: 100%;
		letter-spacing:4px;
		color: #57a9e0;
	}
	
	#main_ttl_box2 h1.ls0{
		letter-spacing:0;
	}

	#third_con .line_box .ttl_eng{
		font-size: 2.4rem;
		/* font-weight: 400; */
		letter-spacing: 1px;
	}
	
	/* =========================================================================
 	third nav
	===========================================================================*/
	
	#third_con #nav_swiper_ttl{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 2.0rem;
		color: #000;
		text-align: center;
	}
	
	#third_con .nav_swiper_wrap{
		width: 100%;
		background: #f2f2f5;
		padding: 30px 0 40px;
	}
	
	#third_con .nav_swiper_wrap .swiper-wrapper{
		width: 1096px;
		margin: 10px auto 0;
		display: flex;
		justify-content:space-between;
	}
	
	.con_ryugaku .nav_swiper_wrap .swiper-wrapper{
		width: 490px !important;
	}
	
	
	#third_con .nav_swiper_wrap .swiper-slide{
		width: 100px;
	}
	#third_con .nav_swiper_wrap .img_box{
		width: 80px;
		height: 80px;
		border-radius: 50%;
		margin: 0 auto 2px;
		overflow: hidden;
	}
	
	#third_con .nav_swiper_wrap h3{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.2rem;
		text-align: center;
		transition: all 0.5s ease 0s;
	}

	#third_con .nav_swiper_wrap a{
		display:block;
	}
	#third_con .nav_swiper_wrap a .img_box{
		transition: all 0.5s cubic-bezier(0.13, 0.36, 0.5, 1.9) 0s;
	}

	#third_con .nav_swiper_wrap a:hover .img_box{
		opacity: 0.5;
		transform:scale(1.1);
	}

	#third_con .nav_swiper_wrap a:hover h3{
		color:#57a9e0;

	}
	
	/* =========================================================================
 	common scroll
	===========================================================================*/
	
	.scroll_v{
			z-index: 7000;
			width: 50px;
			position: absolute;
			bottom: 20px;
			left: 95%;
			transform:translate(-50%, 0);
	}

	.scroll_v a {
			display:block;
			font-family: 'Lato', sans-serif;
			font-weight: 300;
			font-size: 1.4rem;
			text-align: center;
			color: #e7bf69;
			letter-spacing: 2px;
	}

	.scroll_v a span{
			display: block;
			width: 2px;
			background: rgba(231,191,105,0.3);
			padding: 50px 0px;
			margin: 0 0 12px 28px;
			text-align: center;
			position: relative;
	}
		
	.scroll_v a span:before {
  			position: absolute;
  			top: 5px;
  			right: 0;
  			content:"";
  			width: 2px;
  			height: 16px;
  			background-color: #e7bf69;
  			animation: sdb 2s infinite;
  	}
	
	
	/* =========================================================================
 	LINK
	===========================================================================*/
	
	
	
	
	
	/* =========================================================================
 	inview anime
	===========================================================================*/
	
	.lazy_l_space{
		opacity:0;
		letter-spacing: -10px;
	}
	.lazy_l_space_act{
		opacity:1;
		letter-spacing: 3px;
		transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	
	.lazy_fadein{
		opacity:0;
	}
	.lazy_fadein_act{
		opacity:1;
		transition: all 0.5s cubic-bezier(0, 0, 0, 0);
	}
	
	.lazy_fadeinLeft{
		opacity:0;
		transform: translate(-50px,0); 
	}
	.lazy_fadeinRight{
		opacity:0;
		transform: translate(50px,0); 
	}
	
	.lazy_fadeinLeft_active,.lazy_fadeinRight_active{
		transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
		transform: translate(0,0); 
		opacity:1;
	}

	
	.lazy_fadeinUp,.lazy_fadeinUpA,.lazy_fadeinUpB,.lazy_fadeinUpC,.lazy_fadeinUpD{
		opacity:0;
		transform: translate(0,10px); 
	}
	
	
	.lazy_fadeinUp_active{
		transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
		transform: translate(0,0); 
		opacity:1;
	}
	
	.lazy_fadeinDownA,.lazy_fadeinDownB,.lazy_fadeinDownC,.lazy_fadeinDownD{
		opacity:0;
		transform: translate(0,-10px); 
	}
	
	.lazy_fadeinDown_active{
		transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
		transform: translate(0,0); 
		opacity:1;
	}
	
	.lazy_fadeinUpCenter{
		opacity:0;
		transform:translate(-50%, -60%);
	}
	
	.lazy_fadeinUpCenter_active{
		transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
		transform:translate(-50%, -50%);
		opacity:1;
	}
	
	.lazy_fadeinScaleA,.lazy_fadeinScaleB,.lazy_fadeinScaleC,.lazy_fadeinScaleD{
		opacity:0;
		transform: scale(1.2);
	}
	.lazy_fadeinScale_active{
		transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
		transform: scale(1);
		opacity:1;
	}
	
	
	
}


/* ============================================================
PC（IE11対応）
==============================================================*/

@media (-ms-high-contrast:none) {

	.line_box .ttl_eng{
		font-family: 'Ubuntu', sans-serif;
		font-weight: 200;
		font-size: 5.2rem;
		background:none;
		color:#57a9e0;
		line-height: 100%;
	}

	#third_con .line_box .ttl_eng{
		font-size: 2.4rem;
	}
	
}


	
@keyframes sdb {
  			0% {
    			transform: translate(0, -10px);
    			opacity: 0;
    			height:50px;
  			}
  			50% {
    			opacity: 1;
  			}
  			80% {
    			transform: translate(0, 100px);
    			opacity: 0;
    			height:0;
  			}
  			100% {
    			opacity: 0;
  			}
		}

