html {
    font-size: 62.5%;
}

header{
  display:block;
  height:auto;
}

body {
    margin: 0;
    padding: 0;
    font-family: 'Noto Sans JP', sans-serif;
    height: 100%;
    font-size: 1.4rem;
    width: 100%;
    position: relative;
    background: #fff;
    color: #181818;
}

h1, h2, h3, h4, h5, h6{
  color:inherit;
  font-family:inherit;
}

.l-header--main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10px 0; }

.h-logo {
  max-width: 200px; }
  @media only screen and (max-width: 575.98px) {
    .h-logo {
      width: 100%;
      max-width: inherit;
      text-align: center; } }
  .h-logo h1 {
    font-weight: normal;
    font-size: 1rem;
    margin-bottom: 5px; }
  .h-logo img {
    width: 100%;
    height: auto;
    max-width: 120px; }
    @media only screen and (max-width: 768px) {
      .h-logo img {
        margin: 0 auto; } }

@media only screen and (max-width: 575.98px) {
  .h-btn {
    width: 100%;
    position: fixed;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: 99;
    background: rgba(0, 0, 0, 0.7);
    padding: 10px 0; } }

.h-btn a {
  width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #005dc5;
  color: #fff;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 10px 0;
  margin: 0 auto;
  font-weight: bold;
  position: relative;
  z-index: 1;
  text-decoration: none;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  -ms-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s; }
  .h-btn a:after {
    content: '';
    width: 100%;
    height: 5px;
    background: #043266;
    position: absolute;
    left: 0;
    bottom: -5px;
    z-index: -1;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s; }
  .h-btn a:hover {
    -webkit-transform: translateY(5px);
    -ms-transform: translateY(5px);
    transform: translateY(5px); }
    .h-btn a:hover:after {
      bottom: 0;
      height: 0; }
  .h-btn a img {
    width: 20px;
    height: auto;
    margin-right: 5px; }

/* ==================================================
  footer
================================================== */
#footer {
  background: #3b3b3b;
  padding-bottom: 20px; }
  @media only screen and (max-width: 768px) {
    #footer {
      padding-bottom: 55px; } }
  #footer p {
    text-align: center;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.6;
    margin: 0 0;
    padding: 15px 0; }
  #footer .fnav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  #footer .fnav a {
    display: inline-block;
    color: #fff;
    padding: 10px; }


    .container {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto; }
  @media only screen and (max-width: 1199px) {
    .container {
      width: 95%; } }

/* ================================================== */

/* 02-26-2021 */
::-webkit-scrollbar {
  width: 10px; }

/* Track */
::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 1px grey;
  box-shadow: inset 0 0 1px grey;
  border-radius: 10px; }

/* Handle */
::-webkit-scrollbar-thumb {
  background: #333;
  border-radius: 10px; }

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #333; }

.bread-crumb-list ol li a, .bread-crumb-list ol li>span{
  color:initial;
}

.bread-crumb-list ol li:nth-last-child(1) a, .bread-crumb-list ol li:nth-last-child(1)>span{
  color:initial;
}

.c-ttl01{
  text-align: center;
}

.c-ttl01 h2{
  display:inline-block;
  font-weight: bold;
  position: relative;
  color:initial!important;
  padding-bottom:10px;
  line-height: 1.5!important;
  font-family: inherit!important;
}

.c-ttl01 h2:after{
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background: #000;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
}


footer{
  padding: 0 0;
}

#footer .fnav a{
  text-decoration: none;
}

.c-row .row{
  display:flex;
  border-bottom:1px solid;
  padding:15px 0;
  margin: 0 0;
}

.c-row .row dt{
  font-size:18px;
  font-weight:bold;
  width:27%;
  padding-right:15px;
}

.c-row .row dd{
  font-size:16px;
  width:73%;
}



.c-table .row{
  display:flex;
  border:1px solid #F6F6F4;
  border-bottom:none;
  margin:0 0;
}

.c-table .row:last-child{
  border-bottom:1px solid #F6F6F4;
}

.c-table .row dt{
  background:#efefef;
  color:#181818;
  width:29%;
  padding:20px 30px;
}

.c-table .row dd{
  background:#fff;
  width:71%;
    margin: 0 0;
    padding:20px 30px;
}

@media screen and (max-width: 768px){
  .c-table .row dt{
    padding:10px;
  }

  .c-table .row dd{
    padding:10px;
  }
}

.c-frame{
  max-width:1000px;
  margin:0 auto;
  background:#F6F6F4;
  padding:50px 15px;
}

.c-frame__inner{
  max-width:720px;
  margin:0 auto;
}

@media screen and (max-width: 768px){
  .c-frame{
    padding:30px 15px;
  }
}

/* .c-btn01{
  background:#015EC5;
  display:flex;
  justify-content: center;
  align-items: center;
  width:300px;
  height:40px;
  color:#fff!important;
  font-size:1.6rem;
  font-weight:500;
  margin:0 auto;
  text-decoration: none;
  max-width:100%;
} */


.c-btn02{
  text-align: center;
  width: 380px;
  max-width: 100%;
  display: flex!important;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 50px;
  background: #005dc5;
  color: #fff!important;
  margin: 0 auto;
  transition: all .3s;
  text-decoration: none;
}

.c-btn02:after{
    content: '';
    width: 100%;
    height: 5px;
    background: #043266;
    position: absolute;
    left: 0;
    bottom: -5px;
    z-index: 0;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.c-btn02:hover{
  transform: translateY(5px);
}

.c-btn02:hover:after{
    bottom: 0;
    height: 0;
}

.c-btn02 input{
  position: absolute;
  top: 0;
  left: 0;
  margin: 0 0!important;
  padding: 0 0!important;
  opacity: 0;
  height: 100%;
  width: 100%;
  z-index:1;
}

.c-btn02.disabled{
  background:#DEDEDE;
  color:#181818!important;
}

.c-btn02.disabled:after{
  background:#C1C1C1;
}

.c-pagination{
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap:wrap;
  margin-top:50px;
}

.c-pagination .page.current{
    color: #fff;
    background: #333;
    border-color: #333;
}

.c-pagination .page{
    display: flex;
    text-decoration: none;
    color: #8E8E8E;
    font-weight: bold;
    font-size: 1.4rem;
    border: 1px solid #777;
    margin: 0px 12px 5px;
    height: 48px;
    width: 48px;
    align-items: center;
    justify-content: center;
    transition:.3s ease;
}

.c-pagination .prev-next{
    font-size: 1.4rem;
    font-weight: bold;
    color: #8e8e8e;
    border: 1px solid #777;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    min-width: 63px;
    padding: 0 5px;
    margin-bottom: 5px;
    transition:.3s ease;
    margin: 0px 12px 5px;
}

.c-pagination .page:hover, .c-pagination .prev-next:hover{
    color: #fff;
    background: #333;
    border-color: #333;
}

@media screen and (max-width: 768px){
  .c-pagination{
    margin-top:30px;
  }
  
  .c-pagination .page{
    height:40px;
    width:40px;
    margin: 0px 6px 5px;
  }

  .c-pagination .prev-next{
    height:40px;
     margin: 0px 6px 5px;
  }
}

/* 03-12-2021 */
.sp{
  display:none;
}

@media screen and (max-width: 768px){
  .pc{
    display:none;
  }

  .sp{
    display:block;
  }
}

/* 03-15-2021 */
.c-frame.c-frame__small{
  padding:15px;
}

.bold{
  font-weight: bold;
}

/* 03-16-2021 */
.c-pagination a{
  text-decoration: none;
}

/* 05-12-2021 */
.c-btn02.disabled{
  pointer-events: none;
}

.c-btn02.disabled02{
  pointer-events: none;
  background:#444;
  color:#fff!important;
}

.c-btn02.disabled02:after{
  display:none;
}

/* 06-21-2021*/
.c-btn03{
  width:300px;
  height:60px;
  display:flex;
  justify-content: center;
  align-items: center;
  background:#efefef;
  border-radius: 30px;
  margin:0 auto;
  font-size:1.8rem;
  font-weight:bold;
  position:relative;
  color: initial;
  text-decoration: none;
  transition:.3s ease;
  max-width:100%;
}

.c-btn03 span.material-icons{
  position: absolute;
  right: 10px;
  font-size: 2.4rem;
  top:50%;
  transform:translateY(-50%);
}

.c-btn03:hover{
  opacity:0.7;
}

/* 09-01-2021 */
.c-btn03.c-btn03--black{
  background:#1D1D1D;
  color:#fff;
}

.c-btn03.c-btn03--arrow{
  position:relative;
}

.c-btn03.c-btn03--arrow:after{
  content:'';
  position:absolute;
  height:8px;
  width:8px;
  border:2px solid;
  border-left:none;
  border-bottom: none;
  transform:translateY(-50%) rotate(45deg);
  top:50%;
  right:25px;
}

/* 10-21-2021 */

.fnav-new ul {
  display: flex;
  flex-wrap: wrap;
}

.fnav-new ul li {
  width: 25%;
  margin-bottom:5px;
  padding-right:15px;
}

.fnav-new a {
  font-size: 16px;
  color: #fff;    
  transition:.3s ease;
  text-decoration: none;
}

.fnav-new a:hover {
  opacity: 0.5;
}

.fnav-new {
  padding: 50px 0;
  border-bottom: 1px solid #5D5D5D;
}

.fnav-new_ttl {
  font-weight: bold;
  color: #fff;
  font-size: 16px;
  margin-bottom: 25px;
}

@media screen and (max-width: 768px){
  .fnav-new {
      padding: 30px 0;
  }

  .fnav-new_ttl{
      font-size:14px;
  }

  .fnav-new ul{
      justify-content: space-between;
  }

  .fnav-new ul li{
      width:48%;
      padding-right:0;
  }

  .fnav-new a{
      font-size:14px;
  }

}

/* 01-17-2022 */
.c-btn02.c-btn02--black{
  background:#333333;
}

.c-btn02.c-btn02--black::after{
  background:#0D0D0D;
}

/* 02-01-2023 */
#toTop {
  position: fixed;
  bottom: 15px;
  right: 15px;
  width: 50px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
  border-radius: 50%;
  z-index: 999;
  cursor: pointer;
  display:none;
}

@media only screen and (max-width: 575.98px) {
  #toTop {
      bottom:80px;
  }
}