/* 点滅 */
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

#Loading {
  width: 300px;
  height: 80px;
  border: 1px solid #ddd;
  font-size: 10pt;
  text-align: left;
  position: absolute;
  background: #fafad2 ;
  z-index:9999;
}

#Loading img.loadimg {
  position: absolute;
  top: 0px;
  left: 0px;
}
#Loading p.loadmsg {
  position: absolute;
  text-align: left;
  top: 20px;
  left: 90px;
  font-weight:bold;
}

.sp {
  display:none;
}
.dob {
  display: flex;
}
.success {
  background:#e0ffff;
}
.setting {
  background:#ffb6c1;
}
.noset {
  background:#dcdcdc;
  color:#959595
}
.submit {
  background:#b22222 ;
  color:#EEEEEE
}
.l-section__inner {
	margin-top:20px;
}
.stext {
	float:left;
	font-size:28px;
}
.itext {
	float:left;
	font-size:16px;
}

label {
  cursor: pointer;
  padding-left: 30px;
  position: relative;
}

label::before,
label::after {
  content: "";
  display: block;
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}

label::before {
  background-color: #fff;
  border: 1px solid #419afd;
  height: 20px;
  width: 20px;
  left: 5px;
}

label::after {
  background-color: #419afd;
  opacity: 0;
  height: 16px;
  width: 16px;
  left: 7px;
}

input:checked + label::after {
  opacity: 1;
}
.visually-hidden {
 position: absolute;
 white-space: nowrap;
 border: 0;
 clip: rect(0 0 0 0);
 clip-path: inset(50%);
 overflow: hidden;
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}

.modal_box {
    position: fixed;
    z-index: 7777;
    display: none;
    width: 80%;
    max-width: 1200px;
    margin: 0;
    padding: 60px 2vw 80px;
    border: 2px solid #aaa;
    text-align: center;
    background: #fff;
    box-sizing: border-box;
    border-radius: 30px;
    max-height: 100%;
}
th {
  white-space: nowrap;
  padding: 0 10px;
}

.data {
    overflow:scroll;
    max-height:60vh;
}
.data_area{
    text-align:left;
}

.data2 .data_area {
  overflow: scroll;
  max-height:60vh;
}

.sticky-table thead tr[class*="fixed-header-"] th {
    position: -webkit-sticky; /* for Safari */
    position: sticky;
    background:#FFFFFF;
    z-index: 1;
    top:0;
}

.sticky-table thead tr[class*="fixed-header-"] th[class*="fixed-column-"] {
    border: 1px solid #565656;
    background:#dfdfdf;
    z-index: 2;
    top:0;
    left:0
}

.sticky-table tbody th[class*="fixed-column-"] {
    position: -webkit-sticky; /* for Safari */
    position: sticky;
    background:#FFFFFF;
    z-index: 1;
    left:0
}

.modal_box h2{
    font-weight:bold;
    font-size:20px;
}
 
.modal_close {
    position: absolute;
    top: 0;
    right:0;
    display: block;
    width: 32px;
    height:32px;
    font-size: 16px;
    color: #000;
    line-height: 16px;
    text-align: center;
    background: #e6e6e6;
    border-radius: 30px;
    margin-top:10px;
    margin-right:10px;
    cursor:pointer;
}

.modal_close2 {
    float:left;
}
.modal_switch {
  margin-left:10px;
}

.modal_close2, .modal_switch {
    cursor:pointer;
}
 
.modal_close i {
    line-height: 32px;
    vertical-align: bottom;
}
 
.modal_bg {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 6666;
    display: none;
    width: 100%;
    height: 120%;
    background-color: rgba(0,0,0,0.7);
}
 
.link_area {
    overflow: hidden;
    max-width: 410px;
    margin: 60px auto 0;
    text-align: center;
}
.link_area2 {
    overflow: hidden;
    max-width: 180px;
    margin: 25px auto 0;
    text-align: center;
}
 
.link_area .modal_link {
    display: inline;
}
 
.link_area .modal_link a {
    display: inline-block;
    width: 180px;
    color: #000;
    line-height: 2.5;
    text-decoration: none;
    margin: 0 10px;
    background: #e6e6e6;
}
 
.link_area2 .modal_link {
    display: inline;
}
 
.link_area2 .modal_link a {
    display: inline-block;
    width: 180px;
    color: #000;
    line-height: 2.5;
    text-decoration: none;
    margin: 0 10px;
    background: #e6e6e6;
}

.link_area ul li.modal_link:first-child a {
    float: left;
}
 
.link_area ul li.modal_link:last-child a {
    float: right;
}
 
.link_area2 ul li.modal_link:first-child a {
    float: left;
}
 
.link_area2 ul li.modal_link:last-child a {
    float: right;
}
 
@media screen and (max-width: 769px) {
 
/*  ウィンドウサイズ769px以下の時のスタイル  */
  .sp {
    display:block;
  }
  .dob {
    display: block !important;
    text-align:left;
  }
  .modal_box {
      padding: 50px 2vw 40px;
  }
 
  .modal_close {
      width: 32px;
      line-height: 32px;
      font-size: 24px;
      cursor:pointer;
  }
  .modal_close2 {
    float:initial;
  }

  .modal_switch {
    margin-left:0;
  }
  .modal_close2, .modal_switch {
      cursor:pointer;
  }

  .modal_close i {
      line-height: 32px;
  }
 
  .link_area {
      margin: 5px auto 0;
  }
 
  .link_area2 {
      margin: 25px auto 0;
  }
 
  .link_area .modal_link a {
      margin: 15px auto 0;
  }
 
  .link_area ul li.modal_link:first-child a {
      float: none;
      margin-top: 0;
  }
 
  .link_area ul li.modal_link:last-child a {
      float: none;
  }
  .link_area2 .modal_link a {
      margin: 15px auto 0;
  }
 
  .link_area2 ul li.modal_link:first-child a {
      float: none;
      margin-top: 0;
  }
 
  .link_area2 ul li.modal_link:last-child a {
      float: none;
  }
 
}
