@charset "UTF-8";
.view_pc {
  display: none; }

.view_pcTab {
  display: none; }

.view_tabSp {
  display: block; }

.view_tablet {
  display: none; }

.view_sp {
  display: block; }

.pcInline {
  display: none; }

.spInline {
  display: inline; }

body.diactive {
  overflow: hidden; }

/* ================================================ 
	ローディング処理 
==============================================================================================================================================================*/
/* ================================================ 
	共通パーツ
==============================================================================================================================================================*/
/* ================================================ 
	header 
==============================================================================================================================================================*/
header .headCont {
  position: relative;
  padding: 15px; }
  header .headCont .logo {
    margin-bottom: 0;
    max-width: none;
    width: 70%;
    position: relative;
    z-index: 11; }
    header .headCont .logo a {
      display: flex;
      align-items: center; }
  header .headCont #u8 {
    display: none; }
  header .headCont #headtel {
    margin: 0 auto 14px;
    max-width: 320px; }
    header .headCont #headtel .telBtn {
      pointer-events: auto; }
      header .headCont #headtel .telBtn div {
        font-size: 1.4rem;
        line-height: 150%; }
      header .headCont #headtel .telBtn p {
        font-size: 2.0rem;
        line-height: 150%; }
        header .headCont #headtel .telBtn p img {
          margin-right: 8px;
          height: 20px;
          vertical-align: middle; }
  header .headCont #headMemberPage {
    display: none; }

/* ================================================ 
	nav
==============================================================================================================================================================*/
#head-navi {
  display: block; }

#imCover.active {
  opacity: 1; }

#inMenu {
  pointer-events: auto;
  position: fixed;
  top: -150vh;
  transition: 0.1s;
  right: 0;
  width: 100%;
  height: auto;
  max-height: 100vh;
  overflow: auto;
  overflow: auto;
  box-sizing: border-box;
  background: #f2f4f7;
  text-align: left;
  padding: 80px 0;
  z-index: 11; }
  #inMenu.active {
    top: 0; }
  #inMenu .spMenuList {
    margin: 5px auto 15px;
    width: 94%;
    display: block; }
    #inMenu .spMenuList li {
      padding: 5px 0 7px;
      font-family: 'times New Roman',sans-serif; }
      #inMenu .spMenuList li a {
        display: block;
        text-decoration: none;
        color: #fff;
        font-size: 18px;
        line-height: 150%;
        padding: 5px 0; }

/* ================================================ 
	sidebar menu
==============================================================================================================================================================*/
.mega-menu {
  position: relative;
  width: 100%;
  margin-bottom: 20px;
  border-bottom: 1px #777 solid;
  display: block; }
  .mega-menu li {
    position: relative;
    border-top: 1px #777 solid;
    padding: 0; }
    .mega-menu li a {
      display: block;
      padding: 10px 20px;
      background: none;
      border-radius: none; }

#u8-guide {
  display: block;
  text-align: center; }
  #u8-guide a {
    display: inline-block;
    background: #43B0E8;
    border-radius: 100px;
    padding: 10px 24px;
    font-size: 1.4rem;
    line-height: 150%;
    font-weight: bold;
    text-align: center;
    color: #fff;
    transition: .8s;
    position: relative; }
    #u8-guide a:hover {
      text-decoration: none;
      background: #8DCEF1; }
    #u8-guide a::after {
      content: '';
      position: absolute;
      top: 50%;
      right: 10px;
      transform: translate(0, -44%);
      width: 6px;
      height: 10px;
      background: url("../img/arrow.svg") no-repeat;
      background-size: 6px 10px; }

/* ================================================ 
	footer
==============================================================================================================================================================*/
footer #foot-contents {
  margin: 0 auto;
  padding: 0 0 20px;
  display: block; }
  footer #foot-contents #foot-navi ul {
    margin: 0;
    display: block; }
    footer #foot-contents #foot-navi ul li {
      text-align: center;
      font-size: 1.4rem;
      line-height: 180%; }
      footer #foot-contents #foot-navi ul li a {
        display: block;
        text-align: center;
        border-top: 1px #aaa dotted;
        padding: 5px 10px; }
        footer #foot-contents #foot-navi ul li a:hover {
          text-decoration: none; }
    footer #foot-contents #foot-navi ul:last-child {
      margin-top: 0; }
      footer #foot-contents #foot-navi ul:last-child li {
        font-size: 1.2rem;
        line-height: 180%; }
  footer #foot-contents .copyrights {
    width: 100%;
    margin: 0 auto;
    border-top: 1px #aaa dotted; }
    footer #foot-contents .copyrights figure {
      margin: 20px auto 0;
      text-align: center; }
    footer #foot-contents .copyrights p {
      text-align: center; }

#breadcrumb {
  margin: 0 auto;
  padding: 30px 20px 0;
  width: 100%;
  max-width: 1200px;
  box-sizing: border-box;
  background: #fff; }
  #breadcrumb ul {
    flex-flow: column nowrap;
    padding-bottom: 10px;
    border-bottom: 1px #ccc dotted; }
    #breadcrumb ul li {
      margin-bottom: .3em;
      font-size: 1.4rem;
      line-height: 150%; }
      #breadcrumb ul li::after {
        content: '>';
        margin: 0 5px;
        font-size: 1.4rem;
        line-height: 150%; }
      #breadcrumb ul li:last-child::after {
        display: none; }

/* ================================================ 
	introduction
==============================================================================================================================================================*/
#introduction {
  margin: 0 auto;
  width: 94%;
  max-width: 1260px;
  padding: 30px 0 0; }
  #introduction h1 {
    font-size: 2.6rem;
    line-height: 150%;
    margin-bottom: 10px; }
  #introduction p {
    font-size: 1.6rem;
    line-height: 180%; }

/* ================================================ 
	main-contents-area
==============================================================================================================================================================*/
#main-contents-area {
  margin: 0 auto;
  width: 94%;
  max-width: 1260px;
  box-sizing: border-box;
  padding: 50px 0 20px;
  background: #fff; }
  #main-contents-area .inner {
    flex-flow: column nowrap; }
    #main-contents-area .inner #contents {
      flex: 1; }

/* ================================================ 
	side bar
==============================================================================================================================================================*/
aside {
  margin-right: 0; }
  aside h2 {
    text-align: center; }

#top-aside {
  margin-bottom: 30px;
  width: 100%;
  box-sizing: border-box;
  padding: 15px; }
  #top-aside ul li {
    border-bottom: 1px #ccc dotted;
    padding-bottom: 1em;
    margin-bottom: 1em; }
    #top-aside ul li time {
      font-size: 1.6rem;
      line-height: 150%; }
    #top-aside ul li p {
      margin-top: 1.2em;
      font-size: 1.3rem;
      line-height: 180%; }

#page-aside {
  margin-bottom: 30px;
  width: 100%;
  box-sizing: border-box;
  order: 2; }
  #page-aside h2 {
    font-size: 1.8rem;
    line-height: 150%;
    padding: 15px; }
  #page-aside ul li {
    border-bottom: 1px #D8D8D8 solid;
    word-break: break-all; }
    #page-aside ul li:last-child {
      border-bottom: 0; }
    #page-aside ul li a {
      display: block;
      padding: 25px 30px 25px 20px;
      font-size: 1.6rem;
      line-height: 150%;
      position: relative; }

#faq-aside {
  margin-bottom: 30px;
  width: 100%;
  order: 2; }
  #faq-aside h2 {
    font-size: 1.8rem;
    line-height: 150%;
    padding: 15px; }
  #faq-aside ul li {
    border-bottom: 1px #D8D8D8 solid;
    word-break: break-all; }
    #faq-aside ul li:last-child {
      border-bottom: 0; }
    #faq-aside ul li a {
      display: block;
      padding: 25px 30px 25px 20px;
      font-size: 1.6rem;
      line-height: 150%;
      position: relative; }

/* ================================================ 
	top-contents
==============================================================================================================================================================*/
.top-contents ul {
  display: block;
  flex-flow: row wrap; }
  .top-contents ul li {
    width: 100%;
    margin: 0 0 30px 0;
    box-sizing: border-box;
    padding: 15px;
    border: 1px #ccc solid; }
    .top-contents ul li:nth-child(2n) {
      margin-right: 0; }
    .top-contents ul li h2 {
      font-size: 2.2rem;
      line-height: 150%; }
    .top-contents ul li p {
      margin-top: 1em;
      font-size: 1.4rem;
      line-height: 180%; }
    .top-contents ul li .datail {
      text-align: right; }

/* ================================================ 
	pager
==============================================================================================================================================================*/
.pager {
  margin-top: 60px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .pager span {
    margin: 0 15px;
    font-size: .8rem;
    line-height: 150%; }
  .pager a {
    font-size: .8rem;
    line-height: 150%;
    text-decoration: none;
    border: 2px #0054A4 solid;
    padding: 10px 35px;
    position: relative;
    transition: .6s;
    margin: 0; }
    .pager a.prev {
      padding-left: 38px; }
      .pager a.prev::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 5px;
        width: 16px;
        height: 13px;
        transform: translate(0, -50%);
        background: url("../img/arrow6.svg") no-repeat left center;
        background-size: 16px 13px; }
    .pager a.next {
      padding-right: 38px; }
      .pager a.next::after {
        content: '';
        position: absolute;
        top: 50%;
        right: 5px;
        width: 16px;
        height: 13px;
        transform: translate(0, -50%);
        background: url("../img/arrow5.svg") no-repeat right center;
        background-size: 16px 13px; }
    .pager a:hover {
      opacity: .7; }
    .pager a.dis {
      pointer-events: none;
      border-color: #F5F5F5;
      background: #F5F5F5;
      color: #D0D0D0; }
      .pager a.dis::after {
        display: none; }

.backlist {
  margin: 50px auto 60px;
  width: 80%;
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center; }
  .backlist span {
    padding: 0 10px;
    margin: 0 5px;
    font-size: 1.2rem;
    line-height: 150%; }
  .backlist a {
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    font-size: 1.2rem;
    line-height: 150%;
    text-decoration: none;
    border: 2px #0054A4 solid;
    padding: 15px 60px;
    position: relative;
    transition: .6s;
    margin: 15px 0 0;
    color: #0054A4; }
