/** このファイルにCSSを記載してください。画像も同一フォルダ内に、同一階層で(フォルダを作成せずに)保存してください。 **/

@media screen and (min-width: 600px) {
  /* PC用メディアクエリ */
  html {
    height: 100%;
    width: 100%;
  }
.page__all,
.nomenu:not(.nomenu:has(.menu__wrap > .info)) .page__all {
   display: grid;
  }

    body.custom {
    background: linear-gradient(#fff 105px, rgba(0, 0, 0, 0.08) 105px, #fff 108px);
    background-repeat: no-repeat;
    height: 100%;
    width: 100%;

    .page__all,
    .nomenu:not(.nomenu:has(.menu__wrap > .info)) .page__all {
      display: grid;
      grid-template-columns: 1fr;
      grid-template-rows: 105px 1fr 75px;
      background: transparent;
      width: 100%;
      height: 100%;
      position: relative;
      border-radius: 0;
      padding: 0;
    }

    .header__img {
      display: block;
      height: 105px;
      margin: 0 auto;
      padding: 0;
      background: url(./header_logo.jpg) center center/980px no-repeat;
    }

    .page__inner {
      display: flex;
      background: #fff;
      align-items: start;
      width: 980px;
      margin: 30px auto;
      box-sizing: border-box;
    }

    .header {
      margin: 0;
    }

    .header,
    .menu__back,
    .menu__wrap {
      height: 100%;
      box-sizing: border-box;
    }

    .main {
      background: #ffffff;
      padding: 10px;
      box-sizing: border-box;
      border: solid 1px #c1c9df;
      /* 標準仕様 (現代のブラウザ) */
      height: stretch;
      /* 古いWebkit系ブラウザ (Safari, Chromeなど) */
      height: -webkit-fill-available;
      margin: 0;
    }

    .logo {
      display: none;
    }

    #contents__title {
      border: none;
      border-bottom: 1px solid #19448e;
      box-sizing: border-box;
      width: 100%;
      padding: 0 12px 10px 15px;
      border-radius: 0;
      color: #19448e;
      background: #fff;
    }

    #footer {
      margin: 0;
      width: 100%;
      box-shadow: 0 -2px 2px -1px rgba(0, 0, 0, 0.08);
      min-height: 20px;
    }

    #original__footer {
      position: relative;
      width: 100%;
      margin: 0 auto;
      padding: 5%;
      box-sizing: border-box;
    }

    #original__footer ul li a:link,
    #original__footer ul li a:visited,
    #original__footer ul li span {
      font-size: 1.2rem;
      line-height: 1.8;
      color: #010101;
      text-decoration: none;
      cursor: pointer;
    }

    #original__footer p {
      padding-top: 5%;
      font-size: 1.0rem;
    }

    #original__footer ul li a:hover,
    #original__footer ul li a:active,
    #original__footer ul li span:hover,
    #original__footer ul li span:active {
      color: #010101;
      text-decoration: underline;
    }

    #menu {
      box-sizing: border-box;
      width: 200px;
      margin: 0;
      background: #ffffff;
      padding: 0 4px 4px;
      border: solid 1px #c1c9df;


      .menu__sub,
      .menu__text {
        border-top: 1px dashed #ccc;
      }

      .menu li {
        width: 190px;
        margin: 6px 0 0 0;
      }
    }

    /* 一旦ボタン背景をなくす */

    .menu a {
      background: transparent;
      border: none;
      box-shadow: none;
    }

    /* カスタムボタンを設定するため一旦ボタン背景をなくす */

    .menu {
      .menu__now a:hover,
      .menu__mid a,
      .menu__mid a:hover,
      .menu__mid.menu__now a,
      .menu__mid.menu__now a:hover,
      .menu__high a,
      .menu__high a:hover,
      .menu__high.menu__now a,
      .menu__high.menu__now a:hover {
        border: none;
        box-shadow: none;
      }

      .menu__mid a,
      .menu__high a {
        border-left: none;
      }
    }

    /* カスタムボタンの指定を改めて記述 */

    .menu {
      a {
        color: #6b7eb2;
        background-color: #ced4e5;
        box-shadow: none;
        border: 1px solid #8393bf;
        border-radius: 0;
        transition: 0.5s;
      }

      a:hover {
        background-color: #f9f8f7;
        box-shadow: 0 1px #eeebe8;
        top: 0;
        opacity: .5;
      }

      .menu__button + .menu__button {
        margin-top: 6px;
      }

      .menu__high a,
      .menu__high a:hover {
        box-shadow: none;
        border: none;
        color: #ffffff;
        background: rgb(239, 94, 123);
        background: -moz-linear-gradient(top, rgb(239, 94, 123) 0%, rgb(230, 0, 45) 100%);
        background: -webkit-linear-gradient(top, rgb(239, 94, 123) 0%, rgb(230, 0, 45) 100%);
        background: linear-gradient(to bottom, rgb(239, 94, 123) 0%, rgb(230, 0, 45) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ef5e7b', endColorstr='#e6002d', GradientType=0);
      }

      .menu__mid a,
      .menu__mid a:hover {
        box-shadow: none;
        color: #ffffff;
        border: none;
        background: rgb(67, 91, 157);
        background: -moz-linear-gradient(top, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
        background: -webkit-linear-gradient(top, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
        background: linear-gradient(to bottom, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#435b9d', endColorstr='#08287f', GradientType=0);
      }

      .menu__now a,
      .menu__mid.menu__now a,
      .menu__high.menu__now a {
        background: #dcdddd;
        box-shadow: none;
        border: 1px solid #8393bf;
        top: 0;
        color: #6b7eb2;
        border-radius: 0;
      }

      .menu__now a:hover,
      .menu__mid.menu__now a:hover,
      .menu__high.menu__now a:hover {
        background: #dcdddd;
        box-shadow: none;
        border: 1px solid #8393bf;
      }

    }


    /*　ここからTOPバナー　*/

    .mizuho_tab01 {
      width: 100%;
      display: flex;
      flex-direction: row;
      box-sizing: border-box;
    }

    .mizuho_tab01 li {
      width: 49.5%;
      margin-right: 1%;
      font-size: 22px;
    }

    .mizuho_tab01 li:last-child {
      margin-right: 0;
    }


    .mizuho_tab01 li.none {
      display: block;
      padding: 23px 0;
      font-size: 1.5rem;
      font-weight: bold;
      color: #ffffff;
      text-decoration: none;
      text-align: center;
      background-color: #DFE6F9;
      transition: 0.5s;
    }


    .mizuho_tab01 li a:link,
    .mizuho_tab01 li a:visited {
      display: block;
      padding: 16px 0 17px;
      font-weight: bold;
      color: #ffffff;
      text-decoration: none;
      text-align: center;
      background: #797a7d;
      transition: 0.5s;
    }

    .mizuho_tab01 li a:hover,
    .mizuho_tab01 li a:active {
      color: #ffffff;
      text-decoration: none;
      opacity: 0.5;
    }

    .mizuho_tab01 li a:link,
    .mizuho_tab01 li a:visited {
      background: rgb(67, 91, 157);
      /* Old browsers */
      background: -moz-linear-gradient(top, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
      /* FF3.6-15 */
      background: -webkit-linear-gradient(top, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to bottom, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#435b9d', endColorstr='#08287f', GradientType=0);
      /* IE6-9 */
    }

    .mizuho_tab01 li.-red a:link,
    .mizuho_tab01 li.-red a:visited {
      box-shadow: none;
      border: none;
      color: #ffffff !important;
      background: rgb(239, 94, 123);
      background: -moz-linear-gradient(top, rgb(239, 94, 123) 0%, rgb(230, 0, 45) 100%);
      background: -webkit-linear-gradient(top, rgb(239, 94, 123) 0%, rgb(230, 0, 45) 100%);
      background: linear-gradient(to bottom, rgb(239, 94, 123) 0%, rgb(230, 0, 45) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ef5e7b', endColorstr='#e6002d', GradientType=0);
    }

    .mizuho_tab01 li a:hover {
      opacity: .5;
    }

    .mizuho_tab01 li span {
      display: block;
      margin-top: 5px;
      font-size: 11px;
    }

    .mizuho_tab01 li a:link.-ajt {
      padding: 13px 0 12px 0 !important;
    }

    .mizuho_tab_top {
      width: 100%;
      margin-bottom: 30px;
    }

    .mizuho_tab_top li {
      float: left;
      width: 23.8%;
      margin-right: 1.5%;
    }

    .mizuho_tab_top li:last-child {
      margin-right: 0;
    }

    .mizuho_tab_top li a:link,
    .mizuho_tab_top li a:visited {
      display: block;
      padding: 23px 0;
      font-size: 1.5rem;
      font-weight: bold;
      color: #ffffff;
      text-decoration: none;
      text-align: center;
      background: #797a7d;
      transition: 0.5s;
    }

    .mizuho_tab_top li a:hover,
    .mizuho_tab_top li a:active {
      color: #ffffff;
      text-decoration: none;
      opacity: 0.5;
    }

    .mizuho_tab_top li a:link,
    .mizuho_tab_top li a:visited {
      background: rgb(67, 91, 157);
      /* Old browsers */
      background: -moz-linear-gradient(top, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
      /* FF3.6-15 */
      background: -webkit-linear-gradient(top, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to bottom, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#435b9d', endColorstr='#08287f', GradientType=0);
      /* IE6-9 */
    }

    .mizuho_tab_top li a:hover {
      opacity: .5;
    }

  }

  /*　nomenuの処理　*/
  .nomenu:not(.nomenu:has(.menu__wrap > .info)) .header {
    display: none;
  }

  .nomenu {
    .menu__back {
      display: none;
    }

    .header:has(.info) .menu__back {
      display: block;
    }
  }
}

/* PC用メディアクエリここまでーーーーーーーーーーー */
@media screen and (max-width: 599px) {
  body.custom {
    .header {
      height: 122px;
      padding-left: 0;
      background: #fff url(./sp_header_logo.jpg) center center/187px no-repeat;
    }

    .logo {
      display: none;

      a, img {
        display: none;
      }
    }

    #contents__title {
      border: none;
      border-bottom: 1px solid #19448e;
      box-sizing: border-box;
      padding: 0 12px 10px 15px;
      border-radius: 0;
      color: #19448e;
      background: #fff;
    }

    #footer {
      border-top: solid 1px #808080;
      margin-bottom: 0;
      padding: 15px 0;
    }

    /*　ここからTOPバナー　*/

    ul.mizuho_tab01 {
      width: 100%;
      flex-direction: column;
    }

    .mizuho_tab01 li {
      width: 100%;
      box-sizing: border-box;
      border-bottom: solid 1px #ffffff;
    }

    .mizuho_tab01 li:last-child {
      border-right: none;
    }

    .mizuho_tab01 li.none {
      display: block;
      padding: 13px 0;
      font-size: 1.4rem;
      font-weight: bold;
      color: #ffffff;
      text-decoration: none;
      text-align: center;
      background-color: #DFE6F9;
      transition: 0.5s;
    }


    .mizuho_tab01 li a:link,
    .mizuho_tab01 li a:visited {
      display: block;
      padding: 13px 0;
      font-weight: bold;
      color: #ffffff;
      text-decoration: none;
      text-align: center;
      background: #797a7d;
      transition: 0.5s;
    }

    .mizuho_tab01 li a:hover,
    .mizuho_tab01 li a:active {
      color: #ffffff;
      text-decoration: none;
      opacity: 0.5;
    }

    .mizuho_tab01 li a:link,
    .mizuho_tab01 li a:visited {
      background: rgb(67, 91, 157);
      /* Old browsers */
      background: -moz-linear-gradient(top, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
      /* FF3.6-15 */
      background: -webkit-linear-gradient(top, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to bottom, rgb(67, 91, 157) 0%, rgb(8, 40, 127) 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#435b9d', endColorstr='#08287f', GradientType=0);
      /* IE6-9 */
    }

    .mizuho_tab01 li.-red a:link,
    .mizuho_tab01 li.-red a:visited {
      box-shadow: none;
      border: none;
      color: #ffffff !important;
      background: rgb(239, 94, 123);
      background: -moz-linear-gradient(top, rgb(239, 94, 123) 0%, rgb(230, 0, 45) 100%);
      background: -webkit-linear-gradient(top, rgb(239, 94, 123) 0%, rgb(230, 0, 45) 100%);
      background: linear-gradient(to bottom, rgb(239, 94, 123) 0%, rgb(230, 0, 45) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ef5e7b', endColorstr='#e6002d', GradientType=0);
    }

    .mizuho_tab01 li.-red a:link span {
      display: block;
      margin-top: 3px;
      font-size: 11px;
    }

    #mypage_top #contents__title p {
      text-align: center;
    }

    #top__letter__title,
    #top__message__title {
      border-bottom: none;
      color: #ffffff;
      background: rgb(159, 171, 205);
      background: -moz-linear-gradient(top, rgb(159, 171, 205) 0%, rgb(102, 122, 175) 100%);
      background: -webkit-linear-gradient(top, rgb(159, 171, 205) 0%, rgb(102, 122, 175) 100%);
      background: linear-gradient(to bottom, rgb(159, 171, 205) 0%, rgb(102, 122, 175) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#9fabcd', endColorstr='#667aaf', GradientType=0);
    }

    .event_layout p.event_ch {
      padding-top: 20px;
      font-size: 1.7rem;
      line-height: 1.8;
      font-weight: bold;
    }

    .event_bx {
      margin-top: 15px;
      padding-bottom: 0;
      margin-bottom: 15px;
    }

    .ev_course {
      font-size: 16px;
      border-bottom: 1px solid #6b7eb2;
      color: #6b7eb2;
      font-weight: bold;
      padding-bottom: 5px;
      margin-bottom: 10px;
    }

    .ev_program {
      font-size: 14px;
      color: #333333;
      font-weight: bold;
      margin-bottom: 5px;
      margin-top: 10px;
    }

    .ev_txt {
      margin-bottom: 20px;

    }

    .guide_read {
      margin-bottom: 20px;
      text-align: center !important;
      padding-top: 0;
      margin-top: 50px;
      color: #DF0003;
      font-size: 18px;
      margin-right: auto;
      margin-left: auto;
    }

    .btn-movie {
      background-image: linear-gradient(#8C0000 0%, #EA540C 100%);
      color: #fff;
      display: inline-block;
      font-weight: bold;
      padding-top: 5px;
      padding-right: 5px;
      padding-left: 5px;
      padding-bottom: 5px;
      text-align: center;
      text-decoration: none;
      transition: all .2s linear;
      font-size: 11px;
      width: 80px;
      margin-left: auto;
      margin-right: auto;
    }

    .btn-movie:hover {
      color: #fff;
      background-image: linear-gradient(#8C0000 0%, #8C0000 100%);
    }

  }
}

/* SP用メディアクエリの閉じタグーーーーーーーーーーー */
/* PC・SP兼用 */
body.custom .contents__title::before {
  display: none;
}
/* entry、ログアウト、エラーページでカスタムボタンを非表示 */
#entry_ .mizuho_tab01,
#entry_agreement .mizuho_tab01,
#entry_input .mizuho_tab01,
#entry_confirm .mizuho_tab01,
#entry_submit .mizuho_tab01,
#entry_error .mizuho_tab01,
#entry_matched .mizuho_tab01,
#entry_matched_mn .mizuho_tab01,
#mypage_logout .mizuho_tab01,
#mypage_error .mizuho_tab01 { display:none; }
