@charset "UTF-8";
/* CSS Document */
html { width: 100%;height: 100%;margin: 0;	padding: 0;} 
body{width:100%;height: 100%;margin:0;padding:0; -webkit-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;}
body.open_navigation{	position: fixed;height: 100vh;}

.mincho{font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;}
.clearfix:after{content: "";clear: both;display: block;}

:hover{-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;transition: all  0.3s ease;}

@media (min-width:1051px) {
	header{}	
	header #header_wrapper{position: relative;/*height: 100px;*/z-index: 999}	
		
	header #header_wrapper h1{  position: fixed;top:28px;left:3%;   width:240px;  transition: .5s;opacity: 1;z-index: inherit;padding: 0px 0px;margin:0;}
	header #header_wrapper h1 img{width: 100%;transition: .5s;}
	header #header_wrapper h1 img:hover{opacity: 0.5;}
	
	
	/*スクロール時のヘッダー*/
	header.scroll-nav #header_wrapper nav {background:rgba(11,117,138,0.95);  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);}		
	header.scroll-nav #header_wrapper h1{opacity:1;}
	
	
	nav{width: 100%;position:fixed;	top:0px;left: 0;transition: 0.5s;	}
	nav:hover{background:rgba(11,117,138,0.95); }
	
	.button{display:none}						
	
	nav #nav_menu{}
	nav #nav_menu .inner{position: relative;height: 86px;transition: .5s;}	
		
	/*主要メニュー*/
	nav #primary_group{position: absolute;	right:0%;bottom:0px;width:100% ; text-align: right;}					
	nav #primary_group .primary_unit{display: inline-block;}			
	nav #primary_group .primary_unit:last-of-type{margin-right:32px;}	
	nav #primary_group .primary_unit a.primary_a{position: relative;	display: block;	text-decoration: none;	color:white;	font-size: 15px;letter-spacing: 1px;font-weight:600;padding:10px 20px;	transition:all .3s;}	
	nav #primary_group .primary_unit a.primary_a:hover{	color:#bfe3eb;}
	nav #primary_group .primary_unit a.primary_a::after {position: absolute;bottom:0px;left: 0;content: '';width: 100%;height:5px;background: #00b3c5;transform: scale(0, 1);  transform-origin: center top;  transition: transform .3s;}	
	nav #primary_group .primary_unit a.primary_a:hover::after {  transform: scale(1, 1);}	
	nav #primary_group .primary_unit a.icon_down{position: relative;}	
	nav #primary_group .primary_unit a.icon_down::before{position: absolute;	right:0px;	top:50%;content:'\f107';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#bfe3eb;font-size: 10px}
	
	/*主要メニューの下層*/
	nav .secondary_group{	display: block;	position: absolute;	left:0;	top:43px;z-index: 4; background:rgba(6,47,56,0.8);	width:100%;    /*はじめは非表示*/	visibility: hidden;	opacity: 0;transition: all .3s;}
	nav .primary_unit:hover > .secondary_group{visibility: visible;opacity: 1;}/*hoverしたら表示*/
	nav .primary_unit:active > .secondary_group{visibility: visible;	opacity: 1;	}/*hoverしたら表示*/	
	
	nav .secondary_group .inner_secondary{width:95%;max-width: 1500px;min-width:1000px;margin: 0 auto;padding: 80px 0 50px 0;display: flex;justify-content: space-between;}
	nav .secondary_group .inner_secondary .pc_page_name{width: 30%;color: white;text-align: left}
	nav .secondary_group .inner_secondary .pc_page_name .jpn{padding:0px 0 0 0px;margin: 0 0 0px 0;font-size:26px;font-weight: 500;letter-spacing: 1px}
	nav .secondary_group .inner_secondary .pc_page_name .eng{padding:0px 0 0 0px;margin: 0 0 5px 0;font-size:14px;font-weight: 400;letter-spacing: 1px}
	nav .secondary_group .inner_secondary .pc_page_name .pc_button a{position: relative;width:70%;margin:20px auto 0 0;background:#0b758a;color: white;border-radius:30px;text-decoration:none;display:block;padding:6px 20px;font-size:14px;font-weight:400;letter-spacing: 1px}
	nav .secondary_group .inner_secondary .pc_page_name .pc_button a::before{position: absolute;	right:5%;	top:50%;content:'\f105';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#bfe3eb;font-size: 12px}
	nav .secondary_group .inner_secondary .pc_page_name .pc_button a:hover{background: #001f26;}
	
	nav .secondary_group .inner_secondary .tiny_list{width:70%;text-align: left;display: flex;flex-wrap:wrap;justify-content: space-between}	
	nav .secondary_group .inner_secondary .tiny_list a{position:relative;display:inline-block;width: 49.7%;margin: 0 0 5px 0;height: 50px;padding:16px 20px;box-sizing: border-box;color: white;font-size:16px;letter-spacing: 1px;line-height: 1;background:#001f26;font-weight:500;text-decoration: none;}
	nav .secondary_group .inner_secondary .tiny_list a::before{position: absolute;	right:20px;	top:50%;content:'\f105';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#faffeb;font-size: 14px}
	nav .secondary_group .inner_secondary .tiny_list a:hover{	background:#0b758a;}
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp_top{display:none;}	
	
	/*サブメニュー*/
	nav #sub_group{position: absolute;	right:32px;top:20px;}
	nav #sub_group .sub_wrap{}
	nav #sub_group .sub_wrap a{position: relative;display: inline-block;padding: 0 20px;text-align: center; text-decoration: none;color: white;font-size:14px;letter-spacing: 1px;font-weight:500;}
	nav #sub_group .sub_wrap a::before{position: absolute;top:50%;transform: translateY(-50%);left: 0;content: '';width: 1px;height:14px;background: #a4eaea;}
	nav #sub_group .sub_wrap a:first-of-type::before{display: none;}
	nav #sub_group .sub_wrap a:hover{color: #a4eaea}
	
	
	/*フッター*/
	footer{margin: 0 auto;padding:0px 0 0px 0;}
	
	footer #general_contact{padding: 80px 0}
	footer #general_contact .inner{width:1000px;margin:0 auto;display: flex;justify-content: space-between;align-items: center;}
	footer #general_contact .inner .company_area .logo{width: 300px;margin-bottom: 10px}
	footer #general_contact .inner .company_area .logo img{width:100%;}
	footer #general_contact .inner .company_area p{margin:0;padding: 0;font-size: 13px;letter-spacing: 1px;color: #4d4d4d}
	
	footer #general_contact .inner .banner{width: 350px;}
	footer #general_contact .inner .banner a{position:relative;display:block;background:linear-gradient(90deg, #2e92b8, #177298);padding: 35px 30px;color: white;font-size: 17px;letter-spacing: 1px;text-decoration: none;overflow: hidden; transition: color 0.3s ease;}	
	footer #general_contact .inner .banner a::before {  content: "";  position: absolute;  top: 0;left: 80%;  width:30%;  height: 100%;background:linear-gradient(90deg, #5fc6ca, #17a8a1);transform: skewX(-25deg);transition: width 0.5s ease, left 0.5s ease;z-index: 0}	
	footer #general_contact .inner .banner a:hover::before {  width: 105%;  left: 0;}
	footer #general_contact .inner .banner a::after{content:"\f105";position: absolute;top: 50%;transform: translateY(-50%);left: 90%;z-index: 0;font-family: 'Font Awesome 5 Free';font-weight: 900;color: white;font-size: 16px; transition: left 0.2s ease-out, color 0.3s ease;}	
	footer #general_contact .inner .banner a:hover::after{left: 92%;transition: left 0.2s ease-out;}
	footer #general_contact .inner .banner a span{ position: absolute;  top: 50%;transform: translateY(-50%);left: 60px; z-index: 1; transition: color 0.3s ease;}
	
	footer #site_map{background:#f0f7f7; margin:0px auto 0 auto;padding:60px 0 60px 0;}
	footer #site_map .inner{width: 1000px;margin:0 auto;display: flex;justify-content: space-between}
	footer #site_map .inner .unit{/*width: 25%*/}
	footer #site_map .inner .unit a{display:block;text-decoration: none;letter-spacing: 1px}
	footer #site_map .inner .unit .primary{margin-bottom:20px;}
	footer #site_map .inner .unit .primary a{position:relative;color:#000;font-size: 16px;letter-spacing:1px;font-weight: 400;padding-left: 20px;line-height: 1}	
	footer #site_map .inner .unit .primary a::before{position: absolute;	left:0px;	top:50%;content:'';transform:translateY(-50%); margin:0;padding: 0;background:#00779c;width: 8px;height: 8px}
	footer #site_map .inner .unit .secondary{margin-bottom:6px;}
	footer #site_map .inner .unit .secondary a{position:relative;color: #00779c;font-size: 14px;letter-spacing: 1px;font-weight: 500;margin-left:10px;padding-left: 10px}
	footer #site_map .inner .unit .secondary a::before{position: absolute;	left:0px;	top:50%;content:'';transform:translateY(-50%); margin:0;padding: 0;background:#00779c;width: 8px;height: 1px}
	footer #site_map .inner .unit a:hover{color:#4ca8c1;}
	
	footer small{width:100%;margin:0 auto;;padding:30px 0;display:block;color: white;font-size: 12px;letter-spacing: 2px;text-align:center; background: #4ca8c1}
	
	#contact_common{position:fixed;bottom: 4%;right: 2%;z-index: 9999}
	#contact_common a{display: block;background:linear-gradient(45deg, #001f26 , #175b98);color: white;text-decoration: none;width: 120px;height: 120px;border-radius: 50%}
	#contact_common a::before{content:'';position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);width: 90%;height: 90%;border: 1px solid #acfcfc;border-radius: 50%}
	#contact_common a::after{content:'\f0e0';position: absolute;top: 25%;left: 50%;transform: translateX(-50%);font-family: 'Font Awesome 5 Free';font-weight: 900;font-size: 26px;}
	#contact_common a span{position: absolute;top: 55%;left: 50%;transform: translateX(-50%);width: 90%;text-align: center;font-size: 14px;letter-spacing: 0px;line-height: 1;font-weight: 400;}
	#contact_common a:hover{background:linear-gradient(-45deg,#4fbdb8, #175b98);}
}


@media screen and (min-width:701px) and ( max-width:1050px)  {
	header{}	
	header #header_wrapper{position: relative; transition: .5s;z-index: 999}
	header.scroll-nav #header_wrapper{position:fixed;width: 100%; height: 80px;background:rgba(11,117,138,0.95);  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);}
	
	header #header_wrapper h1{  position: fixed;top:25px;left:4%;   width:250px; padding:0px 0 0 0px;margin: 0 0;z-index: 99}
	header #header_wrapper h1 img{width: 100%;}
	
	
	nav{width: 100%;position:fixed;	top:0px;left: 0;}	
	
	.button{display:block;	position: absolute;	right:0%;top:0px;width: 80px;height:80px;padding:0px 0 0 0px;margin: 0 0;text-align: center;letter-spacing: 1px; /* background:#00adc8;*/cursor:pointer;} 		
	.button span {display:block;position: absolute;	height:1px;	background:white;right:25%;	-webkit-transition: .35s ease-in-out;	-moz-transition: .35s ease-in-out;	transition: .35s ease-in-out;}
	.button span:nth-child(1) {	top:40%;width:50%;}
	.button span:nth-child(2) {	top:50%;width:40%;}
	.button span:nth-child(3) {	top:60%;width:30%;}    
	.button.open_navigation{z-index:9999;}
	.button.open_navigation span{display:block;	background:white;}
	.button.open_navigation span:nth-child(1) {width:30%;top: 50%;left: 35%;	-webkit-transform: rotate(45deg);	-moz-transform: rotate(45deg);	transform: rotate(45deg);}
	.button.open_navigation span:nth-child(2) {width: 0;	left: 50%;	 	}
	.button.open_navigation span:nth-child(3) {	width:30%;top:50%;left: 35%;	-webkit-transform: rotate(-45deg);	-moz-transform: rotate(-45deg);	transform: rotate(-45deg);}
	#nav_menu.open_navigation{	display: block;	animation-duration: 0.6s;	animation-name:button_open;z-index:999;}         
	@keyframes button_open{ from { opacity:0.1;}        to { opacity:1;}    }	
	
	
	#nav_menu{display: none;width: 100%;height:100vh;position:fixed;	top:0px;left: 0;background:rgba(11,117,138,0.8);}
	#nav_menu .inner{position: fixed;top:80px;left:0%;width:100%;height:75vh;margin:0 auto;padding:0;list-style: none;background:linear-gradient(-75deg, #0c5b7e 30%, #17517a 30%);overflow-y: scroll;	-webkit-overflow-scrolling: touch;	overflow-scrolling: touch;}				
	
	nav #primary_group{		display: block;	padding: 50px 0 30px 0;background:#ffffff;}	
	nav #primary_group .primary_unit{width: 90%;margin: 0 auto 0px auto;border-bottom: 1px solid #6f9baa;}			
	nav #primary_group .primary_unit:last-of-type{border-bottom:none;}
	
	nav #primary_group .primary_unit a.primary_a{display: block;padding:20px 0px;	text-decoration: none;	color:#000;	font-size:16px;letter-spacing: 1px;	font-weight: 400;}	
	nav #primary_group .primary_unit a.primary_a:hover{	color:#1792b4;	}	
	nav #primary_group .primary_unit a.icon_down{position: relative;}
	nav #primary_group .primary_unit a.icon_down::before{position: absolute;	right:0px;	top:50%;content:'\f067';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#1792b4;font-size: 16px}
	nav #primary_group .primary_unit a.icon_down:hover::before{	color:#1b3f4f;}
	nav #primary_group .primary_unit a.icon_normal{position: relative;}
	nav #primary_group .primary_unit a.icon_normal::before{position: absolute;	right:0px;	top:50%;content:'\f105';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#1792b4;font-size: 16px}
	nav #primary_group .primary_unit a.icon_normal:hover::before{	color:#1b3f4f;}
						
	nav .secondary_group{ 	width:100%;	visibility:visible;	opacity:1;	display: none;	transition:none;background:#f0f7f7}
	nav .secondary_group .inner_secondary{width:100%;margin: 0 auto 10px auto;padding: 0px 2% 0 0;box-sizing: border-box}
	nav .secondary_group .inner_secondary .pc_page_name{display: none}	
	nav .secondary_group .inner_secondary .tiny_list{width:97%;margin: 0 0 0 auto}	
	nav .secondary_group .inner_secondary .tiny_list a{display:block;margin: 0 auto 0px auto;border-bottom:1px solid #9db9c1;color:#000;font-size:14px;letter-spacing: 1px;text-decoration: none;}
	nav .secondary_group .inner_secondary .tiny_list a:last-of-type{border-bottom:none;}
	
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp_top{padding:20px 0px 20px 0px;}
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp_top span{position: relative;}
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp_top span::before{position: absolute;	left:105%;	top:50%;content:'\f105';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#00779c;font-size: 14px}
	
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp{position: relative;padding:20px 0px 20px 25px;}
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp::before{position: absolute;	left:6px;	top:50%;content:'';transform:translateY(-50%); margin:0;padding: 0;background:#00779c;width:6px;height: 2px}
	nav .secondary_group .inner_secondary .tiny_list a:hover{	color:#00779c}
	
	/*サブメニュー*/
	nav #sub_group{}
	nav #sub_group .sub_wrap{padding: 30px 0 0 0}
	nav #sub_group .sub_wrap a{position: relative;display: block;width: 90%;margin: 0 auto 5px auto;padding: 20px 0px; text-decoration: none;color: white;font-size:16px;letter-spacing: 1px;font-weight:400;border-bottom: 1px solid #6f9baa;}
	nav #sub_group .sub_wrap a:last-of-type{border-bottom:none;}
	nav #sub_group .sub_wrap a::before{position: absolute;	right:0px;	top:50%;content:'\f105';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#6f9baa;font-size: 16px}
	nav #sub_group .sub_wrap a:hover{color: #a4eaea}
	
	/*フッター*/
	footer{margin: 0 auto;padding:0px 0 0px 0;}
	
	footer #general_contact{padding: 80px 0}
	footer #general_contact .inner{width:90%;margin:0 auto;display: flex;justify-content: space-between;align-items: center;}
	
	footer #general_contact .inner .company_area{width: 40%;}
	footer #general_contact .inner .company_area .logo{margin-bottom: 10px}
	footer #general_contact .inner .company_area .logo img{width:100%;}
	footer #general_contact .inner .company_area p{margin:0;padding: 0;font-size: 13px;letter-spacing: 1px;color: #4d4d4d}
	
	footer #general_contact .inner .banner{width:50%;}
	footer #general_contact .inner .banner a{position:relative;display:block;background:linear-gradient(90deg, #2e92b8, #177298);padding: 35px 30px;color: white;font-size: 17px;letter-spacing: 1px;text-decoration: none;overflow: hidden; transition: color 0.3s ease;}	
	footer #general_contact .inner .banner a::before {  content: "";  position: absolute;  top: 0;left: 80%;  width:30%;  height: 100%;background:linear-gradient(90deg, #5fc6ca, #17a8a1);transform: skewX(-25deg);transition: width 0.5s ease, left 0.5s ease;z-index: 0}	
	footer #general_contact .inner .banner a:hover::before {  width: 105%;  left: 0;}
	footer #general_contact .inner .banner a::after{content:"\f105";position: absolute;top: 50%;transform: translateY(-50%);left: 90%;z-index: 0;font-family: 'Font Awesome 5 Free';font-weight: 900;color: white;font-size: 16px; transition: left 0.2s ease-out, color 0.3s ease;}	
	footer #general_contact .inner .banner a:hover::after{left: 92%;transition: left 0.2s ease-out;}
	footer #general_contact .inner .banner a span{ position: absolute;  top: 50%;transform: translateY(-50%);left: 60px; z-index: 1; transition: color 0.3s ease;}
	
	footer #site_map{background:#f0f7f7; margin:0px auto 0 auto;padding:60px 0 60px 0;}
	footer #site_map .inner{width: 90%;margin:0 auto;display: flex;justify-content: space-between;flex-wrap: wrap;}
	footer #site_map .inner .unit{width: 50%;margin-bottom:20px;}
	footer #site_map .inner .unit a{display:block;text-decoration: none;letter-spacing: 1px}
	footer #site_map .inner .unit .primary{margin-bottom:20px;}
	footer #site_map .inner .unit .primary a{position:relative;color:#000;font-size: 16px;letter-spacing:1px;font-weight: 400;padding-left: 20px;line-height: 1}	
	footer #site_map .inner .unit .primary a::before{position: absolute;	left:0px;	top:50%;content:'';transform:translateY(-50%); margin:0;padding: 0;background:#00779c;width: 8px;height: 8px}
	footer #site_map .inner .unit .secondary{margin-bottom:6px;}
	footer #site_map .inner .unit .secondary a{position:relative;color: #00779c;font-size: 14px;letter-spacing: 1px;font-weight: 500;margin-left:10px;padding-left: 10px}
	footer #site_map .inner .unit .secondary a::before{position: absolute;	left:0px;	top:50%;content:'';transform:translateY(-50%); margin:0;padding: 0;background:#00779c;width: 8px;height: 1px}
	footer #site_map .inner .unit a:hover{color:#4ca8c1;}
	
	footer small{width:100%;margin:0 auto;;padding:30px 0;display:block;color: white;font-size: 12px;letter-spacing: 2px;text-align:center; background: #4ca8c1}
	
	#contact_common{position:fixed;bottom: 4%;right: 2%;z-index: 9999}
	#contact_common a{display: block;background:linear-gradient(45deg, #001f26 , #175b98);color: white;text-decoration: none;width: 120px;height: 120px;border-radius: 50%}
	#contact_common a::before{content:'';position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);width: 90%;height: 90%;border: 1px solid #acfcfc;border-radius: 50%}
	#contact_common a::after{content:'\f0e0';position: absolute;top: 25%;left: 50%;transform: translateX(-50%);font-family: 'Font Awesome 5 Free';font-weight: 900;font-size: 26px;}
	#contact_common a span{position: absolute;top: 55%;left: 50%;transform: translateX(-50%);width: 90%;text-align: center;font-size: 14px;letter-spacing: 0px;line-height: 1;font-weight: 400;}
	#contact_common a:hover{background:linear-gradient(-45deg,#4fbdb8, #175b98);}
}

@media (max-width: 700px) {
	header{}	
	header #header_wrapper{position: relative; transition: .5s;z-index: 999}
	header.scroll-nav #header_wrapper{position:fixed;width: 100%; height: 80px;background:rgba(11,117,138,0.95);  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);}
	
	header #header_wrapper h1{  position: fixed;top:20px;left:4%;   width:35%; padding:0px 0 0 0px;margin: 0 0;z-index: 99}
	header #header_wrapper h1 img{width: 100%;}
	
	nav{width: 100%;position:fixed;	top:0px;left: 0;}	
	
	.button{display:block;	position: absolute;	right:0%;top:0px;width: 80px;height:80px;padding:0px 0 0 0px;margin: 0 0;text-align: center;letter-spacing: 1px; /* background:#00adc8;*/cursor:pointer;} 		
	.button span {display:block;position: absolute;	height:1px;	background:white;right:25%;	-webkit-transition: .35s ease-in-out;	-moz-transition: .35s ease-in-out;	transition: .35s ease-in-out;}
	.button span:nth-child(1) {	top:40%;width:50%;}
	.button span:nth-child(2) {	top:50%;width:40%;}
	.button span:nth-child(3) {	top:60%;width:30%;}    
	.button.open_navigation{z-index:9999;}
	.button.open_navigation span{display:block;	background:white;}
	.button.open_navigation span:nth-child(1) {width:30%;top: 50%;left: 35%;	-webkit-transform: rotate(45deg);	-moz-transform: rotate(45deg);	transform: rotate(45deg);}
	.button.open_navigation span:nth-child(2) {width: 0;	left: 50%;	 	}
	.button.open_navigation span:nth-child(3) {	width:30%;top:50%;left: 35%;	-webkit-transform: rotate(-45deg);	-moz-transform: rotate(-45deg);	transform: rotate(-45deg);}
	#nav_menu.open_navigation{	display: block;	animation-duration: 0.6s;	animation-name:button_open;z-index:999;}         
	@keyframes button_open{ from { opacity:0.1;}        to { opacity:1;}    }	
	
	
	#nav_menu{display: none;width: 100%;height:100vh;position:fixed;	top:0px;left: 0;background:rgba(11,117,138,0.8);}
	#nav_menu .inner{position: fixed;top:80px;left:0%;width:100%;height:75vh;margin:0 auto;padding:0;list-style: none;background:linear-gradient(-75deg, #0c5b7e 40%, #17517a 40%);overflow-y: scroll;	-webkit-overflow-scrolling: touch;	overflow-scrolling: touch;}				
	
	nav #primary_group{		display: block;	padding: 30px 0 20px 0;background:#ffffff;}	
	nav #primary_group .primary_unit{width: 90%;margin: 0 auto 0px auto;border-bottom: 1px solid #6f9baa;}			
	nav #primary_group .primary_unit:last-of-type{border-bottom:none;}
	
	nav #primary_group .primary_unit a.primary_a{display: block;padding:16px 0px;	text-decoration: none;	color:#000;	font-size:14px;letter-spacing: 0px;	font-weight: 400;}	
	nav #primary_group .primary_unit a.primary_a:hover{	color:#00779c;	}	
	nav #primary_group .primary_unit a.icon_down{position: relative;}
	nav #primary_group .primary_unit a.icon_down::before{position: absolute;	right:3%;	top:50%;content:'\f067';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#1792b4;font-size: 16px;}
	nav #primary_group .primary_unit a.icon_down:hover::before{	color:#1b3f4f;}
	nav #primary_group .primary_unit a.icon_normal{position: relative;}
	nav #primary_group .primary_unit a.icon_normal::before{position: absolute;	right:3%;	top:50%;content:'\f105';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#1792b4;font-size: 16px}
	nav #primary_group .primary_unit a.icon_normal:hover::before{	color:#1b3f4f;}
						
	nav .secondary_group{ 	width:100%;	visibility:visible;	opacity:1;	display: none;	transition:none;background:#f0f7f7;}
	nav .secondary_group .inner_secondary{width:100%;margin: 0 auto 10px auto;}
	nav .secondary_group .inner_secondary .pc_page_name{display: none}	
	nav .secondary_group .inner_secondary .tiny_list{margin: 0 0}	
	nav .secondary_group .inner_secondary .tiny_list a{display:block;margin: 0 auto 0px auto;border-bottom:1px solid #9db9c1;color:#000;font-size:14px;letter-spacing: 0px;text-decoration: none;}
	nav .secondary_group .inner_secondary .tiny_list a:last-of-type{border-bottom:none;}
	
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp_top{padding:14px 14px;}
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp_top span{position: relative;}
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp_top span::before{position: absolute;	left:105%;	top:50%;content:'\f105';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#00779c;font-size: 14px}
	
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp{position: relative;padding:14px 0px 14px 30px;}
	nav .secondary_group .inner_secondary .tiny_list a.icon_sp::before{position: absolute;	left:18px;	top:50%;content:'';transform:translateY(-50%); margin:0;padding: 0;background:#00779c;width: 6px;height: 2px}
	nav .secondary_group .inner_secondary .tiny_list a:hover{color:#00779c;}
	
	/*サブメニュー*/
	nav #sub_group{}
	nav #sub_group .sub_wrap{padding: 10px 0 0 0}
	nav #sub_group .sub_wrap a{position: relative;display: block;width: 90%;margin: 0 auto 5px auto;padding: 14px 0px; text-decoration: none;color: white;font-size:14px;letter-spacing: 0px;font-weight:400;border-bottom: 1px solid #6f9baa;}
	nav #sub_group .sub_wrap a:last-of-type{border-bottom:none;}
	nav #sub_group .sub_wrap a::before{position: absolute;	right:3%;	top:50%;content:'\f105';transform:translateY(-50%); margin:0;padding: 0;font-family: "Font Awesome 5 Free";font-weight: 900;color:#6f9baa;font-size: 13px}
	nav #sub_group .sub_wrap a:hover{color: #a4eaea}
	
	/*フッター*/
	footer{margin: 0 auto;padding:0px 0 0px 0;}
	
	footer #general_contact{padding: 30px 0}
	footer #general_contact .inner{width:80%;margin:0 auto;}
	
	footer #general_contact .inner .company_area{margin:0 auto 20px auto;}
	footer #general_contact .inner .company_area .logo{margin-bottom: 10px}
	footer #general_contact .inner .company_area .logo img{width:70%;}
	footer #general_contact .inner .company_area p{margin:0;padding: 0;font-size: 12px;letter-spacing: 0px;color: #4d4d4d}
	
	footer #general_contact .inner .banner{}
	footer #general_contact .inner .banner a{position:relative;display:block;background:linear-gradient(90deg, #2e92b8, #177298);padding: 30px 30px;color: white;font-size: 14px;letter-spacing: 0px;text-decoration: none;overflow: hidden; transition: color 0.3s ease;}	
	footer #general_contact .inner .banner a::before {  content: "";  position: absolute;  top: 0;left: 80%;  width:30%;  height: 100%;background:linear-gradient(90deg, #5fc6ca, #17a8a1);transform: skewX(-25deg);transition: width 0.5s ease, left 0.5s ease;z-index: 0}	
	footer #general_contact .inner .banner a:hover::before {  width: 105%;  left: 0;}
	footer #general_contact .inner .banner a::after{content:"\f105";position: absolute;top: 50%;transform: translateY(-50%);left: 90%;z-index: 0;font-family: 'Font Awesome 5 Free';font-weight: 900;color: white;font-size: 16px; transition: left 0.2s ease-out, color 0.3s ease;}	
	footer #general_contact .inner .banner a:hover::after{left: 92%;transition: left 0.2s ease-out;}
	footer #general_contact .inner .banner a span{ position: absolute;  top: 50%;transform: translateY(-50%);left: 30px; z-index: 1; transition: color 0.3s ease;}
	
	footer #site_map{background:#f0f7f7; margin:0px auto 0 auto;padding:30px 0 10px 0;}
	footer #site_map .inner{width: 80%;margin:0 auto;}
	footer #site_map .inner .unit{margin-bottom:16px;}
	footer #site_map .inner .unit a{display:block;text-decoration: none;letter-spacing: 1px}
	footer #site_map .inner .unit .primary{margin-bottom:0px;}
	footer #site_map .inner .unit .primary a{position:relative;color:#000;font-size: 14px;font-weight: 400;padding:10px 0 10px 20px;line-height: 1}	
	footer #site_map .inner .unit .primary a::before{position: absolute;	left:0px;	top:50%;content:'';transform:translateY(-50%); margin:0;padding: 0;background:#00779c;width: 8px;height: 8px}
	footer #site_map .inner .unit .secondary{margin-bottom:0px;}
	footer #site_map .inner .unit .secondary a{position:relative;color: #00779c;font-size: 13px;font-weight: 500;margin-left:10px;padding:2px 0 2px 10px}
	footer #site_map .inner .unit .secondary a::before{position: absolute;	left:0px;	top:50%;content:'';transform:translateY(-50%); margin:0;padding: 0;background:#00779c;width: 8px;height: 1px}
	footer #site_map .inner .unit a:hover{color:#4ca8c1;}
	
	footer small{width:100%;margin:0 auto;;padding:20px 0 100px 0;display:block;color: white;font-size: 10px;letter-spacing: 1px;text-align:center; background: #4ca8c1}
	
	#contact_common{position:fixed;bottom: 0%;left: 0%;width: 100%;background: white;padding: 16px 0;border-top: 1px solid #00779c;}
	#contact_common a{display: block;position:relative;background:linear-gradient(45deg,#4fbdb8, #175b98);color: white;text-decoration: none;width:90%;padding: 14px 0;margin: 0 auto;text-align: center;border-radius: 50px}
	#contact_common a span{position:relative;font-size: 14px;letter-spacing: 0px;line-height: 1;font-weight: 400;}
	#contact_common a span::after{content:'\f0e0';position: absolute;top: 50%;right: 110%;transform: translateY(-50%);font-family: 'Font Awesome 5 Free';font-weight: 900;font-size: 20px;}	
	#contact_common a:hover{background:linear-gradient(45deg, #001f26 , #175b98);}
}