@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&family=Open+Sans&display=swap');

.lang span:first-child{
    border-right:1px solid #d8e3ee;
}

.lang a{
    text-decoration:none;
    color:#56687a;
}

.lang a:hover{
    text-decoration:underline;
}

.lang span em{
    font-style: normal;
}

.uni-form{
    max-width:600px;
}

.uni-form .form-group{
    margin-bottom: 2rem;
}

button.d-block{
    width:100%;
    max-width:100%;
}

.page-header{
    padding:.67em 0;
    flex-basis: 100%;
    margin-bottom:24px;
    letter-spacing: .03em;
    font-size: calc(1.525rem + .9vw);
}

h3.page-header{
    font-size: calc(1.425rem + .9vw);
}

.page-header small{
    font-weight:normal;
    font-size: .475em;
}

.page-header small.sep{
    font-size: 1.3em;
    color:#0c0075;
}

.state-nav em{
    display:inline-block;
    padding:10px 20px;
    border-radius:30px;
    border: 1px solid #d8e3ee;
    margin-right:6px;
}

.state-nav.state0 em{
    background-color:#e9ecef;
}

.state-nav.state1 em{
    background-color:#d5f0e6;
}

.state-nav.state2 em{
    background-color:#0c0075;
}

.row#state_of_idps img{
    max-width:100%;
    width:48px;
}

.row#state_of_idps .wrap{
    border-radius:7px;
    border: 1px solid #d8e3ee;
    background-color:#FFF;
    padding:12px;
}

.row#state_of_idps .wrap .name{
    border-radius:30px;
    padding:12px 16px;
    text-decoration:none;
}

.row#state_of_idps .wrap .icon{
    width:24px;
    height:24px;
}

.row#state_of_idps .wrap.state0 .name{
    color: #495057;
    background-color:#e9ecef;
}

.row#state_of_idps .wrap.state0 .name:hover,
.row#state_of_idps .wrap.state0 .name:focus,
.row#state_of_idps .wrap.state0 .name:active
{
    background-color:#056d96;
    color:#FFF;
}

.row#state_of_idps .wrap.state0 .name:hover .icon,
.row#state_of_idps .wrap.state0 .name:focus .icon,
.row#state_of_idps .wrap.state0 .name:active .icon
{
    background-color:#FFF;
    mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="24" height="24"><path d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM8.5 4.5a.5.5 0 0 0-1 0v3h-3a.5.5 0 0 0 0 1h3v3a.5.5 0 0 0 1 0v-3h3a.5.5 0 0 0 0-1h-3v-3z" /></svg>');
}

.row#state_of_idps .wrap.state1 .name{
    color: #1c6b4d;
    background-color: #d5f0e6;
}

.row#state_of_idps .wrap.state1 .icon{
    background-color:#1c6b4d;
    width:24px;
    height:24px;
    mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="24" height="24"><path d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" /></svg>');
}

.row#state_of_idps .wrap.state1 .name:hover,
.row#state_of_idps .wrap.state1 .name:focus,
.row#state_of_idps .wrap.state1 .name:active
{
    color: #fff;
    background-color: #6c757d;
}

.row#state_of_idps .wrap.state1 .name:hover .icon,
.row#state_of_idps .wrap.state1 .name:focus .icon,
.row#state_of_idps .wrap.state1 .name:active .icon
{
    background-color:#FFF;
    mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="24" height="24"><path d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z" /></svg>');
}

.row#state_of_idps .wrap.state2 .name{
    color: #fff;
    background-color:#0c0075;
}

.row#state_of_idps .wrap.state2 .icon{
}

/*
.row#state_of_idps .wrap.state2 .name:hover,
.row#state_of_idps .wrap.state2 .name:focus,
.row#state_of_idps .wrap.state2 .name:active
{
    color: #fff;
    background-color:#0c0075;
}
*/
.btn{
    border-radius:0.275rem;
    transition: 0.5s;
}

.btn-lg{
    font-size:1rem;
    padding: 12px 30px;
    letter-spacing: .02em;
}

.btn-sm{
}

.btn-primary{
    background-color:#0c0075;
    border:1px solid #0c0075;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active
{
    background-color:#12029e;
    border:1px solid #12029e;
    color:#FFF;
}

.btn-info{
    background-color:#045676;
    border:1px solid #045676;
    color:#FFF;
}

.btn-info:hover,
.btn-info:focus,
.btn-info:active
{
    background-color:#056d96;
    border:1px solid #056d96;
    color:#FFF;
}

.btn-light{
    background-color:#002c76;
    border:1px solid #002c76;
    color:#FFF;
}

.btn-light:hover,
.btn-light:focus,
.btn-light:active
{
    background-color:#1657c4;
    border:1px solid #1657c4;
    color:#FFF;
}

.content{
    max-width:1024px;
    padding-bottom:60px;
    flex:1;
}

.footer{
    border-top: 1px solid #d8e3ee;
    background:#FFF;
}

.footer ul{
    list-style:none;
    font-size:0;
    line-height:1;
    padding:0;
}

.footer ul li{
    font-size:13px;
    text-align:center;
}

.footer ul li a{
    font-size:13px;
    color:#2a3b4c;
    text-decoration:none;
    transition:none;
}

.header .navbar-toggler {
    border: none!important;
}

.header .navbar-toggler:focus {

}

.card{
    background-color:transparent!important;
    border:none!important;
}

.card-footer{
    background-color:transparent!important;
    border-top:none;
}

.card-body{
    background-color:#FFF;
    border-radius:7px;
    border: 1px solid #d8e3ee;
    padding:24px;
}

.card-body-noframe{
    padding:24px;
}

.list-header .card-body{
    padding:0px 24px;
    background-color:transparent;
    border:none;
    border-radius:0px;
}

.card-header{
    background-color:transparent!important;
    border-bottom:none!important;
    padding:.67em 0;
    letter-spacing: 0.05em;
    flex-basis: 100%;
    /*font-size: 24px;*/
    font-weight: bold;
    margin-bottom:16px;
}

.card-header:first-child{
    border-radius:0!important;
}

.header .navbar-nav .nav-link{
    padding: 5px 20px!important;
    color:#2a3b4c;
}

.header .dropdown-menu i{
    width:25px;
}

.header{
/*
    -webkit-box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.2);
    box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.2);
    */
    border-bottom: 1px solid #d8e3ee;
    background:#FFF;
}

.header .container-lg{
    max-width:1024px;
}

.header-logo{
    display:inline-block;
    width:200px;
}

.header-logo-sp{
    display:inline-block;
    width:80px;
}

body{
    font-family:Open Sans,Noto Sans JP,Helvetica,Arial,sans-serif;
    color:#2a3b4c;
}

h1,h2,h3{
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 150%;
}

a{
    transition: .3s all ease;
}

a:hover,
a:active
{
    color:#0c0075;
}

img{
    max-width:100%;
}

#wrapper{
  padding-top: 138px;
  background-color: #f4f7fa !important;
  display: flex;
flex-flow: column;
min-height: 100vh;
}

#switch-language {
  margin: 5px 0 0 10px;
  padding: 5px 8px;
}

.welcome {
  background: #fff;
  height: 100vh;
  text-align: center;
  overflow: hidden;
  position: relative;
}

.welcome{
    background:url("../img/home_bg001.jpg") no-repeat center bottom;
    background-size:contain;
}

/*
.welcome:after, .welcome:before {
  content: '';
  position: absolute;
  width: 50vw;
  height: 80vh;
  transform: rotate(-25deg);
  z-index: 1;
}

.welcome:before {
  left: -15vw;
  top: -30%;
  background: #fff;
  background: -moz-linear-gradient(left,#e2e7ef 0,#fff 100%);
  background: -webkit-linear-gradient(left,#e2e7ef 0,#fff 100%);
  background: linear-gradient(to right,#e2e7ef 0,#fff 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e2e7ef', endColorstr='#ffffff', GradientType=1);
}

.welcome:after {
  right: -5vw;
  top: -15%;
  background: #fff;
  background: -moz-linear-gradient(left,#fff 0,#e2e7ef 100%);
  background: -webkit-linear-gradient(left,#fff 0,#e2e7ef 100%);
  background: linear-gradient(to right,#fff 0,#e2e7ef 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e2e7ef', GradientType=1);
}
*/

.welcome .container{
  position:relative;
  z-index: 3;
}

.welcome-logo {
  width: 400px;
}


select, select.form-control{
/*  padding: 0.375rem 2.25rem 0.375rem 0.75rem;*/
}

.form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"], .was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"]
{
/*  padding-right: 2.25rem;*/
}