
/* ============================================================
PC
==============================================================*/

@media (min-width: 762px) {
	
	
	/* =========================================================================
 	bg_line_wrap
	===========================================================================*/
	

	#bg_line_wrap{
		width: calc(100vw - 224px);
		position: relative;
		min-height: 100vh;
		left: 224px;
		overflow: hidden;
	}

	#bg_line_wrap:before{
		content: "";
		display: block;
		width: 100%;
		height:100%;
		background:url(/archi_design/global/img/bg_gray_line.gif);
		opacity: 0.5;
		position: absolute;
		top: 0;
		left:0;
		z-index: 0;
	}

	#bg_line_wrap2{
		width: calc(100vw - 225px - 236px);
		position: relative;
		min-height: 100vh;
		left: calc(225px + 236px);
		overflow: hidden;
	}

	#bg_line_wrap2:before{
		content: "";
		display: block;
		width: 100%;
		height:100%;
		background:url(/archi_design/global/img/bg_gray_line.gif);
		opacity: 0.5;
		position: absolute;
		top: 0;
		left:0;
        z-index: -2;
	}
    
    
    #bg_line_s_wrap{
		width: calc(100vw - 225px);
		position: relative;
        min-height: 100vh;
		left: 225px;
		overflow: hidden;
        
	}

	#bg_line_s_wrap:after{
		content: "";
		display: block;
		width: 100%;
		height:100%;
		background:url(/archi_design/global/img/bg_gray_line_s.gif);
		position: absolute;
		top: 0;
		left:0;
        z-index: -2;
	}
    
    #bg_line_s_wrap:before{
		content: "";
		display: block;
		width: 100%;
		height:100%;
		background: #393939;
		position: absolute;
		top: 0;
		left:0;
        z-index: -3;
	}
	
	
	
	/* =========================================================================
 	common scroll
	===========================================================================*/
	
	.scroll_v{
			z-index: 910;
			width: 60px;
			position: absolute;
			bottom: 0;
			right: 0;
	}

	.scroll_v a {
			display:block;
			font-family: 'Roboto', sans-serif;
			font-weight: 600;
			color: #fff;
			font-size: 1.4rem;
			-webkit-writing-mode: vertical-rl;
			-ms-writing-mode: tb-rl;
			-o-writing-mode: vertical-rl;
			writing-mode: vertical-rl;
			margin: 2;
			padding: 0 0 100px 10px;
			overflow: hidden;
			position: relative;
			letter-spacing: 1px;
	}
		
	.scroll_v a span:before {
  			position: absolute;
  			top: 56px;
  			right: 34%;
  			content:"";
  			width: 1px;
  			height: 0;
  			background-color: #fff;
  			animation: sdb 2s infinite;
  	}

  	#bg_line_wrap .scroll_v,#bg_line_wrap2 .scroll_v{
			z-index: 910;
			width: 60px;
			height: 100vh;
			background:none;
			position: absolute;
			top: 0;
			right: 0;
	}


	#bg_line_wrap .scroll_v a,#bg_line_wrap2 .scroll_v a {
			display:block;
			font-family: 'Roboto', sans-serif;
			font-weight: 600;
			color: #000;
			font-size: 1.4rem;
			-o-writing-mode: vertical-rl;
			writing-mode: vertical-rl;
			margin: 60px 0 0;
			padding: 0 0 100px 10px;
			overflow: hidden;
			position: relative;
			letter-spacing: 1px;
	}
    
    
    
    #bg_line_s_wrap .scroll_v{
			z-index: 910;
			width: 60px;
			height: 100vh;
			background:none;
			position: absolute;
			top: 0;
			right: 0;
	}

	#bg_line_s_wrap .scroll_v a {
			display:block;
			font-family: 'Roboto', sans-serif;
			font-weight: 600;
			color: #fff;
			font-size: 1.4rem;
			-o-writing-mode: vertical-rl;
			writing-mode: vertical-rl;
			margin: 70px 0 0;
			padding: 0 0 100px 10px;
			overflow: hidden;
			position: relative;
			letter-spacing: 1px;
	}
		
	#bg_line_s_wrap .scroll_v a span:before {
  			position: absolute;
  			top: 56px;
  			right: 34%;
  			content:"";
  			width: 1px;
  			height: 0;
  			background-color: #fff;
  			animation: sdb 2s infinite;
  	}
		
	
	
	
	/* =========================================================================
 	btn_box
	===========================================================================*/
	
	.btn_box li{
		background: #384a8f;
		position:relative;
	}

    .btn_box a{
		display:block;
		background: url("/archi_design/global/img/btn_arrow.svg") no-repeat 80% center;
		font-family: 'Roboto', sans-serif;
		font-weight:400;
		font-size:1.4rem;
		letter-spacing:0.1rem;
		color:#fff;
		padding: 10px 140px 10px 30px;
		position:relative;
		transition: all 0.5s cubic-bezier(0, 0, 0.13, 1.01) 0s;
	}

	.btn_box li:before{
		content: "";
		display: block;
		width: 0;
		height: 100%;
		background:#000;
		position: absolute;
		top:0;
		left:0;
		transition: all 0.5s cubic-bezier(0, 0, 0.13, 1.01) 0s;
	}
	
	.btn_box li:hover:before{
		width:100%;
	}

	.btn_box a:hover{
		background:url("/archi_design/global/img/btn_arrow.svg") no-repeat 90% center;
	}
	

	.btn_back{
		margin: 30px 0 20px 100px;
	}

	.btn_back a{
		display:block;
		font-family: 'Roboto', sans-serif;
		font-weight:400;
		font-size:1.4rem;
		letter-spacing:0.1rem;
		color:#000;
		padding: 10px 0 10px 74px;
		position:relative;
		transition: all 0.5s cubic-bezier(0, 0, 0.13, 1.01) 0s;
	}

	.btn_back a span{
		display:block;
		width:64px;
		position: absolute;
		top: 40%;
		left: 0;
		transform:translate(0, -50%);
		transition: all 0.5s cubic-bezier(0, 0, 0.13, 1.01) 0s;
	}

	.btn_back a:hover{
		transform:translate(-10px,0);
	}

	.btn_back a:hover span{
		transform:translate(-10px, -50%);
	}
    
    
    .btn_back_s{
		margin:50px 0 20px 100px;
	}

	.btn_back_s a{
		display:block;
		font-family: 'Roboto', sans-serif;
		font-weight:400;
		font-size:1.4rem;
		letter-spacing:0.1rem;
		color:#fff;
		padding: 10px 0 10px 74px;
		position:relative;
		transition: all 0.5s cubic-bezier(0, 0, 0.13, 1.01) 0s;
	}

	.btn_back_s a span{
		display:block;
		width:64px;
		position: absolute;
		top: 40%;
		left: 0;
		transform:translate(0, -50%);
		transition: all 0.5s cubic-bezier(0, 0, 0.13, 1.01) 0s;
	}

	.btn_back_s a:hover{
		transform:translate(-10px,0);
	}

	.btn_back_s a:hover span{
		transform:translate(-10px, -50%);
	}
    
    
    /* =========================================================================
 	lazy_fadeinLeft_search
    ===========================================================================*/    
    
    .lazy_fadeinLeft_search{
		opacity:0;
		transform: translate(-50px,0); 
	}
	
	
}



/* =========================================================================
 	inview anime
===========================================================================*/
	.lazy_fadein{
		opacity:0;
	}
	.lazy_fadein_act{
		opacity:1;
		transition: all 0.5s cubic-bezier(0, 0, 0, 0);
	}
	
	.lazy_fadeinLeft,.lazy_fadeinLeftA{
		opacity:0;
		transform: translate(-50px,0); 
	}
    
	.lazy_fadeinRight,.lazy_fadeinRightA{
		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) 0s;
		transform: translate(0,0); 
		opacity:1;
	}
    
    .home #ghead .lazy_fadeinUp_active{
		transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
	}
	
	.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;
	}
    
    .home #ghead .lazy_fadeinDown_active{
		transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
	}
	
	.lazy_fadeinUpCenter{
		opacity:0;
		transform:translate(-50%, 10%);
	}
	
	.lazy_fadeinUpCenter_active{
		transition: all 1s cubic-bezier(0.215, 0.61, 0.355, 1);
		transform:translate(-50%, 0);
		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;
	}
    

/* ============================================================
loading
==============================================================*/

@media (min-width: 762px) {
    .loader {
      font-size: 1.2rem;
      width: 0.5em;
      height: 0.5em;

      border-radius: 50%;
      position: fixed;
      top: 50%;
      left: 50%;
      z-index: 9999;
      -webkit-animation: load5 1.1s infinite ease;
      animation: load5 1.1s infinite ease;
      -webkit-transform: translateZ(0);
      -ms-transform: translateZ(0);
      transform: translateZ(0);
    }

    .loader span{
    	display:block;
    	font-size:1.2rem;
    	color: #aecae6;
    	margin: 48px 0 0 -23px;
        animation: loadA 0.2s infinite ease;
    }
    
}

@keyframes load5 {
  0%,
  100% {
    box-shadow: 0em -2.6em 0em 0em #00478b, 1.8em -1.8em 0 0em rgba(0,71,139, 0.2), 2.5em 0em 0 0em rgba(0,71,139, 0.2), 1.75em 1.75em 0 0em rgba(0,71,139, 0.2), 0em 2.5em 0 0em rgba(0,71,139, 0.2), -1.8em 1.8em 0 0em rgba(0,71,139, 0.2), -2.6em 0em 0 0em rgba(0,71,139, 0.5), -1.8em -1.8em 0 0em rgba(0,71,139, 0.7);
  }
  12.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,71,139, 0.7), 1.8em -1.8em 0 0em #00478b, 2.5em 0em 0 0em rgba(0,71,139, 0.2), 1.75em 1.75em 0 0em rgba(0,71,139, 0.2), 0em 2.5em 0 0em rgba(0,71,139, 0.2), -1.8em 1.8em 0 0em rgba(0,71,139, 0.2), -2.6em 0em 0 0em rgba(0,71,139, 0.2), -1.8em -1.8em 0 0em rgba(0,71,139, 0.5);
  }
  25% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,71,139, 0.5), 1.8em -1.8em 0 0em rgba(0,71,139, 0.7), 2.5em 0em 0 0em #00478b, 1.75em 1.75em 0 0em rgba(0,71,139, 0.2), 0em 2.5em 0 0em rgba(0,71,139, 0.2), -1.8em 1.8em 0 0em rgba(0,71,139, 0.2), -2.6em 0em 0 0em rgba(0,71,139, 0.2), -1.8em -1.8em 0 0em rgba(0,71,139, 0.2);
  }
  37.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,71,139, 0.2), 1.8em -1.8em 0 0em rgba(0,71,139, 0.5), 2.5em 0em 0 0em rgba(0,71,139, 0.7), 1.75em 1.75em 0 0em #00478b, 0em 2.5em 0 0em rgba(0,71,139, 0.2), -1.8em 1.8em 0 0em rgba(0,71,139, 0.2), -2.6em 0em 0 0em rgba(0,71,139, 0.2), -1.8em -1.8em 0 0em rgba(0,71,139, 0.2);
  }
  50% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,71,139, 0.2), 1.8em -1.8em 0 0em rgba(0,71,139, 0.2), 2.5em 0em 0 0em rgba(0,71,139, 0.5), 1.75em 1.75em 0 0em rgba(0,71,139, 0.7), 0em 2.5em 0 0em #00478b, -1.8em 1.8em 0 0em rgba(0,71,139, 0.2), -2.6em 0em 0 0em rgba(0,71,139, 0.2), -1.8em -1.8em 0 0em rgba(0,71,139, 0.2);
  }
  62.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,71,139, 0.2), 1.8em -1.8em 0 0em rgba(0,71,139, 0.2), 2.5em 0em 0 0em rgba(0,71,139, 0.2), 1.75em 1.75em 0 0em rgba(0,71,139, 0.5), 0em 2.5em 0 0em rgba(0,71,139, 0.7), -1.8em 1.8em 0 0em #00478b, -2.6em 0em 0 0em rgba(0,71,139, 0.2), -1.8em -1.8em 0 0em rgba(0,71,139, 0.2);
  }
  75% {
    box-shadow: 0em -2.6em 0em 0em rgba(0,71,139, 0.2), 1.8em -1.8em 0 0em rgba(0,71,139, 0.2), 2.5em 0em 0 0em rgba(0,71,139, 0.2), 1.75em 1.75em 0 0em rgba(0,71,139, 0.2), 0em 2.5em 0 0em rgba(0,71,139, 0.5), -1.8em 1.8em 0 0em rgba(0,71,139, 0.7), -2.6em 0em 0 0em #00478b, -1.8em -1.8em 0 0em rgba(0,71,139, 0.2);
  }
  87.5% {

    box-shadow: 0em -2.6em 0em 0em rgba(0,71,139, 0.2), 1.8em -1.8em 0 0em rgba(0,71,139, 0.2), 2.5em 0em 0 0em rgba(0,71,139, 0.2), 1.75em 1.75em 0 0em rgba(0,71,139, 0.2), 0em 2.5em 0 0em rgba(0,71,139, 0.2), -1.8em 1.8em 0 0em rgba(0,71,139, 0.5), -2.6em 0em 0 0em rgba(0,71,139, 0.7), -1.8em -1.8em 0 0em #00478b;
  }
}


/* ============================================================
PC IE11
==============================================================*/

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

}


	
/* ============================================================
keyframe
==============================================================*/
	
@keyframes sdb {
  			0% {
  				transform:translate(0, 0);
    			height:0;
  			}
  			50% {
  				transform:translate(0, 0);
  				height:100px;
  			}
  			100% {
  				transform:translate(0, 100px);
  				height:100px;
  			}
		}

@keyframes loadA {
  			0% {
    			opacity: 0;
  			}
  			50% {
    			opacity: 1;
  			}
  			100% {
    			opacity: 0;
  			}
		}

