@charset "utf-8";
/*==================================
  reSet
==================================*/
*{
    margin:0;
    padding:0;
    box-sizing: border-box;
}
*::before, *::after {
  box-sizing: border-box;
}
body{
    width:100%;
    color: #333333;
    font-family:"Meiryo","メイリオ", "ヒラギノ角ゴ Pro","Hiragino Kaku Gothic ProN","ＭＳ Ｐゴシック","MS Pgothic", Helvetica, Verdana, Arial, sans-serif;
    word-wrap: break-word;   
}
html{
    font-size: 10px;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
main {
  display: block;
}
p, a, div, h1, h2, h3, h4, h5, h6, li, dt, dd, th, td, address, pre, blockquote, span,figcaption {
  font-size: 100%;
  line-height: inherit;
}
ul,ol{
    list-style-type: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}
th, td {
  text-align: left;
}

a {
  background-color: transparent;
  outline: none;
  color: currentColor;
  text-decoration: none;
}
img {
  max-width: 100%;
  height: auto;
  border: none;
  vertical-align: top;
}
svg {
  max-width: 100%;
  height: auto;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
hr {
  border: none;
}
label, input, button, textarea, select {
  font-size: 100%;
  font-family: inherit;
  font-weight: inherit;
  line-height: inherit;
  outline: none;
}
input::-ms-clear {
  visibility: hidden;
}
input::-moz-focus-inner, button::-moz-focus-inner {
  border: 0;
}
a:hover{
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    
}
p.pc, img.pc, br.pc, div.pc{
    display: block;
    font-size:0;
}
p.smp, img.smp, br.smp, br.tab, div.smp{
    display: none;
}
@media screen and (max-width:767px){
/*
    body{
     padding-top: 50px;
    }
*/
    p.pc, img.pc, br.pc, div.pc{
        display: none !important;
    }
    p.smp, img.smp, br.smp, div.smp{
        display: block !important;
        font-size:0;
    }
    .contents__inner{
        width: 100%;
        padding: 0 2%;
    }
}
.clearfix::after{
   content: "";
   display: block;
   clear: both; 
}

@media screen and (max-width:767px){
    main.lower-page{
        overflow: hidden;
    }   
}

/*
	font
================================================== */

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url('../font/NotoSerifCJKjp-Regular.woff') format('opentype');
}
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 700;
  src: url('../font/NotoSerifCJKjp-Bold.woff') format('opentype');
}
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 900;
  src: url('../font/NotoSerifCJKjp-Black.woff') format('opentype');
}

/*
	print
================================================== */
@media print {
  body {
    width: 1200px;
    transform: scale(0.9);
    transform-origin: 0 0;
    overflow-y: visible !important;
  }
  @page {
    margin: 8mm;
    margin: 10mm 8mm 10mm 8mm;
  }
  [data-no-print] {
    display: none !important;
  }
}

/*
	layout
================================================== */
    [data-type="container"]{
     max-width: 1200px;
        width: 100%;
        margin:0 auto;
        box-sizing: border-box;   
    }
    @media screen and (max-width:767px){
        [data-type="container"]{
            width: 100%;
        }
    }


/*
	header
================================================== */
/*
header{
    display: block;
}
*/
div.smp-header{
    display: none;
}
div.pc-header{
    padding-top: 30px;
    padding-bottom:20px;
    width: 100%;
    overflow: hidden;
    background: #fff;
    height: auto;
    position: fixed;
    top:0;
    left: 0;
    z-index: 20;
     -webkit-transition: all 0.3s;
     -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
       -o-transition: all 0.3s;
          transition: all 0.3s;
}
@media screen and (max-width:767px){
    div.smp-header{
        display: block!important;
    }
    div.pc-header{
        display: none!important;
    }
}
div.pc-header.scrolled{
    padding-top: 25px;
     padding-bottom: 15px;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -ms-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    opacity: .9;
}
/*
div.pc-header__nav-sub{
    height: 50px;
    margin-bottom: 20px;
}
*/
div.pc-header__container{
    margin:0 auto;
    position: relative;
}
div.pc-header__nav-sub ol{
     float: right;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
div.pc-header__nav-sub ol li{
    border-left: 6px solid #00a5ff;
    border-bottom: 6px solid #00a5ff;
    -webkit-transform: skewX(160deg);
-moz-transform: skewX(160deg);
transform: skewX(160deg);
}
div.pc-header__nav-sub ol li a{
    display: block;
    padding: 5px 15px 2px;
    -webkit-transform: skewX(-160deg);
-moz-transform: skewX(-160deg);
    transform: skewX(-160deg);
}
div.pc-header__nav-sub ol li a:hover{
    opacity: .5;
}
div.pc-header__nav-sub ol li img{
    width:150px;
     vertical-align: middle;
    padding-bottom: 10px;
}
div.pc-header__nav-sub ol li span{
    font-size: 1.6rem;
    font-weight: bold;
    vertical-align: middle;
}
div.pc-header__block{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
/*
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
*/
}

div.pc-header__ttl{
/*    margin-right: 20px;*/
    min-width:340px;
    margin-top: -15px;
    padding-left: 15px;
    -webkit-box-flex:1;
	-ms-flex-positive:1;
	flex-grow:1;
}
div.pc-header__ttl h1{
   margin: 0;
   padding-right: 20px;
}
div.pc-header__ttl h1 a img{
    max-width: 466px;
    width: 100%;
    vertical-align: middle;
    padding-bottom: 10px;
}
div.pc-header__ttl h1 a span{
    font-size: 2.2rem;
    font-weight: bold;
    vertical-align: middle;
}
div.pc-header__nav-main{
    -webkit-box-flex:2.2;
	-ms-flex-positive:2.2;
	flex-grow:2.2;
    max-width: 1070px;
/*    min-width: 811px;*/
}
div.pc-header__nav-main ul{
/*    min-width: 768px;*/
    padding-right: 1rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
     -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
div.pc-header__nav-main ul li a{
    font-size:1.5rem;
    padding: 5px 5px 5px 0;
    position: relative;
}

div.pc-header__nav-main ul li a::after{
    position: absolute;
    bottom: -4px;
    left: 0;
    content: '';
    width: 100%;
    height: 2px;
    background: #333;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform .3s;
}
div.pc-header__nav-main ul li a:hover::after{
    transform: scale(1, 1);
}

@media screen and (max-width:1199px){
    div.pc-header__block{
        display: block;
        }
    div.pc-header__nav-main{
             margin: 0 auto;
        }
    div.pc-header__nav-main ul{
            padding: 0 5px;
        }
    div.pc-header__nav-main ul li a{
        padding: 5px 0;
    }
}

@media screen and (max-width:800px){
    div.pc-header__nav-main ul li a{
        font-size: 1.4rem;   
    }
}
@media screen and (max-width:767px){
    div.smp-header{
        width: 100%;
        position: fixed;
        top:0;
        left: 0;
        z-index: 20;
        background-color: #fff;
        height: 50px;
    }
    div.smp-header h1{
        max-width: 300px;
        width: 75%;
        position: absolute;
        bottom:10px;
        left: 5px;
    }
    div.smp-header h1 img{
        width: 100%;
    }
    div.smp-header h1 span{
        font-size: 1.6rem;
        font-weight: bold;
        vertical-align: bottom;
    }
    div#nav-toggle {
        display: block;
        z-index:99;
        position:absolute;
        top:0;
        right:0;
        width: 50px;
        height: 50px;
        cursor: pointer;
        background-color: #fff;
    }
	div#nav-toggle div {
        position: relative;
        margin:0 auto 0 auto;
        width:30px;
    }
	div#nav-toggle span {
        display: block;
        position: absolute;
        height: 3px;
        width: 100%;
        background-color: #333;
        left: 0;
		-webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
	div#nav-toggle span:nth-child(1) {
        top: 13px;
    }
	div#nav-toggle span:nth-child(2) {
        top: 25px;
    }
	div#nav-toggle span:nth-child(3) {
        top: 37px;
    }
    #smp-header__nav.open div#nav-toggle{
        background-color: #011a27 ;
    }
    #smp-header__nav.open div#nav-toggle span{
        background-color: #fff;
    }
	#smp-header__nav.open div#nav-toggle span:nth-child(1) {
        top: 25px; -webkit-transform: rotate(405deg);
        -moz-transform: rotate(405deg);
        transform: rotate(405deg);
    }
	#smp-header__nav.open div#nav-toggle span:nth-child(2) {
        width: 0;
    }
	#smp-header__nav.open div#nav-toggle span:nth-child(3) {
        top:25px;
        -webkit-transform: rotate(-405deg);
        -moz-transform: rotate(-405deg);
        transform: rotate(-405deg);
    }
    div#nav-inner{
        height:0;
        background: #0a5096;
        overflow: hidden;
        color: #fff;
        position: absolute;
        top: 50px;
        left: 0;
        width: 100%;
    }
    div#nav-inner ul,div#nav-inner ol{
        width: 100%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    div#nav-inner ul li{
        width: 50%;
        border-bottom: 1px #fff solid;   
    }
    div#nav-inner ul li:nth-of-type(odd){
        border-right: 1px #fff solid;
    }
    div#nav-inner ul li a{
        display: block;
        font-size:1.6rem;
        padding: 16px;
    }
    div#nav-inner ul li a img{
        width: 1.6rem;
        vertical-align: middle;
    }
    div#nav-inner ol li{
        width: 50%;
        border: #00a5ff solid 3px;
        background-color: #fff;
        padding:12px;
    }
    div#nav-inner ol li a {
        display: block;

    }
    div#nav-inner ol li a span{
        display: block;
        font-size: 1.6rem;
        font-weight:bold;
        text-align: center;
        color: #333;
    }
    div#nav-inner ol li a img{
        display: block;
        max-width: 200px;
        width: 90%;
        margin: 0 auto;
    }
    div#nav-inner ol li.pre p {
        display: block;
        font-size: 1.6rem;
        font-weight:bold;
        text-align: center;
        color: #333;
        position: relative;
        height: 100%;
    }
    div#nav-inner ol li.pre p span{
            width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    }
    
    div.nav-close__wrapper{
        cursor: pointer;
        border:#fff 1px solid;
        padding:10px 12px;
        width: 194px;
        margin:20px auto 0 auto;
        z-index:99;
    }
    div.nav-close__wrapper p{
        display: inline-block;
        font-size: 16px;
        vertical-align: top;
        padding-top:6px;
    }
    div.nav-close {
        display: inline-block;
        width: 30px;
        height: 30px;
    }

    div.nav-close div {
        position: relative;
        margin:0 auto 0 auto;
/*        width:30px;*/
    }
	div.nav-close span {
        display: block;
        position: absolute;
        height: 2px;
        width: 100%;
         background-color: #fff;
        left: 0;
		-webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
	div.nav-close span:nth-child(1) {
        top:15px;
        -webkit-transform: rotate(405deg);
        -moz-transform: rotate(405deg);
        transform: rotate(405deg);
    }
	div.nav-close span:nth-child(2) {
        top:15px;
        -webkit-transform: rotate(-405deg);
        -moz-transform: rotate(-405deg);
        transform: rotate(-405deg);
    }
}
@media screen and (max-width:340px){
    div#nav-inner ul li a{
        display: block;
        font-size:1.5rem;
        padding: 12px;
    }
    div#nav-inner ol li a span{
        font-size: 1.45rem;
    }
}

/*
	下層ページ共通
================================================== */
main.lower-page{
 padding-bottom: 5%;   
}

/*
	下層ページメインビジュアル lower-page__main-visual
================================================== */
section.lower-page__main-visual{
    margin-top: ;
    margin-bottom: 5%;
}
section.lower-page__main-visual>div{
    height: 250px;
    position: relative;
}
section.lower-page__main-visual>div#business__main-visual{
    background: url(../business/img/main_visual.jpg)center center/cover no-repeat;
}
section.lower-page__main-visual>div#senior-interview__main-visual{
    background: url(../senior-interview/img/main_visual.jpg)center center/cover no-repeat;
}
section.lower-page__main-visual>div#support__main-visual{
    background: url(../support/img/main_visual.jpg)center center/cover no-repeat;
}
section.lower-page__main-visual>div#concept__main-visual{
    background: url(../concept/img/main_visual.jpg)center center/cover no-repeat;
}
section.lower-page__main-visual>div#job-interview__main-visual{
    background: url(../job-interview/img/main_visual.jpg)center center/cover no-repeat;
}
section.lower-page__main-visual>div h1{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    font-family: "Noto Serif Japanese","Sawarabi Mincho", "メイリオ","ヒラギノ角ゴ Pro W3", serif;
    font-weight: 800;
    font-size: 3.5rem;
    line-height: 1.2;
    color: #fff;
    text-align: center;
/*    width:86%;*/
}
section.lower-page__main-visual>div h1 span{
    font-family: "Renner*";
        font-weight: 700;
    font-size: 1.8rem;
}
@media screen and (max-width:767px){
    section.lower-page__main-visual>div h1{
        width: 86%;
    }
}


/*
	共通ボタンA
================================================== */

div.recruit__common-btnA{
    padding:0 2%;
}
div.recruit__common-btnA ul{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    padding-top:0.8%;
    margin-bottom: 5%;
}
div.recruit__common-btnA ul li{
    width: 48%;
}
div.recruit__common-btnA ul li a{
    position: relative;
    display: block;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    border: #011a27 2px solid;
    padding: 5%;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}
div.recruit__common-btnA ul li a span{
    display: inline-block;
    padding-right: 12%;
    word-break: keep-all;
    width:100%;
}
div.recruit__common-btnA ul li a::after{
    content: '';
    display: inline-block;
    width: 39px;
    height: 12px;
    background-image: url(../img/arrow_half_bl.svg);
    background-size: contain;
    vertical-align: middle;
    text-align: right;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 5%;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}
div.recruit__common-btnA ul li a:hover{
    color: #fff;
    background-color: #011a27;
}
div.recruit__common-btnA ul li a:hover::after{
    background-image: url(../img/arrow_half.svg);
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}

@media screen and (max-width:767px){
    div.recruit__common-btnA ul{
        display:block;
        padding-top:0.8%;
        margin-bottom: 5%;
    }
    div.recruit__common-btnA ul li{
        width: 100%;
        margin-bottom: 5%;
    }
}
/*-------------------外部リンクアイコンつける時----------------------*/
div.recruit__common-btnA ul li a.before-btn--icon span{
    position: relative;
    width: auto;
}
div.recruit__common-btnA ul li a.before-btn--icon span::before{
    content: '';
    display: inline-block;
    width: 20px;
    height: 17px;
    background-image: url(../img/icon_link_bl@2x.png);
    background-size: contain;
    vertical-align: middle;
    text-align: right;
    position: absolute;
    top: 40%;
    transform: translateY(-50%);
    right: 15%;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}
div.recruit__common-btnA ul li a.before-btn--icon:hover span::before{
    background-image: url(../img/icon_link@2x.png);
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}

@media screen and (max-width:500px){
    div.recruit__common-btnA ul li a.before-btn--icon span::before{
        right: 0;
    }
}

/*
	共通ボタンB
================================================== */

div.recruit__common-btnB{
    
}
div.recruit__common-btnB ul{
    display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
div.recruit__common-btnB ul li{
    display: flex;
    width: 50%;
}
div.recruit__common-btnB ul li:first-of-type{
    border-right: 2px #fff solid;
}
div.recruit__common-btnB ul li a{
    display: block;
    width: 100%;
    background: #011a27;
    font-size: 2rem;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding:30px 10px;
    position: relative;
    border: solid 2px #011a27;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}

div.recruit__common-btnB ul li a::before{
    content:" ";
    display: inline-block;
    background-image: url(../img/icon_under.svg);
    background-size: contain;
    width: 21px;
    height: 12px;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    left: 20%;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}
div.recruit__common-btnB ul li a img{
    width:2rem;
}
div.recruit__common-btnB ul li a img,
div.recruit__common-btnB ul li a span{
    vertical-align: middle;
}
div.recruit__common-btnB ul li a:hover{
    background: #fff;
    color: #011a27;
}
div.recruit__common-btnB ul li a:hover::before{
    background-image: url(../img/icon_under_bl.svg);
}

@media screen and (max-width:1029px){
    div.recruit__common-btnB ul li a::before{
        left: 5%;
    }
}
@media screen and (max-width:767px){
    div.recruit__common-btnB ul li a{
        font-size: 1.6rem;
        padding:20px 10px 40px 10px;
    }
    div.recruit__common-btnB ul li a::before{
        position: absolute;
        top:auto;
        bottom:20px;
        left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    }
}

/*
	共通ボタンC
================================================== */
div.recruit__common-btnC{
    padding:0 2%;
}
div.recruit__common-btnC p{
    padding-top:0.8%;
    margin:0 auto 5% auto;
    width: 50%;
}
div.recruit__common-btnC p a{
    position: relative;
    display: block;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    border: #011a27 2px solid;
    padding: 5%;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}
div.recruit__common-btnC p a span{
    display: inline-block;
    padding-right: 12%;
    word-break: keep-all;
    width:100%;
}
div.recruit__common-btnC p a::after{
    content: '';
    display: inline-block;
    width: 39px;
    height: 12px;
    background-image: url(../img/arrow_half_bl.svg);
    background-size: contain;
    vertical-align: middle;
    text-align: right;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 5%;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}
div.recruit__common-btnC p a:hover{
    color: #fff;
    background-color: #011a27;
}
div.recruit__common-btnC p a:hover::after{
    background-image: url(../img/arrow_half.svg);
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}

@media screen and (max-width:767px){
    div.recruit__common-btnA p{
        width: 100%;
        margin-bottom: 5%;
    }
}


/*
	footer
================================================== */
footer{
    background: #011a27;
    padding: 5%;
}
p.footer__link-home-smp{
        display: none;
    }
p.footer__link-home-pc{
        display: block;
    }
div.footer__link ol{
        display: block;
    }
ol.footer__link-mynavi-smp{
    display: none;
}
div.footer__link {
    max-width: 800px;
    margin: 0 auto 5% auto;
   display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
div.footer__link-general{
     display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -webkit-box-flex:1;
	-ms-flex-positive:1;
	flex-grow:1;
} 
div.footer__link-general ul li{
    line-height: 2.5;
}
div.footer__link-general ul li a{
    color: #fff;
    font-size: 1.6rem;
    position: relative;
}
div.footer__link-general ul li a img{
    width: 1.8rem;
    vertical-align: middle;
}
div.footer__link-general ul li a::after{
    position: absolute;
    bottom: -4px;
    left: 0;
    content: '';
    width: 100%;
    height: 2px;
    background: #fff;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform .3s;
}
div.footer__link-general ul li a:hover::after{
    transform: scale(1, 1);
}
div.footer__link ol li{
    margin-bottom: 12px;
}
div.footer__link ol li a,
div.footer__link ol li.pre p{
    display: block;
    padding: 16px 20px;
    background: #fff;
    color: #011a27;
    font-size: 1.6rem;
    font-weight: bold;
    border: #00a5ff 2px solid;
}
div.footer__link ol li.pre p{
    text-align: center;
}

div.footer__link ol li img{
    width: 150px;
    vertical-align: top;
    margin-top:-8px;
}
div.footer__link ol li a:hover{
    opacity: 0.9;
}

div.footer__container>p img{
    width: 465px;
}
div.footer__container>p{
    color: #fff;
    text-align: center;
    margin-bottom: 40px;
}
div.footer__container>p span{
    font-size:2rem;
    font-weight: bold;
    vertical-align: bottom
}
div.footer__container>p small{
    font-size: 1rem;
}

@media screen and (max-width:767px){
    footer{
        padding:0;
    }
    p.footer__link-home-smp{
        display: block!important;
    }
    p.footer__link-home-pc{
        display: none!important;
    }
    div.footer__link ol{
        display: none!important;
    }
    ol.footer__link-mynavi-smp{
        display: block;
    }
    div.footer__link{
        display: block;
        padding: 5% 2%;
    }
    div.footer__link-general ul li a{
        font-size: 1.4rem;
    }
    div.footer__link-general{
        margin-bottom: 20px;
    }

    ol.footer__link-mynavi-smp{
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        flex:1;
    }
    ol.footer__link-mynavi-smp li{
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
         width:50%;
    }
    ol.footer__link-mynavi-smp li:first-of-type{
        border-right: 1px solid #333;
    }
    ol.footer__link-mynavi-smp li a,
    ol.footer__link-mynavi-smp li.pre p{
        display: block;
        padding: 16px 20px;
        background: #fff;
        color: #011a27;
        font-size: 1.6rem;
        font-weight: bold;
        text-align: center;
    }
    ol.footer__link-mynavi-smp li.pre p{
        width:100%;
        position: relative;
    }
    ol.footer__link-mynavi-smp li.pre p span{
        width: 100%;
        position: absolute;
        top:50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    }
    ol.footer__link-mynavi-smp li img{
        width: 90%;
    }
    p.footer__link-home-smp{
        width: 100%;
        padding: 5% 0 10% 0;
        color: #fff;
        text-align: center;
    }
    p.footer__link-home-smp img{
        max-width: 465px;
        width: 90%;
    }
    p.footer__link-home-smp span{
        font-size:1.5rem;
        font-weight: bold;
        vertical-align: bottom
}
}
@media screen and (max-width:400px){
    ol.footer__link-mynavi-smp li a,
    ol.footer__link-mynavi-smp li.pre p{
        padding: 12px;
    }
}

/*
	topへ戻る
================================================== */

div#page_top{
    width: 50px;
    height: 50px;
    position: fixed;
    bottom: 30px;
    right: 30px;
/*    padding: 16px;*/
   background: #0a5096;
   opacity: 0.7;
   border-radius: 50%;
    z-index: 15;
}
div#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
div#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

@media screen and (max-width:767px){
    div#page_top{
        position: fixed;
        bottom: 20px;
        right: 10px;
        width: 60px;
        height: 60px;
    }
    div#page_top a{
      position: relative;
      display: block;
      width: 60px;
      height: 60px;
      text-decoration: none;
    }
        div#page_top a::before{
            font-size: 35px;
      width: 35px;
      height: 35px;
      top: -8px;

    }
}




