/*===============================================
SP
===============================================*/



/*========================================================================
// common
//========================================================================*/
@media (max-width:761px) {
	
	.local-MainContainer{
		width: 100vw;
		max-width:100vw !important;
		padding:0 !important;
		margin:0 !important;
	}

	#cuvis{
		width: 100%;
		position: relative;
	}


	#cuvis ul, #cuvis ol, #cuvis dl, #cuvis dd {
		padding: 0;
		margin: 0;
		list-style: none;
	}
	
	
	.ch{
		display:inline-block;
		transform: translate(0,100%);
	}

	.lazy_TxtUp_act .ch{
		transform: translate(0,0);
	}
	
	.pc_contents {
		display: none;
	}

}


/*========================================================================
// contents
//========================================================================*/

@media (max-width:761px) {
	/* ============================================================
 	fv_wrap
	==============================================================*/
	#fv_wrap {
		width: 100vw;
		height: 690px;
		background: url("../img/fv_bg_sp.jpg")no-repeat center 0;
		background-size: cover;
		overflow: hidden;
		position: relative;
		/* margin: -4px 0 0; */
	}

	#fv_wrap .ci_box{
		width: 90vw;
		margin: 60px auto 0;
	}

	#fv_wrap h1{
		color: #696869;
		font-size: calc(100vw / 37.5 * 2.0);
		letter-spacing: calc(100vw / 37.5 * 0.1);
		font-weight: 500;
		line-height: 1.45;
		font-feature-settings: 'palt';
		padding: 19px 20px;
	}
	
	#fv_wrap h1 span{
		display: block;
	}

	#fv_wrap .img_p1{
		width: 44vw;
		position:absolute;
		bottom: 45px;
		left: calc(50% - 17vw);
		transform: translate(-50%, 0);
	}

	#fv_wrap .img_p2{
		width: 44vw;
		position:absolute;
		bottom: 70px;
		left: calc(50% + 14vw);
		transform: translate(-50%, 0);
	}

	
	
	/* ============================================================
 	section 00
	==============================================================*/
	
	#sec00 {
		width: 100vw;
		padding: 100px 0 140px;
	}
	
	#sec00 .wrapper{
		box-sizing: border-box;
		padding: 0 6%;
		width: 100vw;
		justify-content:space-between;
	}

	#sec00 .p_wrap{
		width: 100%;
		margin: 0 auto;
		position:relative;
	}

	#sec00 .p_wrap .img_box{
		width: 32vw;
		margin: 0 3vw 0 auto;
	}

	#sec00 .p_wrap ul{
		top: -38px;
		left: -1vw;
		position:absolute;
	}

	#sec00 .p_wrap li{
		box-sizing:border-box;
		font-size: calc(100vw / 37.5 * 3.6);
		letter-spacing: 0;
		font-weight: 600;
		line-height: 1.4;
		font-feature-settings: 'palt';
		padding: 20px 0 0 10px;
		margin:0 0 20px;
		color: #1e98ac;
		border-top: 1px solid #1e98ac;
	}

	#sec00 .p_wrap li:nth-child(1){
		border-top:none;
	}
	#sec00 .p_wrap li:nth-child(2){

	}
	#sec00 .p_wrap li:nth-child(3){
		font-size: 20px;
		line-height: 1.2;
	}

	#sec00 .p_wrap li .s1{
		display:block;
		font-size: calc(100vw / 37.5 * 1.6);
		letter-spacing: calc(100vw / 37.5 * 0.1);
		font-weight: 600;
		line-height: 1.2;
	}

	#sec00 .p_wrap li sup{
		font-size: calc(100vw / 37.5 * 1.0);
		top: -0.7em;
	}

	#sec00 .p_wrap li .nn_txt{
		display:block;
		font-size: calc(100vw / 37.5 * 1.2);
		letter-spacing: calc(100vw / 37.5 * 0.1);
		font-weight: 400;
		line-height: 1.4;
		padding:18px 0 0 1em;
		text-indent:-1em;
	}

	#sec00 .p_wrap li .s1 span{
		display:block;
		font-size: calc(100vw / 37.5 * 1.3);
		margin:0 0 10px;
	}

	#sec00 .p_wrap li .s2{
		display:inline-block;
		font-size: calc(100vw / 37.5 * 1.3);
		letter-spacing: calc(100vw / 37.5 * 0.1);
		font-weight: 600;
		line-height: 1.4;
		padding: 0 0 0 4px;
		vertical-align: text-top;
		margin: 22px 0 0;
	}

	#sec00 .p_wrap li:nth-child(3) .s2{
		display:inline-block;
		font-size: calc(100vw / 37.5 * 1.2);
		letter-spacing: calc(100vw / 37.5 * 0.1);
		font-weight: 600;
		line-height: 1.4;
		padding: 0;
		vertical-align: text-top;
		margin: 7px 0 0;
	}

	#sec00 .p_wrap li .s3{
		display:block;
		font-size: calc(100vw / 37.5 * 1.2);
		letter-spacing: calc(100vw / 37.5 * 0.1);
		font-weight: 600;
		line-height: 1.4;
		padding:0 0 0 2px;
		vertical-align: text-top;
		margin: -3px 0 0;
	}

	#sec00 .txt_wrap{
		width: 100%;
		margin: -100px 0 0;
	}
	
	
	#sec00 h2 {
		font-family: 'Roboto', sans-serif;
		border-bottom: 1px solid #000;
		font-size: calc(100vw / 37.5 * 3.6);
		letter-spacing: 0;
		font-weight: 600;
		line-height: 1.2;
		font-feature-settings: 'palt';
		padding: 0 0 22px;
		margin: 0 0 24px;
	}
	
	#sec00 p.body_txt {
		font-size: calc(100vw / 37.5 * 1.5);
		letter-spacing: calc(100vw / 37.5 * 0.1);
		font-weight: 500;
		line-height: 2.0;
		font-feature-settings: 'palt';
		padding: 0 0 40px;
	}

	#sec00 p.note_txt {
		font-size: calc(100vw / 37.5 * 1.4);
		letter-spacing: calc(100vw / 37.5 * 0.1);
		font-weight: 400;
		line-height: 2.0;
		font-feature-settings: 'palt';
		padding: 0 0 0 20px;
		margin:-14px 0 0;
	}

	#sec00 .txt_wrap li{
		font-size: calc(100vw / 37.5 * 1.6);
		letter-spacing: calc(100vw / 37.5 * 0.1);
		font-weight: 600;
		line-height: 1.4;
		font-feature-settings: 'palt';
		padding:0 0 16px 20px;
		position:relative;
	}

	#sec00 .txt_wrap li:before{
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-radius:50%;
		background:#1e98ac;
		position: absolute;
		top: 8px;
		left:0;
	}
	
	
	
	/* ============================================================
 	section 01
	==============================================================*/
	
	#sec01 {
		width: 100vw;
		position: relative;
		padding: 0 0 50px;
		margin: -190px 0 0;
	}

	#sec01 .bg_h{
		width: 170vw;
		position:absolute;
		top: 0;
		right:0;
		z-index: -1;
	}

	#sec01 .bg_f{
		width: 180vw;
		position:absolute;
		bottom: 0;
		left:0;
		transform:scaleX(-100%);
		z-index: -2;
	}

	#sec01 .wrapper{
		padding: 180px 6% 0;
		position: relative;
	}
	
	#sec01 .eng_txt{
		display: block;
		font-family: 'Roboto', sans-serif;
		font-weight: 400;
		font-size: calc(100vw / 37.5 * 7.8);
		line-height: 1.2;
		letter-spacing: calc(100vw / 37.5 * 0.2);
		background: linear-gradient( to right,  #2fc0d3 25%, #0099ad 75% );
		-webkit-background-clip: text;
		color: transparent;
		position: absolute;
		left: 50%;
		top: 144px;
		transform: translate(-50%, 0);
		z-index: 2;
	}

	#sec01 .sys_wrap{
		margin: 0 0 100px;
		position:relative;
	}

	#sec01 .sys_wrap .img_box{
		width: 70vw;
		margin:0 auto;
		position: relative;
	}

	#sec01 .sys_wrap .txt_wrap{
		position:relative;
		width: 100%;
		padding: 30px 0 0;
	}

	#sec01 .c2 .txt_wrap,#sec01 .c4 .txt_wrap{
		margin:0 0 0 auto;
	}

	#sec01 .c1{
		padding: 90px 0 50px;
	}

	#sec01 .c2{
		padding: 50px 0;
	}

	#sec01 .c3{
		padding: 50px 0;
	}

	#sec01 .c4{
		padding: 50px 0;
		margin: 0 auto;
	}

	#sec01 .c1:before{
		content: "";
		display: block;
		width: 100vw;
		height: 100%;
		background: linear-gradient(to right, #f4faff00 25%, #e5fafb 75%);
		position: absolute;
		top: 0;
		left: 0;
		z-index:0;
	}

	#sec01 .c2:before{
		content: "";
		display: block;
		width: 100vw;
		height: 100%;
		background: linear-gradient(to right, #e1f4ff 25%, #f5faff00 75%);
		position: absolute;
		top: 0;
		left: -7%;
		z-index:0;
	}

	#sec01 .c3:before{
		content: "";
		display: block;
		width: 100vw;
		height: 100%;
		background: linear-gradient(to right, #f4faff00 25%, #e9f2ff 75%);
		position: absolute;
		top: 0;
		left: 0;
		z-index:0;
	}

	#sec01 .c4:before{
		content: "";
		display: block;
		width: 100vw;
		height: 100%;
		background: linear-gradient(to right, #d8f9fc 25%, #f3fdfe00 75%);
		position: absolute;
		top: 0;
		left: -7%;
		z-index:0;
	}

	#sec01 .c1 .img_box{
		box-shadow: 0 2px 14px 0 rgb(35 141 138 / 40%);
	}

	#sec01 .c2 .img_box{
		box-shadow: 0 2px 14px 0 rgb(76 153 204 / 40%);
	}

	#sec01 .c3 .img_box{
		box-shadow: 0 2px 14px 0 rgb(79 119 191 / 40%);
	}

	#sec01 .c4 .img_box{
		box-shadow: 0 2px 14px 0 rgb(36 131 147 / 40%);
	}

	#sec01 h2 {
		display: inline-block;
		font-family: 'Roboto', sans-serif;
		font-weight: 400;
		font-size: calc(100vw / 37.5 * 4.2);
		line-height: 1;
		letter-spacing:calc(100vw / 37.5 * -0.1);
		background: linear-gradient( to right,  #0099ad 25%, #2fc0d3 100% );
		-webkit-background-clip: text;
		color: transparent;
		padding:0 0 20px
	}

	#sec01 h2 span.system_txt{
		display:block;
		font-size:  calc(100vw / 37.5 * 1.4);
		font-weight: 400;
		line-height: 1;
		letter-spacing: calc(100vw / 37.5 * 0.1);
		color:#fff;
		text-align:center;
		position:relative;
	}

	#sec01 h2 span.system_wrap{
		display:block;
		width:110px;
		padding:3px 0;
		color:#fff;
		margin: 0 0 4px;
		position:relative;
	}

	#sec01 h2 span.system_wrap:before{
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background:#0099ad;
		position: absolute;
		top:0;
		left:0;
		z-index:0;
	}

	#sec01 p {
		font-size: calc(100vw / 37.5 * 1.5);
		letter-spacing:calc(100vw / 37.5 * 0.2);
		font-weight: 400;
		line-height: 1.8;
		font-feature-settings: 'palt';
	}

	#sec01 p.nn_txt {
		font-size: calc(100vw / 37.5 * 1.2);
		letter-spacing: 0;
		font-weight: 600;
		line-height: 1.8;
		color: #252525;
		font-feature-settings: 'palt';
		padding: 50px 0 100px;
	}

	#sec01 p.note_txt{
		font-size: calc(100vw / 37.5 * 1.3);
		padding:10px 0 0;
	}

	#sec01 .mode_wrap{
		position:relative;
		padding: 0 0 34px;
	}

	#sec01 .mode_wrap h3{
		font-size: calc(100vw / 37.5 * 1.8);
		letter-spacing:calc(100vw / 37.5 * 0.1);
		font-weight: 600;
		line-height: 1;
		text-align:center;
		font-feature-settings: 'palt';
		color:#0099ad;
		position:relative;
		padding: 8px 0 0;
	}

	#sec01 .mode_wrap h3:before{
		content: "";
		display: block;
		width: 40px;
		height: 1px;
		background:#0099ad;
		position: absolute;
		top: 52%;
		left:calc(50% - 110px);
		transform:translate(-50%,0);
	}

	#sec01 .mode_wrap h3:after{
		content: "";
		display: block;
		width: 40px;
		height: 1px;
		background:#0099ad;
		position: absolute;
		top: 52%;
		left:calc(50% + 110px);
		transform:translate(-50%,0);
	}

	#sec01 .mode_wrap ul{
		display:flex;
		justify-content:space-between;
		padding: 18px 10px 0;
	}

	#sec01 .mode_wrap p{
		display:block;
		font-family: 'Roboto', sans-serif;
		font-weight: 400;
		font-size: calc(100vw / 37.5 * 1.4);
		text-align:center;
		line-height: 1.2;
		padding: 10px 0 0;
		letter-spacing: 0;
		color: #0099ad;
		position: relative;
	}

	#sec01 .mode_wrap li:nth-child(2) p{
		padding:0;
	}

	#sec01 .mode_wrap li{
		display:block;
		width: 20vw;
		position: relative;
	}

	#sec01 .mode_wrap li:before{
		content: "";
		display: block;
		width: 40vw;
		height: 60px;
		opacity: 0.8;
		background:#fff;
		border-radius:50%;
		position: absolute;
		top: 50%;
		left:50%;
		transform:translate(-50%,-50%);
		box-shadow: 0 0 10px 0 rgb(47 208 242 / 20%);
	}


	/* ============================================================
 	sec_admi
	==============================================================*/
	#sec_admi {
		width: 100vw;
		padding: 60px 0;
		background: url("../img/fv_bg.jpg")no-repeat center;
		background-size: cover;
	}

	#sec_admi .wrapper{
		width: 90vw;
		margin: 0 auto;
		padding: 30px 8%;
		background: #ffffffad;
		box-shadow: 0 0 10px 0 rgb(133 185 211 / 20%);
	}

	#sec_admi .wrapper h2{
		font-weight: 500;
		font-size: calc(100vw / 37.5 * 1.5);
		line-height: 1.6;
		letter-spacing:calc(100vw / 37.5 * 0.1);
		padding:0 0 20px;
	}

	#sec_admi .wrapper a{
		display:block;
		width: 100%;
		margin:0 auto;
		font-weight: 600;
		font-size: calc(100vw / 37.5 * 1.8);
		line-height: 1;
		text-align:center;
		color:#fff;
		padding: 20px 0;
		text-decoration:none;
		background:#0099ad;
		border-radius:30px;
		position:relative;
		text-indent: -9px;
		box-shadow: 0 0 10px 0 #46848780;
	}

	#sec_admi .wrapper a span{
		display:block;
		width: 20px;
		position:absolute;
		top: calc(100vw / 37.5 * 1.8);
		right: 34px;
		opacity: 0.75;
	}

	

	

	/* ============================================================
 	section cv
	==============================================================*/
	
	#sec_cv {
		width: 100vw;
		padding: 80px 0;
		background: #1a8293;
	}

	#sec_cv .wrapper{
		width: 90vw;
		margin:0 auto;
	}

	#sec_cv .wrapper h2{
		font-weight: 500;
		font-size: calc(100vw / 37.5 * 3.2);
		line-height: 1.4;
		letter-spacing:calc(100vw / 37.5 * 0.1);
		text-align:center;
		padding:0 0 4px;
		color:#fff;
	}

	#sec_cv .wrapper p{
		font-weight: 500;
		font-size: calc(100vw / 37.5 * 1.6);
		line-height: 1.4;
		letter-spacing: 0;
		text-align:center;
		padding:0 0 24px;
		color:#fff;
	}

	#sec_cv .wrapper a{
		display:block;
		width: 84%;
		margin:0 auto;
		font-weight: 600;
		font-size: calc(100vw / 37.5 * 1.8);
		line-height: 1;
		text-align:center;
		color:#0099ad;
		padding: 20px 0;
		text-decoration:none;
		background:#fff;
		border-radius:30px;
		text-indent: -19px;
		position:relative;
	}

	#sec_cv .wrapper a span{
		display:block;
		width: 20px;
		position:absolute;
		top: 18px;
		right: 24px;
		opacity: 0.75;
	}


	
}

