@charset "utf-8";


#wrap {overflow:hidden; position:relative; min-width:320px;}
#header {position:absolute; top:0; left:0; width:100%;}
#header h1 {position:absolute; top:50px; left:64px; z-index:1103;}
#header .btn_menu {overflow:hidden; position:absolute; top:40px; right:50px; z-index:1103; width:160px; width:118px; height:67px; text-indent:-999px; background:url('../images/common/btn_menu.png') right top no-repeat; background-size:100% auto; transition: all 0.5s; -webkit-transition: all 0.5s;}
#header #nav .btn_menu {right:-200px; width:74px; height:97px; background-image:url('../images/common/btn_menu_close.png')}
#nav {overflow:hidden; position:fixed; top:0; left:0; right:0; bottom:0; z-index:1102; min-width:320px;}
#nav {transition:all 1ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1s;-webkit-transition:all 1ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1s; -moz-transition:all 1ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1s;-o-transition:all 1ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 1s; transform:scale(0, 1);-moz-transform:scale(0, 1);-webkit-transform:scale(0, 1);-o-transform:scale(0, 1);-ms-transform:scale(0, 1);-ms-transform-origin:100% 0%;-webkit-transform-origin:100% 0%;transform-origin:100% 0%;}
#nav:before {position:fixed; top:0; right:0; display:block;width:370vw;height:auto;padding-top:370vw; background-color:#43519e; -ms-transform-origin:100% 0%;-webkit-transform-origin:100% 0;transform-origin:100% 0;border-radius:50%;z-index:1;content:"";}
#nav:before {transition:all 0.8s cubic-bezier(0.77, 0, 0.175, 1);-webkit-transition:all 0.8s cubic-bezier(0.77, 0, 0.175, 1);-moz-transition:all 0.8s cubic-bezier(0.77, 0, 0.175, 1);-o-transition:all 0.8s cubic-bezier(0.77, 0, 0.175, 1);transform:scale(0, 0) translate(50%, -50%);-moz-transform:scale(0, 0) translate(50%, -50%);-webkit-transform:scale(0, 0) translate(50%, -50%);-o-transform:scale(0, 0) translate(50%, -50%);-ms-transform:scale(0, 0) translate(50%, -50%);-webkit-transition-delay:0.25s;-moz-transition-delay:0.25s;-o-transition-delay:0.25s;-ms-transition-delay:0.25s;transition-delay:0.25s;}
#nav .inwrap {position:absolute; top:50%; left:50%; width:620px; z-index:1102; margin-top:-280px; margin-left:-360px; color:#fff; opacity:0; -webkit-transition:all 0.6s ease-in-out 0s; transition:all 0.6s ease-in-out 0s;}
#nav .nav_list {display:inline-block; width:490px; border-right:2px solid #ffffff;}
#nav .nav_list > li > a {display:block; font-size:50px; line-height:2; font-weight:300;}
#nav .nav_list > li.on > a {font-weight:700; color:#b4d7ff;}
#nav .nav_list > li.on .sub {display:block;}
#nav .nav_list .sub {display:none; overflow:hidden;}
#nav .nav_list .sub li {float:left; margin-right:43px;}
#nav .nav_list .sub a {display:block; position:relative; padding:0 1px; font-size:20px; line-height:50px; -webkit-transition:all 0.3s; transition:all 0.3s;}
#nav .nav_list .sub a:before {position:absolute; bottom:0; left:50%; right:50%; height:2px; background:#a3bacf;  content:''; -webkit-transition:all 0.3s; transition:all 0.3s;}
.pc #nav .nav_list .sub a:hover {color:#b4d7ff;}
.pc #nav .nav_list .sub a:hover:before {left:0; right:0;}
#nav .sns_list {position:absolute; right:0; bottom:0;}
#nav .sns_list li+li {margin-top:30px;}
#header.menu_open #nav {transform:scale(1, 1);-moz-transform:scale(1, 1);-webkit-transform:scale(1, 1);-o-transform:scale(1, 1);-ms-transform:scale(1, 1);-webkit-transition-delay:0s;-moz-transition-delay:0s;-o-transition-delay:0s;-ms-transition-delay:0s;transition-delay:0s;top:0%;left:0%;bottom:0%;right:0%}
#header.menu_open #nav:before {transform:scale(1, 1) translate(50%, -50%);-moz-transform:scale(1, 1) translate(50%, -50%);-webkit-transform:scale(1, 1) translate(50%, -50%);-o-transform:scale(1, 1) translate(50%, -50%);-ms-transform:scale(1, 1) translate(50%, -50%);-webkit-transition-delay:0s;-moz-transition-delay:0s;-o-transition-delay:0s;-ms-transition-delay:0s;transition-delay:0s}
#header.menu_open #nav .inwrap {top:50%; opacity:1; -webkit-transition:all 0.6s ease-in-out 0.6s; transition:all 0.6s ease-in-out 0.6s;}



#nav li {opacity:0; padding-left:100px; transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1); -webkit-transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1);}
#header.menu_open #nav li {opacity:1; padding-left:0; transition-duration:0.8s; -webkit-transition-duration:0.8s;}
#header.menu_open #nav li.s01 {transition-delay: 0.5s;}
#header.menu_open #nav li.s02 {transition-delay: 0.55s;}
#header.menu_open #nav li.s03 {transition-delay: 0.6s;}
#header.menu_open #nav li.s04 {transition-delay: 0.65s;}
#header.menu_open #nav li.s05 {transition-delay: 0.7s;}
#header.menu_open #nav li.s06 {transition-delay: 0.75s;}
#header.menu_open .btn_menu {right:-200px;}
#header.menu_open #nav .btn_menu {right:50px;}



#footer {padding:40px 0; border-top:1px solid #bfbfbf; font-size:15px; color:#939393; line-height:1.66;}
#footer .inwrap {position:relative; overflow:hidden;}
#footer .logo {position:absolute; top:0; left:0;}
.addr {overflow:hidden; margin-left:345px; margin-right:190px; padding:5px 0;}
.addr p {margin-left:-46px;}
.addr span {display:inline-block; position:relative; margin-left:46px;}
.addr span:before {position:absolute; top:50%; left:-23px; width:1px; height:14px; margin-top:-7px; background:#939393; content:'';}
.footer_sns_list {position:absolute; top:0; right:0; overflow:hidden;}
.footer_sns_list li {float:left;}
.footer_sns_list li+li {margin-left:10px;}

.csize01 {width:95%; max-width:1200px; margin-left:auto; margin-right:auto;}
.csize02 {max-width:1200px; margin-left:auto; margin-right:auto;}


#btn_top {position:fixed; right:50px; bottom:50px; z-index:1100;}



@media all and (max-width: 1199.98px){
	#header h1 {left:32px;}
	#header .btn_menu {right:30px;}
}
@media all and (max-width: 767.99px){	
	#header h1 {top:25px; left:20px;}
	#header h1 img {height:20px;}
	#header .btn_menu {top:20px; right:20px; width:59px; height:34px;}
	#header.menu_open #nav .btn_menu {top:20px; right:20px; width:37px; height:49px;}

	.mobile #header *, .mobile #nav:before {-webkit-transition: all 0s 0s !important; transition: all 0s 0s !important; -moz-transition:all 0s 0s !important;-o-transition:all 0s 0s !important;}
	#nav .inwrap {left:0; right:0; width:auto; margin:0; margin-top:-150px; text-align:center;}
	#nav .nav_list {width:auto; border-right:0;}
	#nav .nav_list > li > a {font-size:25px;}
	#nav .nav_list .sub li {display:inline-block; float:none; margin:0 10px;}
	#nav .nav_list .sub a {font-size:12px; line-height:25px;}
	#nav .sns_list {position:relative; margin-top:30px; text-align:center;}
	#nav .sns_list li {display:inline-block;}
	#nav .sns_list li img {width:26px;}
	#nav .sns_list li+li {display:inline-block; margin:0 8px;}

	#footer {padding:20px 0; font-size:11px;}
	#footer .logo {display:none;}
	.addr {margin-left:0; margin-right:0;}
	.addr p {margin-left:-23px;}
	.addr span {margin-left:23px;}
	.addr span:before {left:-12px; height:7px; margin-top:-3px;}
	.footer_sns_list {position:relative;}
	.footer_sns_list li+li {margin-left:5px;}
	.footer_sns_list img {width:17px;}

	.csize01 {width:auto; margin:0 15px;}

	#btn_top {right:20px; bottom:20px; width:40px; height:40px;}
}