@charset "utf-8";
/* CSS Document */

footer {overflow: hidden; position: relative;}
footer::before {content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: var(--primary-color); z-index: -2;}
footer::after {content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 1) url("../img/26478295_l.jpg") center -340px / cover no-repeat; z-index: -1; opacity: 0.8; background-blend-mode: lighten;}
footer .bg {margin-top: 250px; background: #c8c9ca;}
footer .bg nav.fnav {display: flex; width: 1100px; margin: 0 auto; padding: 50px 0; position: relative; justify-content: center;}
footer .bg nav.fnav #logo img {width: 80px;}

/*  footer navigartion  */
footer .bg nav.fnav > ul {justify-content: space-between; position: relative; margin: 25px 0 0 40px;}
footer .bg nav.fnav ul li {padding-left: 6em;}
footer .bg nav.fnav ul li a {font-size: 1.3em; color: #000;}
/*  sub-list  */
footer .bg nav.fnav ul li ul li {padding-left: 0.1em; padding-top: 0.1em;}
footer .bg nav.fnav ul li ul li:nth-of-type(1) {padding-top: 0.3em;}
footer .bg nav.fnav ul li ul li a {font-size: 1em; color: #666;}

footer .bg #copyright {color: #000; position: relative; width: 100%; padding: 30px 0 10px; margin: 0 auto; text-align: center;}

/* responsive */
/* PC：950px〜1200px　TAB：768(600)px〜834px SP：375(360)px〜414px */
@media (min-width: 1600px){
footer .bg {background-size: 100%;}
}
@media screen and (max-width: 1099px) {
footer .bg nav.fnav {width: 100%;}
footer .bg nav.fnav #logo {margin-left: 20px;}
footer .bg nav.fnav ul li {padding-left: 3em;}
}
@media screen and (max-width: 949px) {
footer .bg nav.fnav {width: 100%;}
footer .bg nav.fnav #logo {width: 40%; margin: 0 auto;}
footer .bg nav.fnav #logo img {display: block; margin: 0 auto;}
footer .bg nav.fnav > ul {width: fit-content; width: 60%; margin: 0 auto; padding: 0 0 20px;}
footer .bg nav.fnav ul {flex-direction: column; height: auto;}
footer .bg nav.fnav ul li {margin-bottom: 1em; padding-left: 1em;}
footer .bg nav.fnav ul li a::before {content: none;}
footer .bg nav.fnav ul li ul li {display: inline;}
}
@media screen and (max-width: 799px) {
}
@media screen and (max-width: 599px) {
footer .bg #copyright p {font-size: 0.8em;}
footer .bg nav.fnav ul li ul li {display: block; margin-bottom: 0.2em;}
footer .bg nav.fnav ul li ul li:nth-last-of-type(1) {margin-bottom: 0.4em;}
}
@media screen and (max-width: 414px) {
footer .bg nav.fnav {flex-direction: column; align-items: center;}
footer .bg nav.fnav > ul {margin: 40px auto 0;}
}

/* ------------------ pagetop ------------------ */
.pagetop {display: none; z-index: 300; position: fixed; bottom: 15px; right: 15px; margin: 0; box-shadow: 0 0 3px 0px #c7c7c7;}
.pagetop a {display: block; background-color: #0000004a; text-align: center; color: #fff; font-size: 12px; text-decoration: none; padding: 16px 14px; filter: alpha(opacity=80); -moz-opacity: 0.8; opacity: 0.8; border: 1px solid #fff; border-radius: 5px; text-shadow: 0 0 3px #c7c7c7;}
.pagetop a:hover {background-color: #1a1a1a;}
.pagetop a img {width: 16px;}