
footer{
background-color: #1a1f25;
padding-top:50px;
margin-top: 6em;
}



footer .contents {
  max-width: 1440px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 22% 78%;
}




.footer_btn_area{
    display:flex;
    list-style:none;
    margin: 0 auto;
    padding: 30px 0 30px;
    justify-content: space-between;
    flex-wrap: wrap;
    width:98%;
}

.mtb10 {
    margin: 10px 0;
    max-width:49%;
}

.mtb10 img{
   width: 100%;
}


.f_all_link{
    width:100%;
    justify-content: space-between;
}

.s1_item{
    display: table;
}

.f_link_s1{
    max-width:100%;
    width:53%;
}

.s1_item_left{
    padding-right: 60px;
    display: table-cell;
}

.s1_item_right{
    padding-right: 25px;
    display: table-cell;
}


.f_link_s2, .f_link_s3{
    max-width:100%;
    width:20%;
}

a.mark-logo-link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 35%;
    height: 100%;
}

.pmark{
  position: relative;
}

.footer-title {
    color: rgba(255,255,255,.7);
    font-size: 17px;
    font-weight: bold;
    margin: 0;
    padding: 15px 15px 15px 0px;
}

.foot-sub {
    color: rgba(255,255,255,.8);
    font-size: 13px;
    padding: 4px 0px 4px 0px;
}

.mark_logo_box{
    position:relative;
    padding-top:15px;
    width: 260px;
}

.footer_sns{
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    width: 42%;
    margin-top: 12px;
}

.sns_box{
    display: block;
    text-align: center;
    width: 38px;
    height: 38px;
    background-color: #61656c00;
    border-radius: 20px;
}

.sns_facebook{
    color:#fff;
    font-size: 21px;
    padding-top: 8px;
}

.sns_twitter{
    color:#fff;
    font-size: 21px;
    padding-top: 6px;
    padding-right: 1px;
}

.sns_youtube{
    color:#fff;
    font-size: 21px;
    padding-top: 5px;
    padding-right: 1px;
}

.flexbox {
    flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.footer_ul li {
    font-size: 12px;
    font-family: "Meiryo";
    color: rgba(255,255,255,.5);
}

.footer_ul li a {
    color: rgba(255,255,255,.5);
    font-size: 13px;
    text-decoration: none;
    line-height: 1.4;
    font-family: "Meiryo";
}

.footer_ul li a:hover {
    color: #1899F1;
    line-height: 1.4;
    text-decoration: none;
    font-family: "Meiryo";
}


.footer_ul_item{
  padding-bottom:6px;
  font-family: "Meiryo";
}

.footer_sub_title{
  color: rgba(255,255,255,.5);
  font-size: 13px;
  text-decoration: none;
  line-height: 1.4;
  font-family: "Meiryo";
}



.footer_ul_item li a {
    color: rgba(255,255,255,.5);
    font-size: 13px;
    text-decoration: none;
    line-height: 1.4;
    font-family: "Meiryo";
}

.footer_ul_item li a:hover {
    color: #1899F1;
    font-family: "Meiryo";
}


.footer_sub_title a {
    font-size: 14px !important;
    color: rgba(255,255,255,.5);
    text-decoration: none;
    line-height: 1.4;
    font-family: "Meiryo";
}

.footer_sub_title a:hover{
  color: #378ee4;
  font-family: "Meiryo";
}


a.menu_suburl_link{
  color: rgba(255,255,255,.5);
  font-size: 13px;
  text-decoration: none;
  line-height: 1.4;
  font-family: "Meiryo";
}


.link_title{
position: relative;
font-family: "Meiryo";
}


/* .link_title:after{
  content: url(/images/icon_arrow_blue.svg);
  position: absolute;
  width: 9px;
  height: 9px;
  top: 22%;
  right: auto;
  transform: translateY(-50%);
  transition: .3s;
  margin-left: 4px;
} */


.link_title:hover:after{
  padding-left: 8px;
}






.footer{
    text-align: center;
}

.footer .wrap{
  padding-bottom: 40px;
      padding-top: 40px;
      font-size: 14px;
      font-weight: 100;
}


#page_top a {
    position: relative;
    display: block;
    width: 60px;
    height: 60px;
    text-decoration: none;
}


#page_top {
  position: fixed;
  right: 2%;
  bottom: -14%;
  background: transparent;
  border-radius: 50%;
  font-size: 50px;
}


.top_move {
    margin: 30px 0 75px;
    text-align: right;
}


.invisible {
    display: none;
}




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

footer{
  padding-left:20px;
  padding-right:20px;
}
}



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


/* shutto デザイン start*/

footer{
    margin-top: 0;
    }


.arrow_icon{
    width: 8px;
    float: right;
    padding-right: 15px;
    opacity: 0.8;
    padding-top: 8px;

}

.sp_f_li{
    padding: 15px 0px 15px 35px;
    border: 1px solid #CCCCCC;
    border-width: 0 0 1px 0;
}
.sp_f_li_n{
    padding: 15px 0px 15px 20px;
    border: 1px solid #424446;
    border-width: 0 0 1px 0;
}

.footer_link{
    padding: 0.25em 0 0.25em 0;
    position: relative;
    display: block;
    color: inherit;
    text-decoration: inherit;
}

/* shutto デザイン end*/


    .footer_btn_area{
        padding: 15px 0;
    }

    .f_all_link{
        width:100%;
        justify-content: flex-start;
    }

    .s1_item_left {
        margin-right: 3em;
    }

    .f_link_s1{
        max-width:100%;
    }

    .f_link_s2, .f_link_s3{
        max-width:100%;
    }

    .f_link_s2{
        margin-right:3vw;
    }

}





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

    .s1_item_left {
        margin-right: 0;
    }

    .f_link_s1{
        max-width:100%;
    }

    .f_link_s2, .f_link_s3{
        max-width:100%;
    }

    #banner{
        display: none !important;
    }

}


@media screen and (max-width: 480px) {
    .mtb10 {
        margin: 3px 0;
        max-width: 100%;
    }

    .sp_f_li{
      padding: 15px 0px 15px 35px;
  border: 1px solid #424446;
  border-width: 0 0 1px 0;
    }

    .sp_f_li_n{
    background-color: #343639;
    }

    .footer_link {
       color: #CFCFCF !important;
  }


}


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

    .s1_item_left{
        padding-right: 10px;

    }

    .s1_item_right{
        padding-right: 0;

    }

}
