

#footer .sitemap {
 padding: 50px 30px; 
}

.f-logo {
max-width: 100%;
}
.f-logo img{
width: 250px;
max-width: 100%;
margin-bottom: 10%;
}
.f-logo p{
line-height: 1.5;
}


@media screen and (max-width: 1080px) {
#footer .sitemap {
padding: 40px 0 20px;
}
.f-logo {
max-width: 100%;
background: #000e56;
padding: 3%;
margin-bottom: 15px;
}
}

#footer .sitemap--inner {
width: 100%;
max-width: 1200px;
margin: auto;
display: flex;
justify-content: space-between;
}
@media screen and (max-width: 1080px) {
#footer .sitemap--inner {
flex-flow: column;
padding: 0;
}
}


#footer .sitemap--contents {
display: flex;
flex-flow: nowrap;
width: 100%;
}
@media screen and (max-width: 768px) {
#footer .sitemap--contents {
flex-flow: column;
width: 100%;
}
}


#footer .sitemap--contents--block {
margin:0 0 0 auto;
}
@media screen and (max-width: 768px) {
#footer .sitemap--contents--block {
margin-left: 0;
width: 100%;
}
}

#footer .sitemap--contents--block.last {
width: auto;
}
@media screen and (max-width: 768px) {
#footer .sitemap--contents--block.last {
width: 100%;
}
}

#footer .sitemap--contents .mainitem {
display: block;
position: relative;
font-size: 1.6rem;
font-weight: bold;
font-family: 'NotoSansCJKjp Medium';
padding-left: 15px;
margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
#footer .sitemap--contents .mainitem {
background: #000;
background-size: 10px;
padding: 20px 5% 20px 10%;
margin-bottom: 2px;
}
#footer .sitemap--contents .mainitem.toggleItem {
background: #000;
background-size: 15px;
}
}

#footer .sitemap--contents .mainitem:before {
content: "";
position: absolute;
top: 50%;
left: 0;
margin-top: -3px;
width: 5px;
height: 5px;
border: 1px solid #fff;
}
@media screen and (max-width: 768px) {
#footer .sitemap--contents .mainitem:before {
left: 5%;
}
}
#footer .sitemap--contents .flex {
display: flex;
justify-content: space-around;
}


@media screen and (max-width: 768px) {

#footer .sitemap--contents .flex {
flex-flow: wrap;
background-color: #000;
justify-content: flex-start;
margin-top: 30px;
}
}
#footer .sitemap--contents .flex li {
margin-left: 0;
margin-bottom: 0;
margin-right: 8px;
}


@media screen and (max-width: 768px) {
#footer .sitemap--contents .flex li {
width: 48.5%;
margin-right: 0;
margin-bottom: 20px;
}
#footer .sitemap--contents .flex li.en--text {
width: 100%;
}
#footer .sitemap--contents .flex li a {
padding: 0;
}
}
@media screen and (max-width: 768px) {
#footer .sitemap--contents ul.toggle--menu {
background-color: #000e56;
margin-bottom: 7px;
}
}
#footer .sitemap--contents li {
margin-left: 15px;
margin-bottom: 18px;
}
@media screen and (max-width: 768px) {
#footer .sitemap--contents li {
margin-left: 0;
margin-bottom: 0;
border-bottom: 1px solid #fff;
}
}
#footer .sitemap--contents li a {
color: #fff;
font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
#footer .sitemap--contents li a {
display: block;
padding: 15px 5%;
}
}
