@charset "UTF-8";
/*
Author: 株式会社メックコミュニケーションズ
Author URI: http://www.mec-com.co.jp
*/


/*  CSS Index
--------------------------------------------------------------
ヘッダーのロゴは縦の長さで横幅を自動調整します。
比率に注意してください。
--------------------------------------------------------------
@media print, screen and (min-width: 768px) {pc/print}
@media screen and (max-width: 767px) {sp}
1 : base
 	  : body
 	  : frame(max-width:1160px)
 	  	  : frame.sp0
 	  : clearfix
 	  : accordion
 	  : pc/sp
2 : header
 	  : header_logo
 	  : header_search
 	  : pc(media min-width:1200px)
 	  	  : header_logo(pc)
 	  	  : header_tel(pc)
 	  	  : globalnav_btn(pc)
 	  	  : globalnav(pc)
 	  	  	  : acc_btn(pc)
 	  	  : header_search(pc)
 	  	  : header_sublink(pc)
 	  	  : header_data(pc)
 	  	  : header_toi(pc)
 	  : sp(media min-width:1199px)
 	  	  : header_logo(sp)
 	  	  : header_tel(sp)
 	  	  : globalnav_btn(sp)
 	  	  : globalnav(sp)
 	  	  	  : acc_btn(sp)
 	  	  	  : accordion(sp)
 	  	  : header_search(sp)
 	  	  : header_sublink(sp)
 	  	  : header_data(sp)
 	  	  : header_toi(sp)
3 : main
 	  : path
 	  : pager
4 : single
5 : footer
 	  : footer_nav
 	  : footer_logo
 	  : footer_data
 	  : pagetop
 	  : copyright
6 : print
-----------------------------------------------------------------------------------------*/


/*base
-----------------------------------------------------------------------------------------*/
*{
	margin: 0; 
	padding: 0; 
	list-style-type: none; 
	font-weight: 400;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
html{
	height:100%;
	font-size:10px;
}
body{
	color:#000;
	background:#FFF;
	text-align:center;
	font-size:1.8rem;
	line-height:1.5;
	height:100%;
	min-width:375px;
	-webkit-text-size-adjust:none;
}
body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
   -webkit-text-size-adjust: 100%;
   overflow-wrap: break-word;
   word-wrap: break-word
}
body * {
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   box-sizing: border-box;
}
ruby{
	ruby-position:under; 
}
ruby rt{
	margin:5px 0;
	letter-spacing:1px;
}
img{
	border-width: 0px;
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
	width /***/:auto;
}
* html img{
	border-width: 0px;
	vertical-align: top;
	padding:-1px;
}
*:first-child+html img {
	border-width: 0px;
	vertical-align: middle;
	padding:-1px;
}
h1,h2,h3,h4,h5,h6,p,ul,dl,input,table,figure,ol,.dot{
	font-size:1.8rem;
	line-height:1.5;
	margin:0;
}
/*@media screen and (max-width: 767px) {h1,h2,h3,h4,h5,h6,p,ul,dl,input,table,figure,ol,.dot{font-size:1.6rem;}}*/
ul > li,
dl > dt,
dl > dd{
	font-size:inherit
}
span{
	font-weight:inherit;
	display:inline-block;
	text-decoration:inherit;
}
em{
	font-weight:700;
	font-style:inherit;
	color:var(--color_notice);
}
strong{
	font-weight:700;
}
a{
	color:inherit;
	font-weight:inherit;
	text-decoration: none;
	outline:none;
	-webkit-text-decoration-skip: none;
}
a:hover {
	text-decoration: none;
	outline:none;
}
a:link,a:visited,a:hover,a:active {
	outline:none;
}
hr{
	border:none;
	border-bottom:1px solid rgba(0,0,0,0.2);
	margin:70px 0;
}
@media screen and (max-width: 767px) {hr{margin:30px 0;}}
#wrapper{
	width:100%;
	min-height:100vh;
	display:flex;
	flex-direction:column;
}
/*-------------------------frame*/
.frame{
	max-width:1160px;
	margin:0 auto;
	text-align:left;
	position:relative;
	padding:0 30px;
}
@media screen and (max-width: 767px) {
.frame{padding:0 20px;}
.frame.sp0{padding:0;}
}
/*-------------------------clearfix*/
.clearfix::after{
	display: block;
	clear: both;
	content: "";
}
/*-------------------------accordion*/
.accordion{
	display:none;
}
.accordion.open{
	display:block;
}
.acc_btn{
	cursor:pointer;
}
/*-------------------------pc/sp*/
@media screen and (max-width: 767px) {#wrapper .pc{display:none;}}
@media print, screen and (min-width: 768px) {#wrapper .sp{display:none;}}



/*header
-----------------------------------------------------------------------------------------*/
#wrapper{
	padding-top:var(--hh);
}
/*ヘッダーの高さ*/
@media print, screen and (min-width: 1200px) {#wrapper{--hh:110px;}}
@media screen and (max-width: 1199px) {#wrapper{--hh:90px;}}
@media screen and (max-width: 767px) {#wrapper{--hh:70px;}}
header{
	z-index:1000;
	width:100%;
	text-align:center;
	max-width:100%;
	min-width:375px;
	position:fixed;
	top:0;
	height:var(--hh);
	background:rgb(255,255,255,0.8);
	backdrop-filter: blur(5px);
	transition:all 0.3s;
}
#wrapper.scroll header{
	box-shadow: 0 0 5px rgba(0,0,0,0.1);
}
/*-------------------------header_logo*/
.header_logo{
	position:absolute;
	left:0;
	top:0;
	height:var(--hh);
	z-index:1;
}
.header_logo img{
	max-height:100%;
}
/*-------------------------header_search*/
.header_search{
	border:1px solid var(--color_ao);
	overflow:hidden;
	border-radius:40px;
	overflow:hidden;
	z-index:1;
}
.header_search input[type="text"]{
	width:calc(100% - 50px);
	height:100%;
	border:none;
	border-radius:2px;
	float:left;
	font-size:16px;
	text-indent:15px;
	background:none;
	font-weight:bold;
}
.header_search [type="text"]:focus {
	outline: 0;
}
.header_search input[type="submit"]{
	width:50px;
	height:100%;
	border:none;
	background:url(images/search_btn.svg) center center no-repeat;
	cursor:pointer;
}
.header_search input[type="submit"]:hover{
	background-color:rgba(0,0,0,0.1);
}
/*----------------------------------------------------------------------------------------pc*/
@media print, screen and (min-width: 1200px) {
#wrapper.scroll header{
	top:-50px;
}
/*-------------------------header_logo(pc)*/
.header_logo{
	padding:25px 15px;
	transition:all 0.3s;
}
.header_logo a:hover{
	opacity:0.5;
}
#wrapper.scroll .header_logo{
	height:60px;
	padding:8px 10px;
	top:50px;
}
/*-------------------------header_tel(pc)*/
.header_tel{
	display:none;
}
/*-------------------------globalnav_btn(pc)*/
.globalnav_btn{
	display:none;
}
/*-------------------------globalnav(pc)*/
.globalnav{
	display:block;
	position:absolute;
	top:50px;
	right:0;
	padding-left:300px;
	max-width:1700px;
	width:100%;
}
#wrapper.scroll .globalnav{
	padding-left:220px;
	max-width:1400px;
}
.globalnav nav > ul{
	text-align:center;
	display:flex;
}
.globalnav nav > ul > li{
	position:relative;
	flex:1 0 auto;
}
.globalnav nav > ul > li + li::before{
	content:"";
	display:block;
	width:1px;
	height:16px;
	background:var(--color_ao);
	position:absolute;
	top:22px;
	left:-1px;
}
.globalnav nav a{
	height:60px;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	font-size:18px;
	font-weight:bold;
	line-height:1.25;
	color:var(--color_ao);
}
.globalnav nav > ul > li:hover > a{
	color:#000;
}
.globalnav nav > ul > li > a:after{
	content: "";
	display: block;
	position:absolute;
	bottom:3px;
	left:50%;
	margin-left:-5px;
	height: calc(tan(60deg) * 10px / 2);
	width: 10px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background:var(--color_ao);
	transition: all 0.5s;
	transform:translateY(-10px) scale(0);
}
.globalnav nav > ul > li:hover > a:after,
.globalnav nav > ul > li:hover > a.current:after{
	transform:translateY(0) scale(1);
}
/*acc_btn(pc)*/
.globalnav nav .accordion{
	transition:all 0.5s;
	max-height:0;
	overflow:hidden;
	position:absolute;
	width:100%;
	display:block;
    left: 0;
}
.globalnav nav > ul > li:hover .accordion{
	max-height:calc(100vh - 115px);
}
.globalnav nav ul.accordion,
.globalnav nav .accordion ul{
	background:var(--color_mizu);
}
.globalnav nav .accordion li a{
	padding:0;
	font-size:14px;
	height:40px;
}
.globalnav nav .accordion li + li{
	border-top:1px dashed var(--color_ao);
}
.globalnav nav .accordion li a.current,
.globalnav nav .accordion li a:hover{
	background:var(--color_sora);
}
.globalnav nav .section li.subtitle{
	background:var(--color_ao);
	color:#FFF;
	font-size:10px;
	font-weight:bold;
	padding:0.25em;
}
.globalnav nav .section li.subtitle + li{
	border:none;
}
@media screen and (max-height: 1200px) {
	.globalnav nav .accordion.section{width:200%;display:flex;gap:1px;}
	.globalnav nav .accordion.section ul{width:100%;margin-bottom:auto;}
}
@media screen and (max-height: 640px) {
	.globalnav nav .accordion,.globalnav nav .accordion.section{display:none;}
}
/*-------------------------header_search(pc)*/
.header_search{
	position:absolute;
	right:170px;
	top:-40px;
	height:40px;
	width:260px;
}
/*-------------------------header_sublink(pc)*/
.header_sublink{
	position:absolute;
	top:-40px;
	right:443px;
	width:900px;
	display:flex;
	justify-content:end;
	gap:15px;
}
.header_sublink p a{
	line-height:40px;
	font-size:16px;
}
.header_sublink p a:hover{
	text-decoration:underline;
}
.header_sublink p a::before{
	content:"";
	display:inline-block;
	width:0.8em;
	height:0.8em;
	margin-right:0.3em;
	border-radius:1em;
	background:var(--color_ao);
	position:static;
}
/*-------------------------header_data(pc)*/
.header_data{
	display:none;
}
/*-------------------------header_toi(pc)*/
.header_toi{
	position:absolute;
	top:-40px;
	right:20px;
}
.header_toi a{
	font-weight:bold;
	height:40px;
	font-size:16px;
	color:#FFF;
	border-radius:20px;
	transition: all 0.3s;
	background:var(--color_ao);
	width:140px;
}
}
/*----------------------------------------------------------------------------------------sp*/
@media screen and (max-width: 1199px) {
/*-------------------------header_logo(sp)*/
.header_logo{
	padding:16px;
}
@media screen and (max-width: 767px) {
.header_logo{padding:14px 13px;}
}
/*-------------------------header_tel(pc)*/
.header_tel a{
	position:absolute;
	right:var(--hh);
	top:0;
	width:var(--hh);
	height:var(--hh);
	display:flex;
	justify-content:center;
	align-items:center;
	border-left:1px solid var(--color_ao);
}
.header_tel a img{
	min-width:33%;
}
.header_tel a span{
	display:none;
}
/*-------------------------globalnav_btn(sp)*/
.globalnav_btn{
	position:absolute;
	right:0;
	top:0;
	width:var(--hh);
	height:var(--hh);
	z-index:1000;
	background:var(--color_ao);
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:10%;
}
.globalnav_btn span{
	content:"";
	display:block;
	width:40%;
	height:2px;
	background:#FFF;
	transition: all 0.4s;
}
.globalnav_btn.open span:nth-child(1){
	position:absolute;
	transform:rotate(-45deg);
}
.globalnav_btn.open span:nth-child(2){
	position:absolute;
	transform:translateX(100px);
}
.globalnav_btn.open span:nth-child(3){
	position:absolute;
	transform:rotate(45deg);
}
/*-------------------------globalnav(sp)*/
.globalnav{
	padding:10px 20px;
	height:calc(100vh - var(--hh));
	overflow:auto;
	background:var(--color_ao);
	position:relative;
	top:var(--hh);
}
.globalnav nav,
.header_search,
.header_sublink{
	max-width:600px;
	min-width:335px;
	margin:10px auto;
}
#wrapper .globalnav nav .sp{
	display:block;
}
.globalnav nav > ul > li{
	position:relative;
	border-bottom:1px solid #FFF;
}
.globalnav nav ul li a{
	display:block;
	font-size:18px;
	font-weight:bold;
	height:50px;
	display:flex;
	align-items:center;
	color:#FFF;
}
/*acc_btn(sp)*/
.globalnav nav .acc_btn{
	width:100%;
	height:50px;
	position:absolute;
	right:0;
	top:0;
	display:flex;
	align-items:center;
}
.globalnav nav .acc_btn::after{
	content:"";
	width:0.5em;
	height:0.5em;
	border-top:2px solid #FFF;
	border-left:2px solid #FFF;
	margin-left:auto;
	margin-right:5px;
	transform:rotate(-135deg);
	transition: all 0.4s;
}
.globalnav nav .acc_btn.open::after,
.globalnav nav ul li a.current + p.acc_btn::after{
	transform:rotate(45deg);
}
.globalnav nav ul li a.current + p.acc_btn.open::after{
	transform:rotate(-135deg);
}
/*accordion(sp)*/
#wrapper .globalnav nav ul li a.current + p + .accordion{
	display:block;
}
.globalnav nav .accordion{
	background:#FFF;
	padding:0.4em 0.8em;
}
.globalnav nav .accordion a{
	color:var(--color_ao);
	font-size:1.7rem;
}
.globalnav nav .accordion li + li{
	border-top:1px dashed var(--color_sora);
}
.globalnav nav .section li.subtitle{
	background:var(--color_ao);
	color:#FFF;
	font-size:14px;
	font-weight:bold;
	padding:0.25em;
	margin-top:0.4em;
}
.globalnav nav .section li.subtitle + li{
	border:none;
}
/*-------------------------header_search(sp)*/
.header_search{
	height:50px;
	width:100%;
	filter: brightness(0) invert(1);
	border:1px solid #FFF;
	margin-top:15px;
}
/*-------------------------header_sublink(sp)*/
.header_sublink{
	display:flex;
	gap:5px;
	margin-top:15px;
}
.header_sublink p{
	width:100%;
}
.header_sublink p a{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	height:50px;
	font-size:16px;
	border-radius:25px;
	font-weight:bold;
	color:#000;
	background:#FFF;
}
.header_sublink p a span{
	font-size:80%;
	padding:0;
}
@media screen and (max-width: 400px) {
.header_sublink{gap:3px;}
.header_sublink p a{font-size:14px;}
}
/*-------------------------header_data(sp)*/
.header_data{
	margin-top:10px;
	color:#FFF;
}
/*-------------------------header_toi(sp)*/
.header_toi a{
	color:#FFF;
	font-weight:bold;
	background:var(--color_kon);
	border-radius:30px;
	width:270px;
	margin-top:5px;
}
}


/*main
-----------------------------------------------------------------------------------------*/
main{
	display:block;
	position:relative;
	z-index:0;
    animation-name: fadein;
    animation-duration: 2s;
	padding-bottom:min(70px, 10vw);
}
@keyframes fadein{
    from{
    opacity: 0;
    }
    to{
    opacity: 1;
    }
}
/*-------------------------pagetitle*/
.pagetitle{
	position:relative;
	height:380px;
	padding-right:230px;
}
.pagetitle::after{
	content:"";
	width:283px;
	height:175px;
	display:block;
	position:absolute;
	background:url(images/pagetitle.svg) no-repeat;
	background-size:contain;
	right:80px;
	top:30%;
}
.pagetitle h1{
	position:absolute;
	padding-left:100px;
	height:100%;
	z-index:1;
	display:flex;
	align-items:center;
	color:#FFF;
	font-size:40px;
	text-align:left;
	font-family: "Zen Maru Gothic",serif;
}
.pagetitle figure{
	position:relative;
	border-top-right-radius:50px;
	border-bottom-right-radius:50px;
	width:100%;
	height:100%;
	overflow:hidden;
}
.pagetitle figure::before{
	content:"";
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	background: linear-gradient(to right, rgba(0,0,0,0.6) ,  rgba(0,0,0,0.4) 10%,  rgba(0,0,0,0));
}
.pagetitle figure img{
	width:100%;
	height:100%;
	object-fit:cover;
}
@media screen and (max-width: 1320px) {
	.pagetitle h1{padding-left:calc(50% - 550px);}
}
@media screen and (max-width: 1199px) {
	.pagetitle{height:150px;padding-right:0;}
	.pagetitle::after{display:none;}
	.pagetitle h1{padding-left:30px;font-size:30px;}
	.pagetitle figure{border-radius:0;}
}
@media screen and (max-width: 767px) {
	.pagetitle{height:100px;padding-right:0;margin-bottom:min(70px, 10vw);}
	.pagetitle h1{padding-left:20px;font-size:24px;}
}
/*-------------------------path*/
.path{
	padding:10px 10px 50px 100px;
}
.path p{
	font-size:1.6rem;
	text-align:left;
}
.path p strong{
	font-weight:400;
}
.path p a:hover{
	background:linear-gradient(transparent 95%, #000 95%);
}
.path a::after{
	content:">";
	display:inline-block;
	padding:0 0.5em 0.1em 0.5em;
	vertical-align:0.1em;
	background:#FFF;
}
@media screen and (max-width: 1320px) {
	.path{padding-left:calc(50vw - 550px);}
}
@media screen and (max-width: 1199px) {
	.path{padding:10px 30px 30px 30px;}
	.path p{font-size:1.4rem;}
}
@media screen and (max-width: 767px) {
	.path{display:none;}
}
/*-------------------------layout*/
.layout{
	display:flex;
	gap:60px;
}
/*contents*/
.contents{
	width:100%;
}
/*sidebar*/
.sidebar{
	flex-shrink:0;
	width:230px;
	order:-1;
}
@media screen and (max-width: 1199px) {
	.layout{flex-wrap:wrap;}
	.sidebar{width:100%;order:1;}
}
/*-------------------------sidebar*/
.sidebar nav h2{
	font-family: "Zen Maru Gothic",serif;
	font-size:2.4rem;
	padding-bottom:0.5em;
	color:var(--color_ao);
	border-bottom:1px solid var(--color_ao);
}
.sidebar nav li{
	border-bottom:1px dashed var(--color_ao);
}
.sidebar nav li a{
	display:flex;
	align-items:center;
	min-height:60px;
	line-height:1.25;
}
.sidebar nav li a.current,
.sidebar nav li a.uncurrent:hover,
.sidebar nav li a:hover{
	background:#F3F3F3;
}
.sidebar nav li a.uncurrent{
	background:none;
}
/*acc_btn*/
.sidebar nav .acc_btn{
	font-family: "Zen Maru Gothic",serif;
	font-size:2rem;
	line-height:60px;
	padding-left:10px;
	margin-top:20px;
	background:var(--color_mizu);
	position:relative;
}
.sidebar nav .acc_btn:hover{
	background:var(--color_sora);
}
.sidebar nav .acc_btn::before,
.sidebar nav .acc_btn::after{
	content:"";
	width:10px;
	height:2px;
	border-radius:1px;
	background:var(--color_ao);
	position:absolute;
	right:12px;
	top:29px;
	transition: all 0.4s;
}
.sidebar nav .acc_btn::before{
	transform:rotate(90deg);
}
.sidebar nav .acc_btn.open::before{
	transform:rotate(0);
}
/*-------------------------article*/
article + article{
	margin-top:100px;
}
@media screen and (max-width: 767px) {
	article + article{margin-top:50px}
}
/*-------------------------pager*/
.pager{
	margin-top:30px;
	text-align:center;
}
.pager p{
	color:#555;
	font-size:1.4rem;
	margin-bottom:3px;
}
.pager li{
	display:inline-block;
}
.pager li a,
.pager li span{
	display:block;
	background:rgba(0,0,0,0.1);
	width:4rem;
	font-size:1.6rem;
	line-height:4rem;
	text-align:center;
	margin:2px;
	text-decoration:none;
	border-radius:5px;
}
.pager li span{
	color:#FFF;
	background:var(--color_ao);
}
.pager li span.dots{
	background:none;
	color:#4D4D4D;
	width:auto;
	padding:0;
}
.pager li a:hover{
	background-color:#CCCCCC;
}

/*single
-----------------------------------------------------------------------------------------*/
.single{
	border:1px solid #BDBDBD;
	padding:50px;
	position:relative;
}
.single + .single{
	margin-top:30px;
}
@media screen and (max-width: 767px) {
	.single{border:none;padding:0;}
	.single + .single{padding-top:30px;border-top:3px double #BDBDBD;}
}
/*-------------------------single_data*/
.single_data{
	font-size:1.6rem;
	font-weight:bold;
}
.single_data time{
	font-weight:bold;
	display:inline-block;
	margin-right:1em;
}
.single_data a{
	white-space:nowrap;
	color:var(--color_ao);
}
.single_data a:hover{
	text-decoration:underline;
}
/*-------------------------single_title*/
.single_title.tx_bold{
	color:#000;
	padding-bottom:1em;
	border-bottom:1px solid #BDBDBD;
}
/*-------------------------single_kiji*/
.single_kiji p{
	margin-top:1.75em;
}
/*見出し1*/
.single_kiji h2{
	font-weight:bold;
	font-size:2rem;
	background:var(--color_kon);
	color:#FFF;
	padding:0.3em 0.5em;
	margin-top:3em;
	margin-bottom:0.5em;
}
/*見出し2*/
.single_kiji h3{
	font-size:2rem;
	font-weight:bold;
	color:var(--color_kon);
	margin-top:1.5em;
	margin-bottom:0.5em;
}
/*見出し3*/
.single_kiji h4{
	font-weight:bold;
	color:var(--color_kon);
	margin-top:1.5em;
	border-bottom:1px solid #666;
	padding-bottom:0.3em;
	margin-bottom:0.5em;
}
/*写真下説明*/
.single_kiji h5{
	font-size:1.6rem;
	margin-top:5px;
	line-height:1.5;
}
/*写真センター*/
.single_kiji img.aligncenter{
	margin:0 auto;
	display:block;
}
/*hr*/
.single_kiji hr{
	margin:30px 0;
}
/*番号なしリスト*/
.single_kiji ul li:before{ 
	margin-left:-1em;
	display:inline-block; 
	content:'';
	width:1em;
	height:1em;
	background:rgba(0,0,0,1);
	border-radius:50%;
	transform:scale(0.6) translateY(0.3em);
}
.single_kiji li{
	font-size:inherit;
	margin-left:1em;
}
.single_kiji li + li{margin-top:0.25em;}
.single_kiji h2:first-child,
.single_kiji h3:first-child,
.single_kiji h4:first-child,
.single_kiji h5:first-child,
.single_kiji p:first-child{
	margin-top:30px;
}



/*footer
-----------------------------------------------------------------------------------------*/
footer{
	position:relative;
	margin-top:auto;
}
/*-------------------------pagetop*/
.pagetop a{
	position:fixed;
	bottom:0;
	right: 0;
	z-index:20;
	width:90px;
	height:90px;
	font-size:18px;
	font-weight:bold;
	color:var(--color_ao);
	background:rgba(230,230,230,0.8);
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	padding-top:5px;
}
.pagetop a::before{
	content:"";
	display:block;
	width:15px;
	height:15px;
	border:2px solid var(--color_ao);
	border-right:none;
	border-bottom:none;
	transform:rotate(45deg);
}
.pagetop a:hover{
	background:var(--color_ao);
	color:#FFF;
}
.pagetop a:hover::before{
	border-color:#FFF;
}
@media screen and (max-width: 767px) {
	.pagetop a{width:50px;height:50px;font-size:13px;padding-top:3px;}
	.pagetop a::before{width:6px;height:6px;}
}
/*-------------------------footer_nav*/
.footer_nav{
	background:var(--color_ao);
}
.footer_nav ul{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	padding:20px 0;
	max-width:980px;
	margin:0 auto;
}
.footer_nav li{
	flex:1 0 auto;
}
.footer_nav li a{
	display:block;
	color:#FFF;
	line-height:20px;
	padding:15px 0;
	margin:-15px 0;
	border-radius:3px;
	font-weight:bold;
}
.footer_nav li a:hover{
	background:rgba(0,0,0,0.5);
}
@media print, screen and (min-width: 768px) {
	.footer_nav li + li{border-left:1px solid #FFF;}
}
@media screen and (max-width: 767px) {
	.footer_nav ul{flex-direction:column;padding:10px;}
	.footer_nav li a{font-size:16px;padding:0;margin:0;line-height:40px;}
}
/*-------------------------footer_logo*/
@media screen and (max-width: 1400px) and (min-width: 768px) {
	.footer_logo{margin-top:-30px;}
}
/*-------------------------footer_data*/
.footer_data a{
	font-size:24px;
	letter-spacing:1.5px;
	font-weight:bold;
}
.footer_data a img{
	vertical-align:middle;
	margin-right:3px;
}
@media screen and (max-width: 767px) {
	.footer_data{font-size:15px;}
}
/*-------------------------footer_ban*/
.footer_ban{
	position:absolute;
	top:0;
	right:100px;
	display:flex;
	gap:10px;
}
.footer_ban li{
	max-width:180px;
}
@media screen and (max-width: 900px) {
	.footer_ban{flex-direction:column;}
}
@media screen and (max-width: 767px) {
	.footer_ban{position:static;margin:20px auto;max-width:180px;}
}
/*-------------------------footer_sns*/
.footer_sns{
	position:absolute;
	top:10px;
	right:30px;
	display:flex;
	gap:30px;
}
@media screen and (max-width: 767px) {
	.footer_sns{position:static;justify-content:center;margin:20px auto;}
}
/*-------------------------copyright*/
.copyright{
	font-size:12px;
	display:block;
	position:absolute;
	right:30px;
	bottom:0;
}
@media screen and (max-width: 1400px) {
		.copyright{right:auto;bottom:-40px;}
}
@media screen and (max-width: 767px) {
	.copyright{position:static;}
}
