@charset "UTF-8";
/*------------------------
ログイン
-------------------------*/
.login-main {
  font-size: 1.6rem;
  line-height: 1.6; }
  .login-main .box {
    width: 100%;
    margin: 10px;
    border: 1px solid #001C4E;
    border-radius: 8px;
    padding: 30px; }
    .login-main .box h3.loginbox {
      color: #003366;
      font-weight: bold;
      font-size: 2.0rem;
      text-align: center;
      margin-bottom: 20px; }
  .login-main .notice {
    border: 1px solid #ff0000;
    border-radius: 8px;
    padding: 30px;
    margin-bottom: 20px;
    text-align: center; }
    .login-main .notice .ttl {
      font-weight: 700;
      font-size: 2.4rem;
      line-height: 1.4;
      color: #EC4E20;
      margin-bottom: 20px; }
    .login-main .notice .txt {
      text-align: left; }
      .login-main .notice .txt span {
        color: #EC4E20;
        font-weight: bold; }
    .login-main .notice button {
      background-color: #ff6600;
      color: #fff; }
  .login-main .login-forms {
    display: flex;
    margin: -10px; }
  .login-main form {
    display: flex;
    flex-direction: column; }
    .login-main form label {
      margin-bottom: 5px; }
      .login-main form label input[type="checkbox"] {
        width: 1.6em;
        height: 1.6em;
        margin-bottom: 0;
        margin-right: 5px;
        vertical-align: bottom; }
    .login-main form input {
      margin-bottom: 15px;
      padding: 10px;
      border: 1px solid #ccc;
      border-radius: 5px;
      font-size: 1.6rem; }

.narabi label {
  display: flex;
  align-items: center;
  justify-content: center; }
  .narabi label input {
    margin-bottom: 0; }

.loginbox-link {
  font-size: 1.4rem;
  margin-top: 20px;
  text-align: center; }
  .loginbox-link a {
    color: inherit;
    text-decoration: underline; }

@media screen and (max-width: 768px) {
.mat20{margin-top:20px;}
  .login-main .login-forms {
    flex-wrap: wrap; }
  .login-main .notice, .login-main .box {
    padding: 20px; } }
/*------------------------
マイページ
-------------------------*/
.mypage-main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto 80px;
  margin: 0 -10px;
  box-sizing: border-box;
  font-size: 1.6rem; }
  .mypage-main > div {
    background-color: #FAFAFA;
    margin: 10px;
    padding: 30px; }
    .mypage-main > div h3.loginbox {
      color: #003366;
      font-weight: bold;
      font-size: 2.0rem;
      text-align: center;
      margin-bottom: 20px; }

#box_option {
  grid-row: 1 / 3;
  grid-column: 2 / 3; }

#box_choka {
  padding: 0; }
  #box_choka .boxlink {
    display: block;
    line-height: 6rem;
    cursor: pointer;
    position: relative; }
    #box_choka .boxlink:after {
      content: '';
      width: 1.8rem;
      height: 1.8rem;
      background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="33.744" height="24" viewBox="0 0 33.744 24"><path d="M19.167,100.809l4.941,4.934H1.808A1.8,1.8,0,0,0,0,107.547v1.805a1.8,1.8,0,0,0,1.808,1.805h22.3l-4.941,4.934a1.8,1.8,0,0,0,0,2.55l1.28,1.279a1.8,1.8,0,0,0,2.553,0l10.212-10.191a1.8,1.8,0,0,0,0-2.55l-10.2-10.2a1.8,1.8,0,0,0-2.553,0l-1.28,1.279a1.8,1.8,0,0,0,0,2.55Z" transform="translate(0 -96.45)" fill="%23001C4E"/></svg>') center center no-repeat;
      background-size: contain;
      opacity: 0.8;
      position: absolute;
      right: 2rem;
      top: 50%;
      margin-top: -1rem; }
    #box_choka .boxlink h3.loginbox {
      margin-bottom: 0; }

@media screen and (max-width: 768px) {
  .mypage-main {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto; }

  #box_option {
    grid-row: 2 / 3;
    grid-column: 1 / 1; } 
}

.bannerbox_login {
  border: 1px solid #001C4E;
  border-radius: 5px;
  width: 500px;
  height: 90px;
  line-height: 1.5;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px; }
  .bannerbox_login a {
    display: block;
    display: flex;
    align-items: center;
    height: 100%;
    text-decoration: none;
    color: #001C4E; }
    .bannerbox_login a p.img {
      width: 100%; }
    .bannerbox_login a p.txt{
      width: 100%;
      font-size: 1.6rem;
      font-weight: bold; }
      .bannerbox_login a p.txt span {
        font-weight: normal;
        font-size: 1.4rem; }
        
    .banner_box2 a {  width: 100%; }  
    .banner_box2 a p.txt2{
      margin:0 auto;
      padding-left:1.5rem;
      font-size: 1.6rem;
      font-weight: bold; }
      .banner_box2 a p.txt2 span {
        font-weight: normal;
        font-size: 1.4rem; }

@media screen and (max-width: 768px) {
  .bannerbox_login {
    width: 100%;
    height: auto; }
    .bannerbox_login a {
      flex-direction: row;
      fbannerbox_login a p.img {
        width: 100%; }
        .bannerbox_login a p.img img {
          width: 100%; }
      .bannerbox_login a p.txt {
        width: auto;
        padding: 1em; } }

a {text-decoration:none;}
.padl{padding-left:1em;}
.ftst{font-weight:strong;}
.ntorg{color:#EC4E20;}

